body.single-zoomer {
	padding-right: 0 !important;
}
body.single-zoomer.post > main .container {
	width: 100% !important;
	max-width: none !important;
}
.zoomer {
	position: relative;
	width:100%;
    min-height:500px;
    max-height:100vh;
    max-height:100dvh;
    margin: 0 auto;
    box-sizing: border-box;
	overflow: hidden;
}
.zoomer .row {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	height: 100%;
	align-items: flex-start;
}
.zoomer .pz-container {
	padding: 0;
	height: 100%;
	position: relative;
	flex: 0 0 auto;
	width: 66.66666667%;
	max-width: 100%;
}
.zoomer.shortcode .pz-container, .zoomer.shortcode .scroll-container {
	width:50% !important;
}
.zoomer .pz-container .panzoom-area {
	width:100%;
	height:100%;
	cursor: pointer;
	background-color: transparent;
}
.zoomer .pz-container .panzoom-area .hotspot {
	display: block;
	width:50px;
	height: 50px;
	background-image: url(icons/plus.svg);
	background-size:40%;
	background-repeat: no-repeat;
	background-position: center;
	border:3px solid #fff;
	border-radius: 50%;
	transition: transform .3s;
}
.zoomer .pz-container .panzoom-area .hotspot:focus-visible,
.zoomer .pz-container .panzoom-area .hotspot.icon:focus-visible,
.zoomer .panzoom-area .navigator:focus-visible,
.swiper:focus-visible {
	border: 4px solid blueviolet !important;
}
.zoomer .pz-container .panzoom-area .hotspot.icon {
	width: auto;
	height: auto;
	max-width:90px !important;
	max-height: 90px;
	aspect-ratio: 1;
	background-size:100%;
	border:none;
}

.zoomer .pz-container .panzoom-area .hotspot:hover {
	transform: rotate(90deg);
}
.zoomer .pz-container .panzoom-area .hotspot.icon:hover {
	transform: scale(1.2);
}

/*.zoomer .pz-container .panzoom-area .displayregion {
	border:2px solid #fff !important;
}*/
.zoomer .scroll-container {
	padding:0;
	flex: 0 0 auto;
	width: 33.33333333%;
	max-width: 100%;
	height: 100%;
	overflow: hidden;
}
.zoomer #fullscreen-btn {
	position: absolute;
	top:10px;
	right: 20px;
	z-index: 100;
	display: none;
}
.zoomer .scroll-container .swiper {
	height: 100%;
}
.zoomer.fullscreen .scroll-container .swiper {
	background-color: #fff;
}
.zoomer .scroll-container .swiper .swiper-wrapper {
	padding: 0 1rem;
	box-sizing: border-box;
}
.zoomer .scroll-container .swiper .swiper-pagination {
	right:4px;
	left:auto !important;
}
.zoomer .scroll-container .swiper .swiper-pagination .swiper-pagination-progressbar-fill {
  background-color: #244752 !important;
}
.zoomer .scroll-container .swiper .swiper-slide.type-zoomer {
	height: 0 !important;
}
.zoomer .scroll-container .swiper .swiper-slide .swiper-content {
	margin:0 2rem;
}
.zoomer .scroll-container .swiper .swiper-slide.type-zoomer .swiper-content {
	margin: 0;
}

.zoomer .scroll-container .swiper .scroller-help {
	position: absolute;
	bottom:0;
	left:0;
	width:100%;
	height:100px;
	text-align: center;
}
.zoomer .scroll-container .swiper .scroller-help .arrow-down {
	width:21px;
	height: 15px;
	margin:0 auto;
	animation: zoomer-bounce 1.5s ease-out infinite forwards;
}
.zoomer .scroll-container .swiper .scroller-help.sticky {
	background-color: #fff;
	z-index: 100;
}
.zoomer-iframe {
	position: absolute;
	left:0;
	top:0;
	width:100%;
	z-index:300;
	opacity: 0;
}
.zoomer .back-nav-button-container {
	position: absolute;
	display: flex;
	justify-content: center;
	top:0;
	left:0;
	width:100%;
	pointer-events: none;
	z-index:400;
}
.zoomer .back-nav-button-container .back-nav-button {
	display: inline-block;
	background-color: #fff;
	color: #000;
	margin: 10px auto;
	padding: 15px 20px;
	border: 1px solid black;
	pointer-events: auto;
}

@media only screen and (max-width: 1024px) {
	body.single-zoomer .page-content .container {
		padding: 0 !important;
	}

	.zoomer .pz-container .panzoom-area .hotspot {
		width:30px;
		height: 30px;
		border:2px solid #fff;
	}
	.zoomer .pz-container {width:100vw; height:40vh; height:40dvh;}
 	.zoomer .scroll-container {width:100vw; height:60vh; height:60dvh;}
	.zoomer .swiper {margin-top:5px;}
	.zoomer .scroller-help {
		display: none;
	}
	.zoomer .pz-container .panzoom-area .hotspot.icon {
		max-width:50px !important;
		max-height: 50px;
	}
	.zoomer.loading::before {
		font-size: 48px;
	}
}

@keyframes fade {
	0% {background-color: rgba(0,0,0,0);}
	100% {background-color: rgba(0,0,0,.3);}
}
@keyframes loading {
	0% {transform:scaleY(1);}
	25% {transform: scaleY(0.6);}
	50% {transform: scaleY(1);}
}
@keyframes zoomer-bounce {
	0% {transform: translateY(0);}
	50% {transform: translateY(10px);}
	100% {transform: translateY(0);}
}

/* Loading overlay styles */
.zoomer.loading::before {
	content: 'Laddar Zoomer ...';
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	background-color: #fcf4e8 !important;
	z-index: 9999 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	font-weight: bold;
	color: #333;
	pointer-events: none;
}

.zoomer.loading {
	pointer-events: none;
	opacity: 1 !important;
}

.zoomer .wp-video {
	width: 100% !important;
}
.zoomer .wp-video-shortcode {
	width: 100%;
	height: 100%;
}