:root {
  --f-button-width               : 40px;
  --f-button-height              : 40px;
  --f-button-border              : 0;
  --f-button-border-radius       : 0;
  --f-button-color               : #374151;
  --f-button-bg                  : #f8f8f8;
  --f-button-shadow              : none;
  --f-button-transition          : all .15s ease;
  --f-button-transform           : none;
  --f-button-outline-width       : 1px;
  --f-button-outline-color       : rgba(0, 0, 0, .7);
  --f-button-svg-width           : 20px;
  --f-button-svg-height          : 20px;
  --f-button-svg-stroke-width    : 1.5;
  --f-button-svg-fill            : none;
  --f-button-svg-filter          : none;
  --f-button-svg-opacity         : 1;
  --f-button-svg-disabled-opacity: .5;
  --f-button-svg-transition      : opacity .15s ease;
  --f-button-svg-transform       : none
}

.f-button {
  width          : var(--f-button-width);
  height         : var(--f-button-height);
  border         : var(--f-button-border);
  border-radius  : var(--f-button-border-radius);
  color          : var(--f-button-color);
  background     : var(--f-button-bg);
  box-shadow     : var(--f-button-shadow);
  transform      : var(--f-button-transform);
  transition     : var(--f-button-transition);
  backdrop-filter: var(--f-button-backdrop-filter);
  display        : flex;
  justify-content: center;
  align-items    : center;
  box-sizing     : content-box;
  position       : relative;
  margin         : 0;
  padding        : 0;
  pointer-events : all;
  cursor         : pointer;
  overflow       : hidden
}

@media (hover: hover) {
  .f-button:hover:not([aria-disabled]) {
    color           : var(--f-button-hover-color, var(--f-button-color));
    background-color: var(--f-button-hover-bg, var(--f-button-bg))
  }
}

.f-button:active:not([aria-disabled]) {
  color           : var(--f-button-active-color, var(--f-button-hover-color, var(--f-button-color)));
  background-color: var(--f-button-active-bg, var(--f-button-hover-bg, var(--f-button-bg)))
}

.f-button:focus {
  outline: none
}

.f-button:focus-visible {
  outline       : var(--f-button-outline-width) solid var(--f-button-outline-color);
  outline-offset: var(--f-button-outline-offset)
}

.f-button svg {
  width          : var(--f-button-svg-width);
  height         : var(--f-button-svg-height);
  transform      : var(--f-button-svg-transform);
  fill           : var(--f-button-svg-fill);
  filter         : var(--f-button-svg-filter);
  opacity        : var(--f-button-svg-opacity, 1);
  transition     : var(--f-button-svg-transition);
  stroke         : currentColor;
  stroke-width   : var(--f-button-svg-stroke-width);
  stroke-linecap : round;
  stroke-linejoin: round;
  pointer-events : none
}

.f-button[aria-disabled] {
  cursor: default
}

.f-button[aria-disabled] svg {
  opacity: var(--f-button-svg-disabled-opacity)
}

[data-panzoom-action=toggleFS] g:first-child {
  display: flex
}

[data-panzoom-action=toggleFS] g:last-child {
  display: none
}

.in-fullscreen [data-panzoom-action=toggleFS] g:first-child {
  display: none
}

.in-fullscreen [data-panzoom-action=toggleFS] g:last-child {
  display: flex
}

[data-autoplay-action=toggle] svg g:first-child {
  display: flex
}

[data-autoplay-action=toggle] svg g:last-child {
  display: none
}

.has-autoplay [data-autoplay-action=toggle] svg g:first-child {
  display: none
}

.has-autoplay [data-autoplay-action=toggle] svg g:last-child {
  display: flex
}

:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child {
  display: none
}

:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child {
  display: flex
}

:root {
  --f-spinner-color-1      : rgba(0, 0, 0, .1);
  --f-spinner-color-2      : rgba(17, 24, 28, .8);
  --f-spinner-width        : 50px;
  --f-spinner-height       : 50px;
  --f-spinner-border-radius: 50%;
  --f-spinner-border-width : 4px
}

.f-spinner {
  position        : absolute;
  top             : 50%;
  left            : 50%;
  margin          : 0;
  padding         : 0;
  width           : var(--f-spinner-width);
  height          : var(--f-spinner-height);
  translate       : -50% -50%;
  border          : var(--f-spinner-border-width) solid var(--f-spinner-color-1);
  border-top-color: var(--f-spinner-color-2);
  border-radius   : var(--f-spinner-border-radius);
  animation       : f-spinner .75s linear infinite, f-fadeIn .2s ease .2s both
}

@keyframes f-spinner {
  to {
    rotate: 360deg
  }
}

.f-panzoom,
.f-zoomable {
  position      : relative;
  overflow      : hidden;
  display       : flex;
  align-items   : center;
  flex-direction: column
}

.f-panzoom:before,
.f-panzoom:after,
.f-zoomable:before,
.f-zoomable:after {
  display: block;
  content: ""
}

.f-panzoom:not(.has-controls):before,
.f-zoomable:not(.has-controls):before {
  margin-bottom: auto
}

.f-panzoom:after,
.f-zoomable:after {
  margin-top: auto
}

.f-panzoom.in-fullscreen,
.f-zoomable.in-fullscreen {
  position    : fixed;
  top         : 0;
  left        : 0;
  margin      : 0 !important;
  width       : 100% !important;
  height      : 100% !important;
  max-width   : none !important;
  max-height  : none !important;
  aspect-ratio: unset !important;
  z-index     : 9999
}

.f-panzoom__wrapper {
  position  : relative;
  min-width : 0;
  min-height: 0;
  max-width : 100%;
  max-height: 100%
}

