/*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */.pswp {  --pswp-bg: #000;  --pswp-placeholder-bg: #222;    --pswp-root-z-index: 100000;    --pswp-preloader-color: rgba(79, 79, 79, 0.4);  --pswp-preloader-color-secondary: rgba(255, 255, 255, 0.9);    /* defined via js:  --pswp-transition-duration: 333ms; */    --pswp-icon-color: #fff;  --pswp-icon-color-secondary: #4f4f4f;  --pswp-icon-stroke-color: #4f4f4f;  --pswp-icon-stroke-width: 2px;  --pswp-error-text-color: var(--pswp-icon-color);}/*	Styles for basic PhotoSwipe (pswp) functionality (sliding area, open/close transitions)*/.pswp {	position: fixed;	top: 0;	left: 0;	width: 100%;	height: 100%;	z-index: var(--pswp-root-z-index);	display: none;	touch-action: none;	outline: 0;	opacity: 0.003;	contain: layout style size;	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}/* Prevents focus outline on the root element,  (it may be focused initially) */.pswp:focus {  outline: 0;}.pswp * {  box-sizing: border-box;}.pswp img {  max-width: none;}.pswp--open {	display: block;}.pswp,.pswp__bg {	transform: translateZ(0);	will-change: opacity;}.pswp__bg {  opacity: 0.005;	background: var(--pswp-bg);}.pswp,.pswp__scroll-wrap {	overflow: hidden;}.pswp__scroll-wrap,.pswp__bg,.pswp__container,.pswp__item,.pswp__content,.pswp__img,.pswp__zoom-wrap {	position: absolute;	top: 0;	left: 0;	width: 100%;	height: 100%;}.pswp__img,.pswp__zoom-wrap {	width: auto;	height: auto;}.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img {	cursor: -webkit-zoom-in;	cursor: -moz-zoom-in;	cursor: zoom-in;}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img {	cursor: move;	cursor: -webkit-grab;	cursor: -moz-grab;	cursor: grab;}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active {  cursor: -webkit-grabbing;  cursor: -moz-grabbing;  cursor: grabbing;}/* :active to override grabbing cursor */.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,.pswp__img {	cursor: -webkit-zoom-out;	cursor: -moz-zoom-out;	cursor: zoom-out;}/* Prevent selection and tap highlights */.pswp__container,.pswp__img,.pswp__button,.pswp__counter {	-webkit-user-select: none;	-moz-user-select: none;	-ms-user-select: none;	user-select: none;}.pswp__item {	/* z-index for fade transition */	z-index: 1;	overflow: hidden;}.pswp__hidden {	display: none !important;}/* Allow to click through pswp__content element, but not its children */.pswp__content {  pointer-events: none;}.pswp__content > * {  pointer-events: auto;}/*  PhotoSwipe UI*//*	Error message appears when image is not loaded	(JS option errorMsg controls markup)*/.pswp__error-msg-container {  display: grid;}.pswp__error-msg {	margin: auto;	font-size: 1em;	line-height: 1;	color: var(--pswp-error-text-color);}/*class pswp__hide-on-close is applied to elements thatshould hide (for example fade out) when PhotoSwipe is closedand show (for example fade in) when PhotoSwipe is opened */.pswp .pswp__hide-on-close {	opacity: 0.005;	will-change: opacity;	transition: opacity var(--pswp-transition-duration) cubic-bezier(0.4, 0, 0.22, 1);	z-index: 10; /* always overlap slide content */	pointer-events: none; /* hidden elements should not be clickable */}/* class pswp--ui-visible is added when opening or closing transition starts */.pswp--ui-visible .pswp__hide-on-close {	opacity: 1;	pointer-events: auto;}/* <button> styles, including css reset */.pswp__button {	position: relative;	display: block;	width: 50px;	height: 60px;	padding: 0;	margin: 0;	overflow: hidden;	cursor: pointer;	background: none;	border: 0;	box-shadow: none;	opacity: 0.85;	-webkit-appearance: none;	-webkit-touch-callout: none;}.pswp__button:hover,.pswp__button:active,.pswp__button:focus {  transition: none;  padding: 0;  background: none;  border: 0;  box-shadow: none;  opacity: 1;}.pswp__button:disabled {  opacity: 0.3;  cursor: auto;}.pswp__icn {  fill: var(--pswp-icon-color);  color: var(--pswp-icon-color-secondary);}.pswp__icn {  position: absolute;  top: 14px;  left: 9px;  width: 32px;  height: 32px;  overflow: hidden;  pointer-events: none;}.pswp__icn-shadow {  stroke: var(--pswp-icon-stroke-color);  stroke-width: var(--pswp-icon-stroke-width);  fill: none;}.pswp__icn:focus {	outline: 0;}/*	div element that matches size of large image,	large image loads on top of it,	used when msrc is not provided*/div.pswp__img--placeholder,.pswp__img--with-bg {	background: var(--pswp-placeholder-bg);}.pswp__top-bar {	position: absolute;	left: 0;	top: 0;	width: 100%;	height: 60px;	display: flex;  flex-direction: row;  justify-content: flex-end;	z-index: 10;	/* allow events to pass through top bar itself */	pointer-events: none !important;}.pswp__top-bar > * {  pointer-events: auto;  /* this makes transition significantly more smooth,     even though inner elements are not animated */  will-change: opacity;}/*  Close button*/.pswp__button--close {  margin-right: 6px;}/*  Arrow buttons*/.pswp__button--arrow {  position: absolute;  top: 0;  width: 75px;  height: 100px;  top: 50%;  margin-top: -50px;}.pswp__button--arrow:disabled {  display: none;  cursor: default;}.pswp__button--arrow .pswp__icn {  top: 50%;  margin-top: -30px;  width: 60px;  height: 60px;  background: none;  border-radius: 0;}.pswp--one-slide .pswp__button--arrow {  display: none;}/* hide arrows on touch screens */.pswp--touch .pswp__button--arrow {  visibility: hidden;}/* show arrows only after mouse was used */.pswp--has_mouse .pswp__button--arrow {  visibility: visible;}.pswp__button--arrow--prev {  right: auto;  left: 0px;}.pswp__button--arrow--next {  right: 0px;}.pswp__button--arrow--next .pswp__icn {  left: auto;  right: 14px;  /* flip horizontally */  transform: scale(-1, 1);}/*  Zoom button*/.pswp__button--zoom {  display: none;}.pswp--zoom-allowed .pswp__button--zoom {  display: block;}/* "+" => "-" */.pswp--zoomed-in .pswp__zoom-icn-bar-v {  display: none;}/*  Loading indicator*/.pswp__preloader {  position: relative;  overflow: hidden;  width: 50px;  height: 60px;  margin-right: auto;}.pswp__preloader .pswp__icn {  opacity: 0;  transition: opacity 0.2s linear;  animation: pswp-clockwise 600ms linear infinite;}.pswp__preloader--active .pswp__icn {  opacity: 0.85;}@keyframes pswp-clockwise {  0% { transform: rotate(0deg); }  100% { transform: rotate(360deg); }}/*  "1 of 10" counter*/.pswp__counter {  height: 30px;  margin-top: 15px;  margin-inline-start: 20px;  font-size: 14px;  line-height: 30px;  color: var(--pswp-icon-color);  text-shadow: 1px 1px 3px var(--pswp-icon-color-secondary);  opacity: 0.85;}.pswp--one-slide .pswp__counter {  display: none;}