/* PhotoSwipe only: reuse the approved gallery caption typography and frame. */
body:has(.sm-pswp.pswp--open) { overflow-y: hidden; }
.sm-pswp.pswp {
	--pswp-root-z-index: 1000001;
	--pswp-bg: #071f34;
	--pswp-placeholder-bg: transparent;
	--sm-zoom-top: 88px;
	--sm-zoom-side: 96px;
	--sm-zoom-bottom: 136px;
}
.sm-pswp .pswp__bg { background: radial-gradient(ellipse at 50% 40%, #12344c 0%, #071f34 75%); }
/* The image may pan/zoom, but never covers titles or controls. */
.sm-pswp .pswp__item { clip-path: inset(var(--sm-zoom-top) var(--sm-zoom-side) var(--sm-zoom-bottom)); }
.sm-pswp .pswp__img { border: 0; border-radius: 0; box-shadow: none; }
.sm-pswp .pswp__top-bar { height: 88px; background: none; }
.sm-pswp button.pswp__button {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	min-width: 44px;
	min-height: 44px;
	margin: 0;
	padding: 10px !important;
	border: 1px solid rgba(255,255,255,.35) !important;
	border-radius: 0 !important;
	background: rgba(7,31,52,.35) !important;
	color: #fff !important;
	opacity: 1;
	box-shadow: none;
	transform: none;
}
.sm-pswp button.pswp__button:hover { border-color: #fff !important; background: var(--sm-color-blue) !important; }
.sm-pswp button.pswp__button:focus-visible { outline: 3px solid var(--sm-color-gold); outline-offset: 4px; }
.sm-pswp button.pswp__button .pswp__icn { position: static; width: 22px; height: 22px; margin: 0; transform: none; fill: none; color: #fff; stroke: currentColor; }
.sm-pswp.pswp--zoomed-in .sm-zoom-plus { display: none; }
.sm-pswp button.pswp__button--close { top: 24px; right: 24px; }
.sm-pswp button.pswp__button--zoom { top: 24px; right: 80px; }
.sm-pswp button.pswp__button--arrow { top: 50%; bottom: auto; transform: translateY(-50%); visibility: visible; }
.sm-pswp.pswp--one-slide button.pswp__button--arrow,
.sm-pswp button.pswp__button:disabled { display: none; }
.sm-pswp button.pswp__button--arrow--prev { left: 24px; }
.sm-pswp button.pswp__button--arrow--next { right: 24px; }
.sm-pswp .pswp__preloader { position: absolute; top: 24px; right: 140px; left: auto; }
.sm-pswp .sm-gallery-lightbox__heading { right: 156px; }
.sm-pswp .sm-gallery-lightbox__heading,
.sm-pswp .sm-gallery-lightbox__footer { z-index: 10; }
@media (max-width: 959.98px) {
	.sm-pswp.pswp { --sm-zoom-top: 84px; --sm-zoom-side: 8px; --sm-zoom-bottom: 190px; }
	.sm-pswp .sm-gallery-lightbox__heading { right: 132px; }
	.sm-pswp button.pswp__button--close { top: 16px; right: 20px; }
	.sm-pswp button.pswp__button--zoom { top: 16px; right: 76px; }
	.sm-pswp button.pswp__button--arrow { top: auto; bottom: max(20px, env(safe-area-inset-bottom)); transform: none; }
	.sm-pswp button.pswp__button--arrow--prev { left: 20px; }
	.sm-pswp button.pswp__button--arrow--next { right: 20px; }
	.sm-pswp .pswp__preloader { top: 64px; right: 20px; }
}
@media (max-height: 540px) and (min-width: 600px) {
	.sm-pswp.pswp { --sm-zoom-top: 60px; --sm-zoom-side: 80px; --sm-zoom-bottom: 84px; }
	.sm-pswp .sm-gallery-lightbox__heading { right: 140px; }
	.sm-pswp button.pswp__button--close { top: 12px; right: 16px; }
	.sm-pswp button.pswp__button--zoom { top: 12px; right: 72px; }
	.sm-pswp button.pswp__button--arrow { top: 50%; bottom: auto; transform: translateY(-50%); }
	.sm-pswp button.pswp__button--arrow--prev { left: 16px; }
	.sm-pswp button.pswp__button--arrow--next { right: 16px; }
	.sm-pswp .pswp__preloader { top: 12px; right: 128px; }
}
@media (prefers-reduced-motion: reduce) {
	.sm-pswp, .sm-pswp * { transition-duration: 0s !important; animation-duration: 0s !important; }
}
