/*
 * Лайтбокс и модальные окна (PhotoSwipe, Magnific Popup, HystModal).
 * Подключается только на страницах с галереей: gallery: true.
 */

.mfp-close.fa-times:before {
  height: .625em;
  top: .375em;
  right: .5em;
  width: .625em;
}

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

.mfp-bg {
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background-color: #fff;
}

.mfp-bg,
.mfp-container,
.mfp-wrap {
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.mfp-wrap {
  z-index: 1043;
  position: fixed;
  outline: 0 !important;
  backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  padding: 0 .5em;
  box-sizing: border-box;
}

.mfp-container:before,
.mfp-content {
  display: inline-block;
  vertical-align: middle;
}

.mfp-container:before {
  content: '';
  height: 100%;
}

.mfp-content {
  position: relative;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

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

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

.mfp-zoom {
  cursor: zoom-in;
}

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

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

.mfp-loading.mfp-figure,
.mfp-s-error .mfp-content,
.mfp-s-ready .mfp-preloader {
  display: none;
}

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

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

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

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

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

.mfp-close {
  width: 2.75em;
  height: 2.75em;
  line-height: 2.75em;
  position: absolute;
  right: 0;
  top: 0;
  text-align: center;
  font-size: 3em;
  font-weight: 200;
}

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

.mfp-close:active {
  top: .0625em;
}

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

.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
  color: #fff;
  right: -.375em;
  text-align: right;
  padding-right: .375em;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #ccc;
  font-size: .75em;
  line-height: 1.125em;
  white-space: nowrap;
}

.mfp-arrow {
  position: absolute;
  opacity: .65;
  margin: -3.4375em 0 0;
  top: 50%;
  padding: 0;
  width: 5.625em;
  height: 6.875em;
}

.mfp-arrow:active {
  margin-top: -3.375em;
}

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

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

.mfp-arrow:before {
  top: 0;
}

.mfp-arrow:after {
  border-top-width: .8125em;
  border-bottom-width: .8125em;
  top: .5em;
}

.mfp-arrow:before {
  border-top-width: 1.3125em;
  border-bottom-width: 1.3125em;
  opacity: .7;
}

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

.mfp-arrow-left:after {
  border-right: 1.0625em solid #fff;
  margin-left: 1.9375em;
}

.mfp-arrow-left:before {
  margin-left: 1.5625em;
  border-right: 1.6875em solid #3f3f3f;
}

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

.mfp-arrow-right:after {
  border-left: 1.0625em solid #fff;
  margin-left: 2.4375em;
}

.mfp-arrow-right:before {
  border-left: 1.6875em solid #3f3f3f;
}

.mfp-iframe-holder {
  padding-top: 2.5em;
  padding-bottom: 2.5em;
}

.mfp-figure:after,
img.mfp-img {
  display: block;
  width: auto;
  height: auto;
}

img.mfp-img {
  box-sizing: border-box;
  padding: 2.5em 0;
  margin: 0 auto;
  background-color: #fff;
}

.mfp-figure,
img.mfp-img {
  line-height: 0;
}

.mfp-figure:after {
  content: '';
  position: absolute;
  left: 0;
  top: 2.5em;
  bottom: 2.5em;
  right: 0;
  z-index: -1;
  background: #444;
}

.mfp-figure figure {
  margin: 0;
}

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

.mfp-title {
  line-height: 1.125em;
  color: #999;
  word-wrap: break-word;
}

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

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

@media screen and (max-width: 50em) and (orientation: landscape), screen and (max-height: 18.75em) {
  .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: .3125em;
  }

  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, .6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: .1875em .3125em;
    position: fixed;
    box-sizing: border-box;
  }

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

  .mfp-img-mobile .mfp-counter {
    right: .3125em;
    top: .1875em;
  }

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

@media all and (max-width: 56.25em) {
  .mfp-arrow {
    transform: scale(.75);
  }

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

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

  .mfp-container {
    padding-left: .375em;
    padding-right: .375em;
  }
}

.mfp-title {
  text-align: center;
  padding: .375em 0;
}

.mfp-fade.mfp-bg {
  opacity: 0;
  transition: all .15s ease-out;
}

.mfp-fade.mfp-bg.mfp-ready {
  opacity: .5;
  background-color: #000;
}

.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  transition: all .35s ease-out;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content,
.mfp-with-zoom.mfp-ready .mfp-container,
.mfp-with-zoom.mfp-ready.mfp-bg {
  opacity: 1;
}

.mfp-with-zoom .mfp-container,
.mfp-with-zoom.mfp-bg {
  opacity: 0;
  backface-visibility: hidden;
  transition: all .3s ease-out;
}

.mfp-with-zoom.mfp-emoving .mfp-container,
.mfp-with-zoom.mfp-emoving.mfp-bg {
  opacity: 0;
}

