.coblocks-lightbox {
	align-items: center;
	background: rgba(0, 0, 0, 0);
	display: none;
	height: 100%;
	justify-content: center;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 9999;

	.admin-bar & {
		top: 32px;

		@media (max-width: 782px) {
			top: 46px;
		}
	}
}

.coblocks-lightbox__background {
	background-repeat: no-repeat;
	background-size: cover;
	bottom: -10em;
	filter: blur(25px) saturate(175%) brightness(90%);
	left: -10em;
	position: absolute;
	right: -10em;
	top: -10em;
}

.coblocks-lightbox__heading {
	align-items: center;
	color: $white;
	display: flex;
	font-family: $default-font;
	font-size: 0.5em;
	justify-content: space-between;
	left: 3%;
	position: absolute;
	right: 3%;
	top: 1em;

	@include break-small() {
		top: 2em;
	}
}

.coblocks-lightbox__image {
	z-index: 2;

	img {
		display: flex;
		margin: auto;
		max-height: 70vh;
		max-width: 70vw;

		@include break-large() {
			max-height: 80vh;
			max-width: 80vw;
		}
	}
}

.coblocks-lightbox__arrow {
	align-items: center;
	background-color: transparent;
	border-radius: 100%;
	color: $white;
	cursor: pointer;
	display: flex;
	height: auto;
	margin: 0 1%;
	padding: 15px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: 250ms background-color linear;
	z-index: 3;

	&:hover {
		background-color: rgba(255, 255, 255, 0.15);
	}

	&:focus {
		background-color: rgba(255, 255, 255, 0.25);
		box-shadow: inset 0 0 0 3px rgba(255, 255, 255, 0.25);
		outline: none;
	}

	@include break-small() {
		background-color: rgba(255, 255, 255, 0.15);
		margin: 0 2%;

		&:hover {
			background-color: rgba(255, 255, 255, 0.25);
		}
	}

	> div {
		background-color: $white;
		height: 28px;
		position: relative;
		width: 28px;

		@include break-large() {
			height: 32px;
			width: 32px;
		}
	}

	.arrow-left {
		left: -1px;
		mask-image: url(/assets/lightbox/arrow-left.svg);
	}

	.arrow-right {
		mask-image: url(/assets/lightbox/arrow-right.svg);
		right: -1px;
	}
}

.coblocks-lightbox__arrow--left {
	left: 0;
	right: auto;
}

.coblocks-lightbox__close {
	background-color: $white;
	background-repeat: no-repeat;
	cursor: pointer;
	height: 26px;
	mask-image: url(/assets/lightbox/close.svg);
	mask-size: contain;
	padding: 7px;
	transition: transform 0.15s linear;
	width: 26px;

	@include break-large() {
		height: 32px;
		width: 32px;
	}

	&:hover {
		background-color: $white;
		transform: scale(1.125);
	}

	&:focus {
		background-color: $white;
		transform: scale(1.125);
	}
}

.coblocks-lightbox__caption {
	color: $white;
	margin-top: 10px;
	text-align: center;
}

.has-lightbox > :not(.carousel-nav) {

	figure:hover {
		cursor: zoom-in;
	}
}

.has-lightbox {

	figure[class^="align"]:hover {
		cursor: zoom-in;
	}
}

figure.has-lightbox:hover {
	cursor: zoom-in;
}

figure.has-lightbox.masonry-grid {
	cursor: default;

	figure.masonry-brick:hover {
		cursor: zoom-in;
	}
}
