/* Magnific Popup CSS */
.mfp-bg {
  top       : 0;
  left      : 0;
  width     : 100%;
  height    : 100%;
  z-index   : 1042;
  overflow  : hidden;
  position  : fixed;
  background: #0b0b0b;
  opacity   : 0.8;
}

.mfp-wrap {
  top                        : 0;
  left                       : 0;
  width                      : 100%;
  height                     : 100%;
  z-index                    : 1043;
  position                   : fixed;
  outline                    : none !important;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position  : absolute;
  width     : 100%;
  height    : 100%;
  left      : 0;
  top       : 0;
  padding   : 0 8px;
  box-sizing: border-box;
}

.mfp-container:before {
  content       : '';
  display       : inline-block;
  height        : 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position      : relative;
  display       : inline-block;
  vertical-align: middle;
  margin        : 0 auto;
  text-align    : left;
  z-index       : 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width : 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select   : none;
  user-select        : none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color     : #CCC;
  position  : absolute;
  top       : 50%;
  width     : auto;
  text-align: center;
  margin-top: -0.8em;
  left      : 8px;
  right     : 8px;
  z-index   : 1044;
}

.mfp-preloader a {
  color: #CCC;
}

.mfp-preloader a:hover {
  color: #FFF;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close,
button.mfp-arrow {
  overflow          : visible;
  cursor            : pointer;
  background        : transparent;
  border            : 0;
  -webkit-appearance: none;
  display           : block;
  outline           : none;
  padding           : 0;
  z-index           : 1046;
  box-shadow        : none;
  touch-action      : manipulation;
}

button::-moz-focus-inner {
  padding: 0;
  border : 0;
}

.mfp-close {
  width          : 44px;
  height         : 44px;
  line-height    : 44px;
  position       : absolute;
  right          : 0;
  top            : 0;
  text-decoration: none;
  text-align     : center;
  opacity        : 0.65;
  padding        : 0 0 18px 10px;
  color          : #FFF;
  font-style     : normal;
  font-size      : 28px;
  font-family    : Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
  opacity: 1;
}

.mfp-close:active {
  top: 1px;
}

.mfp-close-btn-in .mfp-close {
  color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color        : #FFF;
  right        : -6px;
  text-align   : right;
  padding-right: 6px;
  width        : 100%;
}

.mfp-counter {
  position   : absolute;
  top        : 0;
  right      : 0;
  color      : #CCC;
  font-size  : 12px;
  line-height: 18px;
  white-space: nowrap;
}

.mfp-arrow {
  position                   : absolute;
  opacity                    : 0.65;
  margin                     : 0;
  top                        : 50%;
  margin-top                 : -55px;
  padding                    : 0;
  width                      : 90px;
  height                     : 110px;
  -webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
  margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
  opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
  content    : '';
  display    : block;
  width      : 0;
  height     : 0;
  position   : absolute;
  left       : 0;
  top        : 0;
  margin-top : 35px;
  margin-left: 35px;
  border     : medium inset transparent;
}

.mfp-arrow:after {
  border-top-width   : 13px;
  border-bottom-width: 13px;
  top                : 8px;
}

.mfp-arrow:before {
  border-top-width   : 21px;
  border-bottom-width: 21px;
  opacity            : 0.7;
}

.mfp-arrow-left {
  left: 0;
}

.mfp-arrow-left:after {
  border-right: 17px solid #FFF;
  margin-left : 31px;
}

.mfp-arrow-left:before {
  margin-left : 25px;
  border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
  right: 0;
}

.mfp-arrow-right:after {
  border-left: 17px solid #FFF;
  margin-left: 39px;
}

.mfp-arrow-right:before {
  border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
  padding-top   : 40px;
  padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width      : 100%;
  max-width  : 900px;
}

.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width      : 100%;
  height     : 0;
  overflow   : hidden;
  padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
  position  : absolute;
  display   : block;
  top       : 0;
  left      : 0;
  width     : 100%;
  height    : 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

/* Main image in popup */
img.mfp-img {
  width      : auto;
  max-width  : 100%;
  height     : auto;
  display    : block;
  line-height: 0;
  box-sizing : border-box;
  padding    : 40px 0 40px;
  margin     : 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}

.mfp-figure:after {
  content   : '';
  position  : absolute;
  left      : 0;
  top       : 40px;
  bottom    : 40px;
  display   : block;
  right     : 0;
  width     : auto;
  height    : auto;
  z-index   : -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}

.mfp-figure small {
  color      : #BDBDBD;
  display    : block;
  font-size  : 12px;
  line-height: 14px;
}

.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  margin-top: -36px;
  position  : absolute;
  top       : 100%;
  left      : 0;
  width     : 100%;
  cursor    : auto;
}

.mfp-title {
  text-align   : left;
  line-height  : 18px;
  color        : #F3F3F3;
  word-wrap    : break-word;
  padding-right: 36px;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape),
screen and (max-height: 300px) {

  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left : 0;
    padding-right: 0;
  }

  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }

  .mfp-img-mobile .mfp-figure:after {
    top   : 0;
    bottom: 0;
  }

  .mfp-img-mobile .mfp-figure small {
    display    : inline;
    margin-left: 5px;
  }

  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom    : 0;
    margin    : 0;
    top       : auto;
    padding   : 3px 5px;
    position  : fixed;
    box-sizing: border-box;
  }

  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }

  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top  : 3px;
  }

  .mfp-img-mobile .mfp-close {
    top        : 0;
    right      : 0;
    width      : 35px;
    height     : 35px;
    line-height: 35px;
    background : rgba(0, 0, 0, 0.6);
    position   : fixed;
    text-align : center;
    padding    : 0;
  }
}

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform        : scale(0.75);
  }

  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin        : 0;
  }

  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin        : 100%;
  }

  .mfp-container {
    padding-left : 6px;
    padding-right: 6px;
  }
}