

/** Preloader
 ********************************************/

.preloader {
  position: absolute;
  top: 40%;
  left: 50%;
  width: 120px;
  height: 120px;
  margin-left: -60px;
  margin-top: -60px;
  display: none;
  opacity: 0;
  -webkit-transition: display 1ms linear 200ms, opacity 200ms;
  -moz-transition: display 1ms linear 200ms, opacity 200ms;
  -ms-transition: display 1ms linear 200ms, opacity 200ms;
  -o-transition: display 1ms linear 200ms, opacity 200ms;
  transition: display 1ms linear 200ms, opacity 200ms;
  z-index: 100;
}

.preloader img {
  width: 100%;
  height: auto;
}

.loading .preloader {
  display: block;
  opacity: 1;
  -webkit-transition: opacity 350ms;
  -moz-transition: opacity 350ms;
  -ms-transition: opacity 350ms;
  -o-transition: opacity 350ms;
  transition: opacity 350ms;
}

#page-preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.15);
  display: none;
  opacity: 0;
  -webkit-transition: display 1ms linear 200ms, opacity 200ms;
  -moz-transition: display 1ms linear 200ms, opacity 200ms;
  -ms-transition: display 1ms linear 200ms, opacity 200ms;
  -o-transition: display 1ms linear 200ms, opacity 200ms;
  transition: display 1ms linear 200ms, opacity 200ms;
  z-index: 1000;
}

.loading #page-preloader {
  display: block;
  opacity: 1;
  -webkit-transition: opacity 350ms;
  -moz-transition: opacity 350ms;
  -ms-transition: opacity 350ms;
  -o-transition: opacity 350ms;
  transition: opacity 350ms;
}

/** Modal
 ********************************/


#page-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background-color: rgba(23,23,23,0.9);
  z-index: 1500;
}

#page-modal-container {
  width: 100%;
  padding: 0;
  font-size: 0;
}

#page-modal.show {
  display: block;
}

#page-modal-iframe-container, #page-modal-content-container {
  display: none;
}

.iframe-modal #page-modal-iframe-container, .content-modal #page-modal-content-container {
  display: block;
}

#page-modal-iframe-container {
  -webkit-overflow-scrolling: touch;
  overflow: scroll;
}

#page-modal-iframe {
  min-width: 100%;
  width: 1px;
}

#page-modal-close {
  display: block;
  position: absolute;
  top: 8px;
  right: 8px;
  color: #083b54;
  font-weight: bold;
  font-size: 24px;
  padding: 0 10px;
  width: 36px;
  height: 36px;
  line-height: 36px;
  text-align: center;
  cursor: pointer;
  z-index: 15;
}

#page-modal-iframe {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 10;
  background: #fff;
}

#page-modal-close, #page-modal-iframe {
  opacity: 1;
  -webkit-transition: opacity 350ms;
  -moz-transition: opacity 350ms;
  -ms-transition: opacity 350ms;
  -o-transition: opacity 350ms;
  transition: opacity 350ms;
}

.loading #page-modal-close, .loading #page-modal-iframe {
  opacity: 0;
}

.video-modal #page-modal-iframe {
  background: #000;
}

#page-modal-container {
  background-color: #fff;
  height: 100%;
}

@media (min-width: 540px) {

  #page-modal-container {
    height: auto;
  }

  .video-modal #page-modal-container {
    max-width: 426px;
  }

  .video-modal #page-modal-iframe {
    max-height: 240px;
  }

}

@media (min-width: 768px) {

  #page-modal-iframe-container {
    overflow: auto;
  }

  #page-modal-close {
    top: 0px;
    right: -36px;
    color: rgb(238, 238, 238);
  }

  #page-modal-container {
    width: calc(100% - 72px);
    max-width: 960px;
    margin: 36px auto;
  }

  .video-modal #page-modal-container {
    max-width: 640px;
  }

  .video-modal #page-modal-iframe {
    max-height: 360px;
  }

}

@media (min-width: 992px) {

  .video-modal #page-modal-container {
    max-width: 854px;
  }

  .video-modal #page-modal-iframe {
    max-height: 480px;
  }
  
}

@media (min-width: 1200px) {

  .video-modal #page-modal-container {
    max-width: 1280px;
  }

  .video-modal #page-modal-iframe {
    max-height: 720px;
  }
  
}

#page-modal-content {
  padding: 34px;
}