/*
 * slider-lightbox.css
 * Slider genérico (galeria content_section) e lightbox.
 */

.jrx-slider {
	position: relative;
	overflow: hidden;
	border-radius: var(--jrx-radius-lg);
	width: 100%;
	max-width: 1920px;
	margin-inline: auto;
}
.jrx-slider__track {
	display: flex;
	width: 100%;
}
.jrx-slider__slide {
	flex: 0 0 auto;
	position: relative;
	min-height: var(--jrx-slider-image-h, 420px);
	display: flex;
	align-items: center;
	color: #ffffff;
	overflow: hidden;
}
.jrx-slider__slide img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}
.jrx-slider__image-link {
	position: absolute;
	inset: 0;
	display: block;
}
.jrx-slider__nav {
	position: absolute;
	inset: auto 0 1rem 0;
	display: flex;
	justify-content: center;
	gap: 0.5rem;
	z-index: 3;
}
.jrx-slider__dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	border: none;
	background: color-mix(in srgb, #ffffff 40%, transparent);
	cursor: pointer;
	padding: 0;
	transition: background var(--jrx-transition);
}
.jrx-slider__dot.is-active,
.jrx-slider__dot:hover { background: #ffffff; }

.jrx-slider__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%) !important;
	z-index: 3;
}
.jrx-slider__arrow:hover { transform: translateY(-50%) !important; }
.jrx-slider__arrow:focus-visible {
	transform: translateY(-50%) !important;
}
.jrx-slider__arrow:active {
	transform: translateY(-50%) !important;
}
.jrx-slider__arrow--prev { left: 1rem; }
.jrx-slider__arrow--next { right: 1rem; }
.jrx-slider--no-radius {
	border-radius: 0;
}

.jrx-lightbox {
	position: fixed;
	inset: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.88);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: clamp(1rem, 4vw, 2rem);
}
.jrx-lightbox[hidden] {
	display: none;
}
.jrx-lightbox__content {
	max-width: min(1200px, 92vw);
	max-height: 92vh;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	align-items: center;
}
.jrx-lightbox__image {
	max-width: 100%;
	max-height: calc(92vh - 60px);
	border-radius: var(--jrx-radius-md);
	object-fit: contain;
}
.jrx-lightbox__caption {
	color: #fff;
	text-align: center;
	margin: 0;
}
.jrx-lightbox__close {
	position: absolute;
	top: 0.75rem;
	right: 0.75rem;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.15);
	color: #fff;
	font-size: 1.4rem;
	line-height: 1;
	cursor: pointer;
}
.jrx-lightbox__prev,
.jrx-lightbox__next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.15);
	color: #fff;
	font-size: 1.2rem;
	line-height: 1;
	cursor: pointer;
}
.jrx-lightbox__prev { left: 0.75rem; }
.jrx-lightbox__next { right: 0.75rem; }
