* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
*:focus {
  outline: none;
}
html, body {
  height: 100%;
}
body {
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  padding: 3% 20px;
  -webkit-transition: padding .5s ease-in-out;
  -o-transition: padding .5s ease-in-out;
  transition: padding .5s ease-in-out;
}
a {
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
}
a:hover, a:focus {
  text-decoration: none;
}
a img {
  border: none;
  outline: none;
}
img {
  max-width: 100%;
  height: auto;
}
ul {
  list-style-type: none;
}
.clearfix:after {
  content: '';
  font-size: 0;
  line-height: 0;
  display: block;
  clear: both;
}
.player-full-wrap {
  margin: 0 auto;
  max-width: 960px;
  line-height: 0;
  background: rgba(55,116,147,.5);
  box-shadow: 0 0 15px 0 rgba(0,0,0,.6);
  position: relative;
}
.container {
  margin: 0 auto;
  max-width: 960px;
  text-align: center;
  position: relative;
}
.current {
  position: relative;
}
.player-main {
  background: rgba(0,0,0,.5);
}
.now-playing-text {
  padding: 20px;
  font: 300 14px/1 'Open Sans', sans-serif;
  color: #fff;
  text-transform: uppercase;
}

/*** main track image ***/
.cover-img {
  float: left;
  width: 35%;
  min-width: 210px;
  text-align: center;
  padding: 0 40px 40px;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.cover-img-wrap {
  position: relative;
}
.cover-img-overlay {
  width:52%;
  height:auto;
  left:-8%;
  top:12%;
  position: absolute;
}
.cover--img {
  width: 100%;
  height: auto;
  border: 1px solid rgba(255,255,255,.3);
  box-shadow: 0 0 10px 0 rgba(0,0,0,.7);
}

/*** track info and controls ***/
.track {
  float: left;
  width: 65%;
  min-height: 300px;
  padding-right: 40px;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  position: relative;
}
.track--name {
  margin: 0;
  padding: 0 0 20px;
  text-shadow: 0.5px 0.9px 2px #000;
  font: 300 26px/1.2 'Open Sans', sans-serif;
  color: #fff;
}
.track-play-time {
  width: 35%;
  padding: 20px 0;
  text-align: center;
  float: left;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.track-play-wrap {
  margin: 0 auto;
  padding-bottom: 35px;
  display: table;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.track--play {
  margin: 0 auto;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: rgba(0,0,0,.2);
  border: 3px solid rgba(255,255,255,.4);
  display: table-cell;
  vertical-align: middle;
  position: relative;
  cursor: pointer;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.track--play:hover {
  background: rgba(255,255,255,.2);
}
.track--play:after {
  padding-left: 12px;
  content: '\f04b';
  font-family: 'fontawesome';
  font-size: 60px;
  line-height: 1;
  color: rgba(255,255,255,.8);
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.track--play_active:after {
  padding-left: 0;
  content: '\f0c8';
  font-family: 'fontawesome';
  font-size: 60px;
  line-height: 1;
  color: rgba(255,255,255,.8);
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.time {
  color: #fff;
  font: 300 24px 'Open Sans', sans-serif;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.slider-wrap, .slider-btns {
  width: 65%;
  float: right;
  padding-top: 75px;
  position: relative;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.volume-sign {
  font-size: 18px;
  color: rgba(255,255,255,.8);
  top: 55px;
  position: absolute;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  cursor: pointer;
}
.volume-sign.minus {
  left: 35px;
}
.volume-sign.plus {
  right: 50px;
}
.volume {
  top: 65px;
  color: rgba(255,255,255,.8);
  font-size: 30px;
  position: absolute;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  cursor: pointer;
}
.mute-volume {
  left: 0;
}
.full-volume {
  right: 0;
}
.slider-bar {
  padding: 0 45px 0 30px;
}
.slider {
  width: 100%;
  height: 11px;
}
.slider.ui-widget.ui-widget-content {
  background-color: transparent;
  background-image: none;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 4px;
  box-shadow: none;
}
/*.slider .ui-slider-range {
  background-color: rgba(255,255,255,0.3) !important;
}*/
.slider-btns {
  padding-top: 90px;
  color: #fff;
  -webkit-transition: all .8s ease-in-out;
  -o-transition: all .8s ease-in-out;
  transition: all .8s ease-in-out;
}
.share-btns {
  font: 300 14px/1.4 'Open Sans', sans-serif;
  float: left;
  position: relative;
}
.share-btns a {
  margin-left: 12px;
  width: 32px;
  height: 32px;
  font-size: 18px;
  line-height: 1.7;
  text-align: center;
  color: #eee;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.5);
  background: rgba(255,255,255,0);
  display: inline-block;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.share-btns a:hover {
  background: rgba(255,255,255,.2);
}
.buy-btn {
  float: right;
}
.buy-btn a {
  margin-top: -4px;
  height: 40px;
  padding: 6px 20px;
  font: 300 18px/1.4 'Open Sans', sans-serif;
  color: #fff;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 20px;
  background: rgba(255,255,255,0);
  display: inline-block;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}
.buy-btn a:hover {
  background: rgba(255,255,255,.2);
}

/*** track footer ***/
.track-footer {
  padding: 15px 20px;
  border-top: 1px solid rgba(0,0,0,.2);
  background: rgba(0,0,0,.6);
  font: 300 14px/1.4 'Open Sans', sans-serif;
  color: #fff;
  text-transform: uppercase;
  clear: both;
  position: relative;
  overflow: hidden;
}
.track-footer--link {
  display: inline-block;
  cursor: pointer;
}
.track-footer a {
  font: 300 14px/1.4 'Open Sans', sans-serif;
  color: #fff;
  display: inline-block;
}
.track-footer i {
  padding-right: 6px;
  font-size: 18px;
  color: rgba(255,255,255,.6);
}
.recent-track--link {
  padding-top: 2px;
  display: inline-block;
}
.contact-donate {
  float: right;
}
.donate {
  padding-left: 15px;
  margin-left: 15px;
  border-left: 1px solid rgba(255,255,255,.3);
}
.donate button[type="submit"] {
  margin: 0;
  padding: 0;
  font: 300 14px/1.4 'Open Sans', sans-serif;
  color: #fff;
  text-transform: uppercase;
  background: transparent;
  border: none;
  display: inline-block;
  cursor: pointer;
}

/*** recent play list ***/
.recent-wrap {
  margin: -900px auto 0;
  position: relative;
  z-index: -1;
  opacity: 0;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
.recent-hidden {
  overflow: hidden;
}
.recent-wrap_active {
  margin-top: 0;
  z-index: 1;
  opacity: 1;
}
.recent {
  overflow: hidden;
}
.recent-item {
  margin: 0;
  padding: 10px 20px;
  background: rgba(0,0,0,.5);
  border-top: 1px solid rgba(255,255,255,.2);
  border-bottom: 1px solid rgba(0,0,0,.2);
  position: relative;
}
.recent-item--img img {
  width: 90px;
  height: 90px;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.6);
  float: left;
}

.recent-item--text {
  padding: 30px 30px 10px 110px;
  font: 300 18px/1.4 'Open Sans', sans-serif;
  color: #fff;
}


.playlist-item--text {
  padding: 10px 10px 10px 10px;
  font: 300 18px/1.4 'Open Sans', sans-serif;
  color: #fff;
}

.playlist-item--text-heading {
    padding: 10px 10px 10px 10px;
    font: 300 18px/1.4 'Open Sans', sans-serif;
    color: #fff;
    font-weight: bold;
    text-transform: uppercase;
}

.recent .buy-btn a {
  height: 26px;
  margin-top: 30px;
  padding: 1px 20px;
  font: 300 16px/1.3 'Open Sans', sans-serif;
  border-radius: 13px;

}

/*** Text banner ***/
.text-banner {
  margin: 0;
  padding: 40px;
  font: 300 16px/1.5 'Open Sans', sans-serif;
  color: #fff;
  border-top: 1px solid rgba(255,255,255,.2);
  background: rgba(0,0,0,.4);
}
.text-banner a {
  color: #fff;
  text-decoration: underline;
  /*font-size: 21px;*/
}
.text-banner a:hover {
  text-decoration: none;
}

/*** bottom banner ***/
.bot-banner {
  padding-top: 20px;
}

/*** Social ***/
.social {
  text-align: center;
  margin-top: 25px;
}
.social--link {
  margin: 0 9px;
  width: 44px;
  height: 44px;
  border: 1px solid #f7f7f7;
  border-radius: 50%;
  background: rgba(255,255,255,0);
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
.social--link:hover {
  background: rgba(255,255,255,.2);
}
.social--link i {
  font-size: 20px;
  line-height: 42px;
  color: #fff;
}

/*** copyright ***/
.powered-by {                                                                                                                                                                                    
  margin: 30px 0 40px;                                                                                                                                                                                
  text-align: center;                                                                                                                                                                            
}                                                                                                                                                                              
.powered-by_text {
  font: 300 12px/1.5 'Open Sans', sans-serif;                                                                                                                                                                        
  color: #fff;                                                                                                                                                                                   
  margin-bottom: 4px;                                                                                                                                                                            
} 

.pb_black {
  color: #000;                                                                                                                                                                                   
} 

.pb_gray {
  color: #333333;                                                                                                                                                                                   
} 

/*** responsive ***/
@media (max-width: 768px) {
  .cover-img {
    width: 40%;
  }
  .track {
    width: 60%;
  }
  .slider-wrap {
    width: 100%;
    padding-top: 30px;
    float: none;
  }
  .volume-sign {
    top: 10px;
  }
  .volume {
    top: 20px;
  }
  .track-play-time {
    margin: 0 auto;
    width: 200px;
    float: none;
    overflow: hidden;
  }
  .track-play-wrap {
    margin: 10px 20px 10px 10px;
    padding-bottom: 0;
    float: left;
  }
  .track--play {
    width: 90px;
    height: 90px;
  }
  .track--play:after, .track--play_active:after {
    font-size: 48px;
  }
  .time {
    padding-top: 45px;
    font-size: 18px;
    float: left;
  }
  .slider-btns {
    width: 100%;
    padding-top: 0;
    padding-bottom: 30px;
  }
  .recent-item--text {
    padding: 6px 20px 6px 110px;
  }
  .recent .buy-btn {
    right: 20px;
    bottom: 10px;
    position: absolute;
  }
  .recent .buy-btn a {
    margin-top: 0;
  }
}
@media (max-width: 600px) {
  .cover-img {
    width: 100%;
    padding-bottom: 30px;
    float: none;
  }
  .cover-img-wrap {
    margin: 0 auto;
    max-width: 240px;
  }
  .track {
    width: 100%;
    padding-left: 40px;
    float: none;
  }
  .track--name {
    text-align: center;
    font: 300 21px/1.2 'Open Sans', sans-serif;
  }
}
@media (max-width: 440px) {
  body {
    padding: 10px;
  }
  .track {
    padding: 0 20px;
  }
  .contact-donate {
    text-align: center;
    float: none;
  }
  .recent-track-link {
    width: 100%;
    padding-top: 12px;
    text-align: center;
    display: block;
  }
  .recent-item--text {
    font: 300 16px/1.4 'Open Sans', sans-serif;
  }
}


/* below is original - unchanged */
/* Video */
.video-bg {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  text-align: center;
  opacity: 0;
  -webkit-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
}
.video-bg_active {
  opacity: 1;
  z-index: 999;
}
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255,255,255,.6);
}
.video-wrap {
  width: 100%;
  height: 100%;
  position: relative;
}
.video-bg_active .video-in {
  top: 20%;
}
.video {
  width: 100%;
  height: 100%;
}
.video-in {
  height: 60%;
  position: absolute;
  top: -20%;
  left: 0;
  right: 0;
  -webkit-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
}
.video--img {
  max-height: 100%;
  z-index: 999;
  position: relative;
  height: 100%;
}
.video-sound {
  background: url(../images/video-sound.png) no-repeat center;
  width: 498px;
  height: 50px;
  z-index: 1;
  position: relative;
  margin: -3px auto 0;
}
.slider2 {
  width: 160px;
  margin-left: 20px;
}
.video-slider {
  position: relative;
  width: 180px;
  margin: 0 auto;
  padding: 15px 0 0 0;
}
.min-mute {
  position: absolute;
  left: 0;
  top: 15px;
  cursor: pointer;
}

/* Custom scrollbar */
.mCSB_scrollTools .mCSB_draggerRail {
  background: #5d5564;
  width: 11px;
}
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 11px;
  background: #818187!important;
  
}
.mCSB_inside > .mCSB_container {
  margin-right: 18px;
}

/* Video js customization */
.video-js {
  position: absolute!important;
  background: none!important;
  left: 0!important;
  right: 0!important;
  width: 100%!important;
  height: 100%!important;
  padding: 0!important;
  top: 0!important;
  bottom: 0!important;
}
.vjs-tech {
  box-shadow: 0 0 13px #000!important;
  position: static!important;
  width: auto!important;
  background: #000!important;
}

.vjs-custom-waiting .vjs-loading-spinner
{
    display: block;
}
.video-js.vjs-custom-waiting .vjs-loading-spinner:before,
.video-js.vjs-custom-waiting .vjs-loading-spinner:after
{
    /* I just copied the same animation as in the default css file */
    -webkit-animation: vjs-spinner-spin 1.1s cubic-bezier(0.6, 0.2, 0, 0.8) infinite, vjs-spinner-fade 1.1s linear infinite;
    animation: vjs-spinner-spin 1.1s cubic-bezier(0.6, 0.2, 0, 0.8) infinite, vjs-spinner-fade 1.1s linear infinite;
}