.f-panzoom__wrapper.will-zoom-out {
  cursor: zoom-out
}

.f-panzoom__wrapper.can-drag {
  cursor: move;
  cursor: grab
}

.f-panzoom__wrapper.will-zoom-in {
  cursor: zoom-in
}

.f-panzoom__wrapper.is-dragging {
  cursor: move;
  cursor: grabbing
}

.f-panzoom__wrapper.has-error {
  display: none
}

.f-panzoom__content {
  display   : block;
  min-width : 0;
  min-height: 0;
  max-width : 100%;
  max-height: 100%
}

.f-panzoom__content.is-lazyloading,
.f-panzoom__content.has-lazyerror {
  visibility: hidden
}

img.f-panzoom__content {
  width         : auto;
  height        : auto;
  vertical-align: top;
  object-fit    : contain;
  transition    : none;
  user-select   : none
}

.f-panzoom__wrapper>.f-panzoom__content {
  visibility: hidden
}

.f-panzoom__viewport {
  display : block;
  position: absolute;
  top     : 0;
  left    : 0;
  width   : 100%;
  height  : 100%;
  z-index : 10
}

.f-panzoom__viewport>.f-panzoom__content {
  width     : 100%;
  height    : 100%;
  object-fit: fill
}

picture.f-panzoom__content img {
  vertical-align: top;
  width         : 100%;
  height        : auto;
  max-height    : 100%;
  object-fit    : contain;
  transition    : none;
  user-select   : none
}

.f-panzoom__protected {
  position   : absolute;
  inset      : 0;
  z-index    : 1;
  user-select: none
}

html.with-panzoom-in-fullscreen {
  overflow: hidden
}

.f-fadeIn {
  animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
  z-index  : 2
}

.f-fadeOut {
  animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
  z-index  : 1
}