.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  touch-action: none;
  z-index: 1500;
  backface-visibility: hidden;
  outline: 0;
}

.pswp * {
  box-sizing: border-box;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: .001;
  will-change: opacity;
  transition: opacity 333ms cubic-bezier(.4, 0, .22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: grabbing;
}

.pswp__bg,
.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.pswp__bg {
  background: #fff;
  opacity: 0;
  backface-visibility: hidden;
}

.pswp__scroll-wrap {
  overflow: hidden;
}

.pswp__container {
  position: absolute;
}

.pswp__container,
.pswp__zoom-wrap {
  touch-action: none;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.pswp__container,
.pswp__img {
  user-select: none;
}

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  transform-origin: left top;
  transition: transform 333ms cubic-bezier(.4, 0, .22, 1);
}

.pswp__bg {
  will-change: opacity;
  transition: opacity 333ms cubic-bezier(.4, 0, .22, 1);
}

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container,
.pswp__zoom-wrap {
  backface-visibility: hidden;
}

.pswp__img,
.pswp__item {
  position: absolute;
  top: 0;
  left: 0;
}

.pswp__item {
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.pswp__img {
  width: auto;
  height: auto;
}

.pswp__img--placeholder {
  backface-visibility: hidden;
}

.pswp__img--placeholder--blank {
  background: #202;
}

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0;
}

.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: .875em;
  line-height: 1em;
  margin-top: -.5em;
  color: #ccc;
}

.pswp__error-msg a {
  color: #ccc;
  text-decoration: underline;
}

.pswp__button {
  position: relative;
  background: 0;
  cursor: pointer;
  overflow: visible;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  float: right;
  opacity: .75;
  transition: opacity .2s;
  box-shadow: none;
}

.pswp__button:focus,
.pswp__button:hover {
  opacity: 1;
}

.pswp__button:active {
  outline: 0;
  opacity: .9;
}

.pswp__button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.pswp__ui--over-close .pswp__button--close {
  opacity: 1;
}

.pswp__button,
.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background: url(/assets/img/skin_sf.svg) 0 0 no-repeat;
  background-size: 16.5em 5.5em;
  width: 2.75em;
  height: 2.75em;
}

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  content: '';
  top: 2.1875em;
  width: 2em;
  position: absolute;
}

.pswp--svg .pswp__button--arrow--left,
.pswp--svg .pswp__button--arrow--right {
  background: 0;
}

.pswp__button--close {
  background-position: 0 -2.75em;
  top: 25%;
  right: 1%;
}

.pswp__button--zoom {
  display: none;
  background-position: -5.5em 0;
  top: 25%;
  right: 2%;
}

.pswp--zoom-allowed .pswp__button--zoom {
  display: block;
}

.pswp--zoomed-in .pswp__button--zoom {
  background-position: -8.25em 0;
}

.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden;
}

.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: 0;
  top: 50%;
  margin-top: -3.125em;
  width: 4.375em;
  height: 6.25em;
  position: absolute;
}

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

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

.pswp__button--arrow--left:before {
  left: .375em;
  background-position: -8.625em -2.75em;
}

.pswp__button--arrow--right:before {
  right: .375em;
  background-position: -5.875em -2.75em;
}

.pswp__counter {
  user-select: none;
}

.pswp--touch {
  padding: 1em .75em;
}

.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 2.75em;
  font-size: .8125em;
  line-height: 2.75em;
  color: #999;
  opacity: .75;
  padding: 0 .625em;
}

.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 2.75em;
}

.pswp__caption small {
  font-size: .8125em;
  color: #999;
}

.pswp__caption__center {
  text-align: center;
  max-width: 26.25em;
  margin: 0 auto;
  font-size: .9375em;
  padding: .625em;
  line-height: 1.25em;
  color: #999;
}

@media screen and (max-width: 64em) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right;
  }
}

.pswp__ui {
  visibility: visible;
  opacity: 1;
  z-index: 1550;
}

.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 2.75em;
  width: 100%;
}

.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right,
.pswp__caption,
.pswp__top-bar {
  backface-visibility: hidden;
  will-change: opacity;
  transition: opacity 333ms cubic-bezier(.4, 0, .22, 1);
}

.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible;
}

.pswp__caption,
.pswp__top-bar,
.pswp__ui--fit .pswp__caption,
.pswp__ui--fit .pswp__top-bar {
  background-color: transparent;
}

.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right,
.pswp__ui--idle .pswp__top-bar {
  opacity: 0;
}

.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__top-bar {
  opacity: .001;
}

.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none;
}

.pswp__element--disabled {
  display: none !important;
}

.pswp--minimal--dark .pswp__top-bar {
  background: 0;
}