@keyframes f-fadeIn {
  0% {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

@keyframes f-fadeOut {
  to {
    opacity: 0
  }
}

.f-crossfadeIn {
  animation: var(--f-transition-duration, .2s) ease both f-crossfadeIn;
  z-index  : 2
}

.f-crossfadeOut {
  animation: calc(var(--f-transition-duration, .2s) * .2) ease calc(var(--f-transition-duration, .2s) * .8) both f-crossfadeOut;
  z-index  : 1
}

@keyframes f-crossfadeIn {
  0% {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

@keyframes f-crossfadeOut {
  to {
    opacity: 0
  }
}

.is-horizontal .f-slideIn.from-next {
  animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNextX
}

.is-horizontal .f-slideIn.from-prev {
  animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrevX
}

.is-horizontal .f-slideOut.to-next {
  animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNextX
}

.is-horizontal .f-slideOut.to-prev {
  animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrevX
}

@keyframes f-slideInPrevX {
  0% {
    transform: translate(calc(100% + var(--f-carousel-gap, 0)))
  }

  to {
    transform: translateZ(0)
  }
}

@keyframes f-slideInNextX {
  0% {
    transform: translate(calc(-100% - var(--f-carousel-gap, 0)))
  }

  to {
    transform: translateZ(0)
  }
}

@keyframes f-slideOutNextX {
  to {
    transform: translate(calc(-100% - var(--f-carousel-gap, 0)))
  }
}

@keyframes f-slideOutPrevX {
  to {
    transform: translate(calc(100% + var(--f-carousel-gap, 0)))
  }
}

.is-vertical .f-slideIn.from-next {
  animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNextY
}

.is-vertical .f-slideIn.from-prev {
  animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrevY
}

.is-vertical .f-slideOut.to-next {
  animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNextY
}

.is-vertical .f-slideOut.to-prev {
  animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrevY
}

@keyframes f-slideInPrevY {
  0% {
    transform: translateY(calc(100% + var(--f-carousel-gap, 0)))
  }

  to {
    transform: translateZ(0)
  }
}

@keyframes f-slideInNextY {
  0% {
    transform: translateY(calc(-100% - var(--f-carousel-gap, 0)))
  }

  to {
    transform: translateZ(0)
  }
}

@keyframes f-slideOutNextY {
  to {
    transform: translateY(calc(-100% - var(--f-carousel-gap, 0)))
  }
}

@keyframes f-slideOutPrevY {
  to {
    transform: translateY(calc(100% + var(--f-carousel-gap, 0)))
  }
}

.f-zoomInUp {
  animation: var(--f-transition-duration, .3s) ease both f-zoomInUp
}

.f-zoomOutDown {
  animation: var(--f-transition-duration, .3s) ease both f-zoomOutDown
}

@keyframes f-zoomInUp {
  0% {
    transform: scale(var(--f-zoomInUp-scale, .975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
    opacity  : var(--f-zoomInUp-opacity, 0)
  }

  to {
    transform: scale(1) translateZ(0);
    opacity  : 1
  }
}

@keyframes f-zoomOutDown {
  to {
    transform: scale(var(--f-zoomOutDown-scale, .975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
    opacity  : 0
  }
}

.f-throwOutUp {
  animation: var(--f-throwOutUp-duration, .2s) ease-out both f-throwOutUp
}

.f-throwOutDown {
  animation: var(--f-throwOutDown-duration, .2s) ease-out both f-throwOutDown
}

@keyframes f-throwOutUp {
  to {
    transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
    opacity  : 0
  }
}

@keyframes f-throwOutDown {
  to {
    transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
    opacity  : 0
  }
}

.has-iframe .f-html,
.has-pdf .f-html,
.has-gmap .f-html {
  width     : 100%;
  height    : 100%;
  min-height: 1px;
  overflow  : visible
}

.has-pdf .f-html,
.has-gmap .f-html {
  padding: 0
}

.f-html {
  position  : relative;
  box-sizing: border-box;
  margin    : var(--f-html-margin, 0);
  padding   : var(--f-html-padding, 2rem);
  color     : var(--f-html-color, currentColor);
  background: var(--f-html-bg)
}

.f-html.is-error {
  text-align: center
}

.f-iframe {
  display: block;
  margin : 0;
  border : 0;
  height : 100%;
  width  : 100%
}

.f-caption {
  align-self   : center;
  flex-shrink  : 0;
  margin       : var(--f-caption-margin);
  padding      : var(--f-caption-padding, 16px 8px);
  max-width    : 100%;
  max-height   : calc(80vh - 100px);
  overflow     : auto;
  overflow-wrap: anywhere;
  line-height  : var(--f-caption-line-height);
  color        : var(--f-caption-color);
  background   : var(--f-caption-bg);
  font         : var(--f-caption-font)
}

.has-html5video .f-html,
.has-youtube .f-html,
.has-vimeo .f-html {
  padding     : 0;
  width       : 100%;
  height      : 100%;
  min-height  : 1px;
  overflow    : visible;
  max-width   : var(--f-video-width, 960px);
  max-height  : var(--f-video-height, 540px);
  aspect-ratio: var(--f-video-aspect-ratio);
  background  : var(--f-video-bg, rgba(0, 0, 0, .9))
}

.f-html5video {
  border    : 0;
  display   : block;
  height    : 100%;
  width     : 100%;
  background: transparent
}

.f-button.is-arrow {
  --f-button-width           : var(--f-arrow-width, 46px);
  --f-button-height          : var(--f-arrow-height, 46px);
  --f-button-svg-width       : var(--f-arrow-svg-width, 24px);
  --f-button-svg-height      : var(--f-arrow-svg-height, 24px);
  --f-button-svg-stroke-width: var(--f-arrow-svg-stroke-width, 1.75);
  --f-button-border-radius   : var(--f-arrow-border-radius, unset);
  --f-button-bg              : var(--f-arrow-bg, transparent);
  --f-button-hover-bg        : var(--f-arrow-hover-bg, var(--f-arrow-bg));
  --f-button-active-bg       : var(--f-arrow-active-bg, var(--f-arrow-hover-bg));
  --f-button-shadow          : var(--f-arrow-shadow);
  --f-button-color           : var(--f-arrow-color);
  --f-button-hover-color     : var(--f-arrow-hover-color, var(--f-arrow-color));
  --f-button-active-color    : var(--f-arrow-active-color, var(--f-arrow-hover-color));
  overflow                   : visible
}

.f-button.is-arrow.is-prev,
.f-button.is-arrow.is-next {
  position : absolute;
  transform: translate(0);
  z-index  : 20
}

.is-horizontal .f-button.is-arrow.is-prev,
.is-horizontal .f-button.is-arrow.is-next {
  inset    : 50% auto auto;
  transform: translateY(-50%)
}

.is-horizontal.is-ltr .f-button.is-arrow.is-prev {
  left: var(--f-arrow-pos, 0)
}

.is-horizontal.is-ltr .f-button.is-arrow.is-next {
  right: var(--f-arrow-pos, 0)
}

.is-horizontal.is-rtl .f-button.is-arrow.is-prev {
  right    : var(--f-arrow-pos, 0);
  transform: translateY(-50%) rotateY(180deg)
}

.is-horizontal.is-rtl .f-button.is-arrow.is-next {
  left     : var(--f-arrow-pos, 0);
  transform: translateY(-50%) rotateY(180deg)
}

.is-vertical.is-ltr .f-button.is-arrow.is-prev,
.is-vertical.is-rtl .f-button.is-arrow.is-prev {
  top      : var(--f-arrow-pos, 0);
  right    : auto;
  bottom   : auto;
  left     : 50%;
  transform: translate(-50%)
}

.is-vertical.is-ltr .f-button.is-arrow.is-next,
.is-vertical.is-rtl .f-button.is-arrow.is-next {
  top      : auto;
  right    : auto;
  bottom   : var(--f-arrow-pos, 0);
  left     : 50%;
  transform: translate(-50%)
}

.is-vertical .f-button.is-arrow.is-prev svg,
.is-vertical .f-button.is-arrow.is-next svg {
  transform: rotate(90deg)
}

.f-carousel__toolbar {
  display               : grid;
  grid-template-columns : 1fr auto 1fr;
  margin                : var(--f-toolbar-margin, 0);
  padding               : var(--f-toolbar-padding, 8px);
  line-height           : var(--f-toolbar-line-height);
  background            : var(--f-toolbar-bg, none);
  box-shadow            : var(--f-toolbar-shadow, none);
  backdrop-filter       : var(--f-toolbar-backdrop-filter);
  position              : relative;
  z-index               : 20;
  color                 : var(--f-toolbar-color, currentColor);
  font-size             : var(--f-toolbar-font-size, 17px);
  font-weight           : var(--f-toolbar-font-weight, inherit);
  font-family           : var(--f-toolbar-font, -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif);
  text-shadow           : var(--f-toolbar-text-shadow);
  text-align            : center;
  font-variant-numeric  : tabular-nums;
  -webkit-font-smoothing: subpixel-antialiased;
  white-space           : nowrap;
  pointer-events        : none
}

.f-carousel__toolbar.is-absolute {
  position: absolute;
  top     : 0;
  left    : 0;
  right   : 0
}

.f-carousel__toolbar .f-button:focus-visible {
  position: relative;
  z-index : 1
}

.f-carousel__toolbar__column {
  display       : flex;
  flex-direction: row;
  flex-wrap     : wrap;
  align-content : flex-start;
  gap           : var(--f-toolbar-gap, 0)
}

.f-carousel__toolbar__column.is-left {
  display        : flex;
  justify-self   : flex-start;
  justify-content: flex-start
}

.f-carousel__toolbar__column.is-middle {
  display        : flex;
  justify-content: center
}

.f-carousel__toolbar__column.is-right {
  display        : flex;
  justify-self   : flex-end;
  justify-content: flex-end;
  flex-flow      : nowrap
}

.f-carousel__toolbar__column {
  pointer-events: none
}

.f-carousel__toolbar__column>* {
  pointer-events: all
}

.f-counter {
  position      : relative;
  display       : flex;
  flex-direction: row;
  cursor        : default;
  user-select   : none;
  margin        : var(--f-counter-margin, 0);
  padding       : var(--f-counter-padding, 4px);
  line-height   : var(--f-counter-line-height);
  background    : var(--f-counter-bg);
  border-radius : var(--f-counter-border-radius)
}

.f-counter span {
  padding: 0 var(--f-counter-gap, 4px)
}

:root {
  --f-thumbs-gap               : 8px;
  --f-thumbs-margin            : 0;
  --f-thumbs-padding-x         : 8px;
  --f-thumbs-padding-y         : 8px;
  --f-thumbs-bg                : transparent;
  --f-thumbs-transition        : max-height .3s ease, max-width .3s ease, padding .3s ease;
  --f-thumbs-z-index           : 1;
  --f-thumbs-viewport-padding-x: 0px;
  --f-thumbs-viewport-padding-y: 0px;
  --f-thumb-width              : 94px;
  --f-thumb-height             : 76px;
  --f-thumb-clip-width         : 46px;
  --f-thumb-extra-gap          : 16px;
  --f-thumb-opacity            : 1;
  --f-thumb-transition         : opacity .3s ease, transform .15s ease;
  --f-thumb-border             : none;
  --f-thumb-border-radius      : 4px;
  --f-thumb-shadow             : none;
  --f-thumb-bg                 : linear-gradient(rgba(0, 0, 0, .1), rgba(0, 0, 0, .05));
  --f-thumb-focus-shadow       : inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;
  --f-thumb-selected-shadow    : inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;
  --f-thumb-border-transition  : all .1s ease;
  --f-thumb-img-width          : 100%;
  --f-thumb-img-height         : 100%;
  --f-thumb-img-fit            : cover;
  --f-thumb-img-position       : 50% 20%
}

.f-thumbs {
  --f-carousel-slide-width   : var(--f-thumb-width);
  --f-carousel-slide-height  : var(--f-thumb-height);
  --f-carousel-gap           : var(--f-thumbs-gap);
  position                   : relative;
  box-sizing                 : border-box;
  flex-shrink                : 0;
  margin                     : var(--f-thumbs-margin);
  padding                    : var(--f-thumbs-padding-y) var(--f-thumbs-padding-x);
  overflow                   : hidden;
  background                 : var(--f-thumbs-bg);
  -webkit-tap-highlight-color: transparent;
  user-select                : none;
  transition                 : var(--f-thumbs-transition);
  z-index                    : var(--f-thumbs-z-index)
}

.f-thumbs.is-horizontal {
  max-height: calc(var(--f-carousel-slide-height) + var(--f-thumbs-padding-y) * 2)
}

.f-thumbs.is-horizontal.is-hidden {
  max-height          : 0;
  --f-thumbs-padding-y: 0
}

.f-thumbs.is-vertical {
  max-width: calc(var(--f-carousel-slide-width) + var(--f-thumbs-padding-x) * 2)
}

.f-thumbs.is-vertical.is-hidden {
  max-width           : 0;
  --f-thumbs-padding-x: 0
}

.f-thumbs.is-scrollable.is-hidden {
  max-height          : 0;
  --f-thumbs-padding-y: 0
}

.f-thumbs.is-ltr {
  direction: ltr
}

.f-thumbs.is-rtl {
  direction: rtl
}

.f-thumbs img {
  display        : block;
  width          : var(--f-thumb-img-width);
  height         : var(--f-thumb-img-height);
  object-fit     : var(--f-thumb-img-fit);
  object-position: var(--f-thumb-img-position);
  pointer-events : none;
  border-radius  : inherit;
  color          : transparent
}

.f-thumbs img[data-lazy-src] {
  visibility: hidden
}

.f-thumbs img.has-lazyerror {
  display: none
}

.f-thumbs__viewport {
  box-sizing: border-box;
  height    : 100%;
  padding   : var(--f-thumbs-viewport-padding-y) var(--f-thumbs-viewport-padding-x);
  overflow  : visible;
  display   : grid
}

.f-thumbs__slide {
  position      : relative;
  box-sizing    : border-box;
  grid-area     : 1/1;
  width         : var(--f-carousel-slide-width);
  height        : var(--f-carousel-slide-height);
  margin        : 0;
  padding       : 0;
  display       : flex;
  align-items   : center;
  flex-direction: column;
  cursor        : pointer;
  overflow      : visible
}

.f-thumbs__slide:hover button {
  opacity  : var(--f-thumb-hover-opacity, 1);
  transform: var(--f-thumb-hover-transform, none)
}

.f-thumbs__slide:hover button:after {
  border    : var(--f-thumb-hover-border, none);
  box-shadow: var(--f-thumb-hover-shadow, var(--f-thumb-shadow))
}

.f-thumbs__slide button {
  all          : unset;
  display      : block;
  margin       : auto;
  padding      : 0;
  position     : relative;
  overflow     : visible;
  width        : 100%;
  height       : 100%;
  outline      : none;
  transition   : var(--f-thumb-transition);
  border-radius: var(--f-thumb-border-radius);
  opacity      : var(--f-thumb-opacity);
  transform    : var(--f-thumb-transform);
  background   : var(--f-thumb-bg)
}

.f-thumbs__slide button:after {
  content      : "";
  position     : absolute;
  inset        : 0;
  z-index      : 1;
  transition   : var(--f-thumb-border-transition);
  border-radius: inherit;
  border       : var(--f-thumb-border);
  box-shadow   : var(--f-thumb-shadow)
}

.f-thumbs__slide button:focus-within {
  opacity  : var(--f-thumb-focus-opacity, 1);
  transform: var(--f-thumb-focus-transform, none)
}

.f-thumbs__slide button:focus-within:after {
  border    : var(--f-thumb-focus-border, none);
  box-shadow: var(--f-thumb-focus-shadow, var(--f-thumb-shadow))
}

.f-thumbs__slide:active {
  opacity  : var(--f-thumb-active-opacity, 1);
  transform: var(--f-thumb-active-transform, none)
}

.f-thumbs__slide:active:after {
  border    : var(--f-thumb-active-border, none);
  box-shadow: var(--f-thumb-active-shadow, var(--f-thumb-shadow))
}

.f-thumbs__slide.is-selected {
  z-index: 2
}

.f-thumbs__slide.is-selected button {
  opacity  : var(--f-thumb-selected-opacity, 1);
  transform: var(--f-thumb-selected-transform, none)
}

.f-thumbs__slide.is-selected button:after {
  border    : var(--f-thumb-selected-border, none);
  box-shadow: var(--f-thumb-selected-shadow, var(--f-thumb-shadow))
}

.f-thumbs.is-modern {
  --f-carousel-slide-width : calc(var(--f-thumb-clip-width) + var(--f-thumbs-gap));
  --f-carousel-slide-height: var(--f-thumb-height);
  --f-carousel-gap         : 0;
  --width-diff             : calc((var(--f-thumb-width) - var(--f-thumb-clip-width)))
}

.f-thumbs.is-modern .f-thumbs__viewport {
  width        : calc(100% + var(--f-carousel-slide-width) * 2 + var(--f-thumbs-padding-x));
  margin-inline: calc((var(--f-carousel-slide-width) + var(--f-thumbs-padding-x)) * -1)
}

.f-thumbs.is-modern .f-thumbs__slide {
  --clip-shift: calc((var(--width-diff) * .5) * var(--progress));
  --clip-path : inset(0 var(--clip-shift) round var(--f-thumb-border-radius, 0));
  padding     : 0;
  overflow    : visible;
  left        : var(--shift, 0);
  will-change : left;
  transition  : left var(--f-transition-duration) var(--f-transition-easing)
}

.f-thumbs.is-modern .f-thumbs__slide button {
  display      : block;
  margin-inline: 50%;
  width        : var(--f-thumb-width);
  clip-path    : var(--clip-path);
  border       : none;
  box-shadow   : none;
  transition   : clip-path var(--f-transition-duration) var(--f-transition-easing), opacity var(--f-thumb-transition-duration, .2s) var(--f-thumb-transition-easing, ease)
}

.f-thumbs.is-modern .f-thumbs__slide button:after {
  display: none
}

.f-thumbs.is-modern .f-thumbs__slide:focus:not(:focus-visible) {
  outline: none
}

.f-thumbs.is-modern .f-thumbs__slide:focus-within:not(.is-selected) button:before {
  content      : "";
  position     : absolute;
  z-index      : 1;
  top          : 0;
  left         : var(--clip-shift);
  bottom       : 0;
  right        : var(--clip-shift);
  transition   : border var(--f-transition-duration) var(--f-transition-easing), box-shadow var(--f-transition-duration) var(--f-transition-easing);
  border-radius: inherit;
  border       : var(--f-thumb-focus-border, none);
  box-shadow   : var(--f-thumb-focus-shadow, none)
}

.f-thumbs.is-modern {
  --f-transition-duration: .25s;
  --f-transition-easing  : ease-out
}

.f-thumbs.is-modern.is-syncing {
  --f-transition-duration: 0s
}

.f-thumbs.is-scrollable .f-thumbs__viewport {
  display              : grid;
  grid-template-columns: repeat(auto-fill, minmax(var(--f-thumb-width), 1fr));
  grid-auto-rows       : var(--f-thumb-height);
  gap                  : var(--f-thumbs-gap);
  overflow             : auto;
  overscroll-behavior  : contain;
  user-select          : none
}

.f-thumbs.is-scrollable .f-thumbs__viewport .f-thumbs__slide {
  grid-area: auto;
  display  : block;
  position : relative;
  max-width: 100%;
  width    : var(--f-thumb-width);
  height   : var(--f-thumb-height);
  cursor   : pointer;
  outline  : none
}

:root {
  --f-progressbar-height : 3px;
  --f-progressbar-color  : var(--f-carousel-theme-color, #575ad6);
  --f-progressbar-opacity: 1;
  --f-progressbar-z-index: 30
}

.f-progressbar {
  position                 : absolute;
  top                      : 0;
  left                     : 0;
  right                    : 0;
  z-index                  : var(--f-progressbar-z-index);
  height                   : var(--f-progressbar-height);
  transform                : scaleX(0);
  transform-origin         : 0;
  opacity                  : var(--f-progressbar-opacity);
  background               : var(--f-progressbar-color);
  user-select              : none;
  pointer-events           : none;
  animation-name           : f-progressbar;
  animation-play-state     : running;
  animation-timing-function: linear
}

.f-progressbar:empty {
  display: block
}

button>.f-progressbar {
  --f-progressbar-height : 100%;
  --f-progressbar-opacity: .2
}

@keyframes f-progressbar {
  0% {
    transform: scaleX(0)
  }

  to {
    transform: scaleX(1)
  }
}

[data-fullscreen-action=toggle] svg g:first-child {
  display: flex
}

[data-fullscreen-action=toggle] svg g:last-child {
  display: none
}

:fullscreen [data-fullscreen-action=toggle] svg g:first-child {
  display: none
}

:fullscreen [data-fullscreen-action=toggle] svg g:last-child {
  display: flex
}

.in-fullscreen-mode>.f-carousel {
  flex      : 1;
  min-width : 0 !important;
  min-height: 0 !important
}

html.with-fancybox {
  width          : auto;
  overflow       : visible;
  scroll-behavior: auto
}

html.with-fancybox body.hide-scrollbar {
  width                : auto;
  margin-right         : calc(var(--f-body-margin, 0px) + var(--f-scrollbar-compensate, 0px));
  overflow             : hidden !important;
  overscroll-behavior-y: none
}

.fancybox__dialog {
  position           : fixed;
  inset              : 0;
  z-index            : 1050;
  width              : 100%;
  height             : 100vh;
  max-height         : unset;
  max-width          : unset;
  padding            : 0;
  margin             : 0;
  border             : 0;
  overflow           : hidden;
  background         : transparent;
  touch-action       : none;
  overscroll-behavior: contain
}

.fancybox__dialog:focus {
  outline: none
}

.fancybox__dialog::backdrop {
  opacity: 0
}

@supports (height: 100dvh) {
  .fancybox__dialog {
    height: 100dvh
  }
}

.fancybox__dialog *:empty {
  display: block
}

.fancybox__container {
  --fancybox-color                 : #dbdbdb;
  --fancybox-backdrop-bg           : rgba(24, 24, 27, .95);
  --f-toolbar-margin               : 0;
  --f-toolbar-padding              : 8px;
  --f-toolbar-gap                  : 0;
  --f-toolbar-color                : #ddd;
  --f-toolbar-font-size            : 16px;
  --f-toolbar-font-weight          : 500;
  --f-toolbar-font                 : -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;
  --f-toolbar-line-height          : var(--f-button-height);
  --f-toolbar-text-shadow          : 1px 1px 1px rgba(0, 0, 0, .75);
  --f-toolbar-shadow               : none;
  --f-toolbar-bg                   : none;
  --f-counter-margin               : 0;
  --f-counter-padding              : 0px 10px;
  --f-counter-gap                  : 4px;
  --f-counter-line-height          : var(--f-button-height);
  --f-carousel-gap                 : 17px;
  --f-carousel-slide-width         : 100%;
  --f-carousel-slide-height        : 100%;
  --f-carousel-slide-padding       : 0;
  --f-carousel-slide-bg            : unset;
  --f-html-color                   : #222;
  --f-html-bg                      : #fff;
  --f-error-color                  : #fff;
  --f-error-bg                     : #333;
  --f-caption-margin               : 0;
  --f-caption-padding              : 16px 8px;
  --f-caption-color                : var(--fancybox-color, #dbdbdb);
  --f-caption-bg                   : transparent;
  --f-caption-font                 : inherit;
  --f-caption-line-height          : 1.375;
  --f-spinner-color-1              : rgba(255, 255, 255, .2);
  --f-spinner-color-2              : rgba(255, 255, 255, .8);
  --f-spinner-width                : 50px;
  --f-spinner-height               : 50px;
  --f-spinner-border-radius        : 50%;
  --f-spinner-border-width         : 4px;
  --f-progressbar-color            : rgba(255, 255, 255);
  --f-button-width                 : 46px;
  --f-button-height                : 46px;
  --f-button-color                 : #ddd;
  --f-button-hover-color           : #fff;
  --f-button-outline-width         : 1px;
  --f-button-outline-color         : rgba(255, 255, 255, .75);
  --f-button-outline-offset        : 0px;
  --f-button-bg                    : rgba(54, 54, 54, .75);
  --f-button-border                : 0;
  --f-button-border-radius         : 0;
  --f-button-shadow                : none;
  --f-button-transition            : all .2s ease;
  --f-button-transform             : none;
  --f-button-svg-width             : 24px;
  --f-button-svg-height            : 24px;
  --f-button-svg-stroke-width      : 1.75;
  --f-button-svg-filter            : drop-shadow(1px 1px 1px rgba(24, 24, 27, .01)), drop-shadow(1px 2px 1px rgba(24, 24, 27, .05));
  --f-button-svg-fill              : none;
  --f-button-svg-disabled-opacity  : .5;
  --f-arrow-pos                    : 32px;
  --f-arrow-width                  : 50px;
  --f-arrow-height                 : 50px;
  --f-arrow-svg-width              : 24px;
  --f-arrow-svg-height             : 24px;
  --f-arrow-svg-stroke-width       : 2.5;
  --f-arrow-border-radius          : 50%;
  --f-arrow-bg                     : rgba(54, 54, 54, .65);
  --f-arrow-color                  : #ddd;
  --f-arrow-hover-color            : #fff;
  --f-close-button-width           : 30px;
  --f-close-button-height          : 30px;
  --f-close-button-svg-width       : 24px;
  --f-close-button-svg-height      : 24px;
  --f-close-button-svg-stroke-width: 1.75;
  --f-close-border-radius          : 4px;
  --f-close-button-color           : #fff;
  --f-close-button-hover-color     : #fff;
  --f-close-button-bg              : transparent;
  --f-close-button-hover-bg        : transparent;
  --f-close-button-active-bg       : transparent;
  --f-thumbs-margin                : 0px;
  --f-thumbs-padding-x             : 8px;
  --f-thumbs-padding-y             : 8px;
  --f-thumbs-bg                    : none;
  --f-thumb-transition             : all .2s ease;
  --f-thumb-width                  : 94px;
  --f-thumb-height                 : 76px;
  --f-thumb-opacity                : 1;
  --f-thumb-border                 : none;
  --f-thumb-shadow                 : none;
  --f-thumb-transform              : none;
  --f-thumb-focus-opacity          : 1;
  --f-thumb-focus-border           : none;
  --f-thumb-focus-shadow           : inset 0 0 0 2px rgba(255, 255, 255, .65);
  --f-thumb-focus-transform        : none;
  --f-thumb-hover-opacity          : 1;
  --f-thumb-hover-border           : none;
  --f-thumb-hover-transform        : none;
  --f-thumb-active-opacity         : var(--f-thumb-hover-opacity);
  --f-thumb-active-border          : var(--f-thumb-hover-border);
  --f-thumb-active-transform       : var(--f-thumb-hover-transform);
  --f-thumb-selected-opacity       : 1;
  --f-thumb-selected-border        : none;
  --f-thumb-selected-shadow        : inset 0 0 0 2px #fff;
  --f-thumb-selected-transform     : none;
  --f-scrollbar-width              : 7px;
  --f-scrollbar-track-bg           : #444;
  --f-scrollbar-track-border-radius: 10px;
  --f-scrollbar-track-shadow       : inset 0 0 6px rgba(0, 0, 0, .2);
  --f-scrollbar-thumb-bg           : #ddd;
  --f-scrollbar-thumb-border-radius: 10px
}

.fancybox__container[theme=light] {
  --fancybox-color            : #222;
  --fancybox-backdrop-bg      : rgba(255, 255, 255, .97);
  --f-toolbar-color           : var(--fancybox-color, #222);
  --f-toolbar-text-shadow     : none;
  --f-toolbar-font-weight     : 400;
  --f-html-color              : var(--fancybox-color, #222);
  --f-html-bg                 : #fff;
  --f-error-color             : #555;
  --f-error-bg                : #fff;
  --f-video-bg                : #fff;
  --f-caption-color           : #333;
  --f-spinner-color-1         : rgba(0, 0, 0, .2);
  --f-spinner-color-2         : rgba(0, 0, 0, .8);
  --f-spinner-border-width    : 3.5px;
  --f-progressbar-color       : rgba(111, 111, 116);
  --f-button-color            : #333;
  --f-button-hover-color      : #000;
  --f-button-outline-color    : rgba(0, 0, 0, .85);
  --f-button-bg               : rgba(255, 255, 255, .85);
  --f-button-svg-stroke-width : 1.3;
  --f-button-svg-filter       : none;
  --f-arrow-bg                : rgba(255, 255, 255, .85);
  --f-arrow-color             : #333;
  --f-arrow-hover-color       : #000;
  --f-arrow-svg-stroke-width  : 1.3;
  --f-close-button-color      : #555;
  --f-close-button-hover-color: #000;
  --f-thumb-bg                : linear-gradient(#ebeff2, #e2e8f0);
  --f-thumb-focus-shadow      : 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #888;
  --f-thumb-selected-shadow   : 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #000;
  --f-scrollbar-track-bg      : #ddd;
  --f-scrollbar-thumb-bg      : #444
}

.fancybox__container {
  position      : absolute;
  inset         : 0;
  overflow      : hidden;
  display       : flex;
  flex-direction: column
}

.fancybox__container:focus {
  outline: none
}

.fancybox__container.has-vertical-thumbs {
  flex-direction: row-reverse
}

.fancybox__container.has-vertical-thumbs:not(.is-closing) .fancybox__viewport {
  overflow-x: clip;
  overflow-y: visible
}

.fancybox__container>*:not(.fancybox__carousel),
.fancybox__container .fancybox__carousel>*:not(.fancybox__viewport),
.fancybox__container .fancybox__carousel>.fancybox__viewport>.fancybox__slide:not(.is-selected),
.fancybox__container .fancybox__carousel>.fancybox__viewport>.fancybox__slide.is-selected>*:not(.f-html, .f-panzoom__wrapper, .f-spinner) {
  opacity: var(--f-drag-opacity, 1)
}

.fancybox__container:not(.is-ready, .is-hiding) {
  visibility: hidden
}

.fancybox__container.is-revealing>*:not(.fancybox__carousel),
.fancybox__container.is-revealing .fancybox__carousel>*:not(.fancybox__viewport),
.fancybox__container.is-revealing .fancybox__carousel>.fancybox__viewport>.fancybox__slide:not(.is-selected),
.fancybox__container.is-revealing .fancybox__carousel>.fancybox__viewport>.fancybox__slide.is-selected>*:not(.f-html, .f-panzoom__wrapper, .f-spinner) {
  animation: var(--f-interface-enter-duration, .35s) ease none f-fadeIn
}

.fancybox__container.is-hiding>*:not(.fancybox__carousel),
.fancybox__container.is-hiding .fancybox__carousel>*:not(.fancybox__viewport),
.fancybox__container.is-hiding .fancybox__carousel>.fancybox__viewport>.fancybox__slide.is-selected>*:not(.f-html, .f-panzoom__wrapper) {
  animation: var(--f-interface-exit-duration, .35s) ease forwards f-fadeOut
}

.fancybox__container.is-hiding .fancybox__carousel .fancybox__slide:not(.is-selected) {
  opacity: 0
}

.fancybox__container.is-hiding {
  pointer-events: none
}

.fancybox__container.is-idle .f-carousel__toolbar {
  pointer-events: none;
  opacity       : 0
}

.fancybox__container.is-idle .f-button.is-arrow {
  opacity: 0
}

.fancybox__container.is-idle.is-ready .f-carousel__toolbar {
  pointer-events: none;
  animation     : .15s ease-out both f-fadeOut
}

.fancybox__container.is-idle.is-ready .f-button.is-arrow {
  animation: .15s ease-out both f-fadeOut
}

.fancybox__backdrop {
  position  : fixed;
  inset     : 0;
  z-index   : -1;
  background: var(--fancybox-backdrop-bg)
}

.fancybox__carousel {
  flex          : 1;
  display       : flex;
  flex-direction: column;
  min-height    : 0;
  min-width     : 0;
  position      : relative;
  z-index       : 10;
  overflow-y    : visible;
  overflow-x    : clip
}

.fancybox__carousel.is-vertical {
  --f-carousel-slide-height: 100%
}

.fancybox__carousel.is-ltr {
  direction: ltr
}

.fancybox__carousel.is-rtl {
  direction: rtl
}

.fancybox__carousel>.f-button.is-arrow:before {
  position: absolute;
  content : "";
  inset   : -30px;
  z-index : 1
}

.fancybox__viewport {
  display   : grid;
  flex      : 1;
  min-height: 0;
  min-width : 0;
  position  : relative;
  overflow  : visible;
  transform : translate3d(0, var(--f-drag-offset, 0), 0)
}

.fancybox__viewport.is-draggable {
  cursor: move;
  cursor: grab
}

.fancybox__viewport.is-dragging {
  cursor: move;
  cursor: grabbing
}

.fancybox__viewport [data-selectable],
.fancybox__viewport [contenteditable] {
  cursor: auto
}

.fancybox__slide {
  box-sizing         : border-box;
  position           : relative;
  grid-area          : 1/1;
  display            : flex;
  align-items        : center;
  flex-direction     : column;
  width              : var(--f-carousel-slide-width);
  height             : var(--f-carousel-slide-height);
  min-width          : 0;
  min-height         : 0;
  max-width          : 100%;
  margin             : 0;
  padding            : var(--f-carousel-slide-padding);
  background         : var(--f-carousel-slide-bg);
  backface-visibility: hidden;
  transform          : translateZ(0);
  will-change        : transform
}

.fancybox__slide:before,
.fancybox__slide:after {
  display: block;
  content: ""
}

.fancybox__slide:before {
  margin-bottom: auto
}

.fancybox__slide:after {
  margin-top: auto
}

.fancybox__slide.is-selected {
  z-index: 1
}

.fancybox__slide.f-zoomable {
  overflow: visible
}

.fancybox__slide.has-error {
  --f-html-color: var(--f-error-color, --f-html-color);
  --f-html-bg   : var(--f-error-bg, --f-html-bg)
}

.fancybox__slide.has-html {
  overflow: auto;
  padding : 8px
}

.fancybox__slide.has-close-btn {
  padding-top: 34px
}

.fancybox__slide.has-controls:before {
  margin: 0
}

.fancybox__slide .f-spinner {
  cursor: pointer
}

.fancybox__container.is-closing .f-caption,
.fancybox__slide.is-loading .f-caption {
  visibility: hidden
}

.fancybox__container.is-closing .fancybox__carousel {
  overflow: visible
}

.f-button.is-close-button {
  --f-button-width           : var(--f-close-button-width);
  --f-button-height          : var(--f-close-button-height);
  --f-button-border-radius   : var(--f-close-border-radius);
  --f-button-color           : var(--f-close-button-color);
  --f-button-hover-color     : var(--f-close-button-hover-color);
  --f-button-bg              : var(--f-close-button-bg);
  --f-button-hover-bg        : var(--f-close-button-hover-bg);
  --f-button-active-bg       : var(--f-close-button-active-bg);
  --f-button-svg-width       : var(--f-close-button-svg-width);
  --f-button-svg-height      : var(--f-close-button-svg-height);
  --f-button-svg-stroke-width: var(--f-close-button-svg-stroke-width);
  position                   : absolute;
  top                        : calc((var(--f-button-height) + 2px) * -1);
  right                      : 0;
  z-index                    : 10
}

.fancybox__thumbs {
  flex: 0 1 100%
}

.fancybox__thumbs.is-scrollable {
  --f-thumbs-cols              : 1;
  --f-thumbs-gap               : 8px;
  --f-thumbs-transition        : none;
  --f-thumbs-padding-x         : 4px;
  --f-thumbs-padding-y         : 8px;
  --f-thumbs-viewport-padding-x: 4px;
  --f-thumbs-viewport-padding-y: 0px;
  max-width                    : calc(var(--f-thumb-width) * var(--f-thumbs-cols) + var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1) + var(--f-thumbs-padding-x) * 2 + var(--f-thumbs-viewport-padding-x) * 2)
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar {
  width: var(--f-scrollbar-width)
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-track {
  background   : var(--f-scrollbar-track-bg);
  border-radius: var(--f-scrollbar-track-border-radius);
  box-shadow   : var(--f-scrollbar-track-shadow)
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-thumb {
  background   : var(--f-scrollbar-thumb-bg);
  border-radius: var(--f-scrollbar-thumb-border-radius)
}

.fancybox__thumbs.is-scrollable.is-hidden {
  max-width           : 0;
  --f-thumbs-padding-x: 0;
  max-height          : unset;
  --f-thumbs-padding-y: unset
}

.fancybox__thumbs.is-scrollable .f-thumbs__viewport {
  overflow-x           : hidden !important;
  grid-template-columns: repeat(auto-fill, calc((100% - var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1)) / var(--f-thumbs-cols))) !important
}