/* Mercadologia Galerias JetEngine — Slider
 *
 * Convenção: propriedades leem var(--mjg-x, var(--mjg-x-d)). As variáveis sem "-d"
 * vêm dos controles do Elementor; as com "-d" são padrões deste arquivo (por estilo e
 * por contexto: sobre a foto ou fora dela). Assim o que você define no painel sempre vence.
 */

.mjg-slider {
	--mjg-nav-size-d: 46px;
	--mjg-nav-icon-d: 18px;
	--mjg-arrow-offset-d: 16px;
	--mjg-ctrl-offset-d: 18px;
	--mjg-frame-pad-d: 26px;
	/* fora das fotos (fundo da página) */
	--mjg-pag-color-d: rgba(17, 17, 17, .18);
	--mjg-pag-active-d: #111;
	position: relative;
	width: 100%;
	min-width: 0;
}

@media (max-width: 767px) {
	.mjg-slider {
		--mjg-nav-size-d: 40px;
		--mjg-nav-icon-d: 16px;
		--mjg-arrow-offset-d: 10px;
		--mjg-ctrl-offset-d: 12px;
		--mjg-frame-pad-d: 18px;
	}
}

.mjg-slider__stage { position: relative; }

/* =========================================================================
 * Base mínima do Swiper (vale mesmo se o CSS do Swiper não carregar)
 * ====================================================================== */
.mjg-slider .swiper { position: relative; overflow: hidden; z-index: 1; margin: 0; padding: 0; list-style: none; }
.mjg-slider .swiper-wrapper { position: relative; z-index: 1; display: flex; width: 100%; height: 100%; box-sizing: content-box; transition-property: transform; }
.mjg-slider .swiper-slide { position: relative; flex-shrink: 0; width: 100%; height: 100%; transition-property: transform; }
.mjg-slider .swiper-wrapper { align-items: flex-start; }
.mjg-slider .swiper-fade .swiper-slide { pointer-events: none; transition-property: opacity; }
.mjg-slider .swiper-fade .swiper-slide-active { pointer-events: auto; }
.mjg-slider .swiper-3d { perspective: 1200px; }
.mjg-slider .swiper-3d .swiper-wrapper,
.mjg-slider .swiper-3d .swiper-slide { transform-style: preserve-3d; }
.mjg-slider .swiper-cards { overflow: visible; }
.mjg-slider .swiper-cards .swiper-slide { transform-origin: center bottom; backface-visibility: hidden; }
.mjg-slider .swiper-free-mode > .swiper-wrapper { margin: 0 auto; transition-timing-function: ease-out; }
.mjg-slider .swiper-auto-height .swiper-wrapper { transition-property: transform, height; }

/* Antes de iniciar: já desenha as larguras certas (evita "pulo") */
.mjg-size-per-view:not(.mjg-ready) .mjg-slider__main .swiper-slide {
	width: calc((100% - (var(--mjg-spv, 1) - 1) * var(--mjg-space, 0px)) / var(--mjg-spv, 1));
	margin-right: var(--mjg-space, 0px);
}
.mjg-slider:not(.mjg-ready) .mjg-thumbs-per-view .swiper-slide {
	width: calc((100% - (var(--mjg-tpv, 6) - 1) * var(--mjg-tspace, 10px)) / var(--mjg-tpv, 6));
	margin-right: var(--mjg-tspace, 10px);
}
.mjg-size-auto:not(.mjg-ready) .mjg-slider__main .swiper-slide { margin-right: var(--mjg-space, 0px); }

/* =========================================================================
 * Slides
 * ====================================================================== */
.mjg-slide__inner {
	position: relative;
	display: block;
	color: inherit;
	text-decoration: none;
	-webkit-tap-highlight-color: transparent;
}

.mjg-slide__media { position: relative; overflow: hidden; }
.mjg-slide__box { position: relative; }
.mjg-slide__box::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	border-radius: inherit;
}

.mjg-slide__media img {
	display: block;
	max-width: none;
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

/* Quantidade por vez */
.mjg-h-height .mjg-slide__media { height: var(--mjg-h, 560px); }
.mjg-h-ratio .mjg-slide__media { aspect-ratio: var(--mjg-ratio, 16/9); }
.mjg-slider:not(.mjg-has-frame).mjg-h-height .mjg-slide__media img,
.mjg-slider:not(.mjg-has-frame).mjg-h-ratio .mjg-slide__media img {
	width: 100%;
	height: 100%;
	object-fit: var(--mjg-fit, cover);
	object-position: var(--mjg-pos, center center);
}
.mjg-h-auto .mjg-slide__media img { width: 100%; height: auto; }

/* Pela altura (largura natural) */
.mjg-size-auto .mjg-slider__main .swiper-slide { width: auto; }
.mjg-size-auto .mjg-slide__media { height: var(--mjg-slide-h, 560px); }
.mjg-size-auto .mjg-slide__media img {
	width: auto;
	height: 100%;
	max-width: 86vw;
	object-fit: cover;
}

/* Cartas empilhadas */
.mjg-effect-cards .mjg-slider__stage { overflow-x: clip; padding: 0 28px; }
.mjg-effect-cards .mjg-slider__main {
	width: var(--mjg-cards-w, 320px);
	max-width: 100%;
	margin: 0 auto;
}

/* =========================================================================
 * Moldura (celular / cantos arredondados)
 * ====================================================================== */
.mjg-frame-phone { --mjg-frame-w-d: 10px; --mjg-frame-r-d: 42px; --mjg-frame-color-d: #111; }
.mjg-frame-phone-light { --mjg-frame-w-d: 10px; --mjg-frame-r-d: 42px; --mjg-frame-color-d: #e8eaee; }
.mjg-frame-rounded { --mjg-frame-w-d: 0px; --mjg-frame-r-d: 18px; --mjg-frame-color-d: transparent; }

@media (max-width: 767px) {
	.mjg-frame-phone, .mjg-frame-phone-light { --mjg-frame-w-d: 7px; --mjg-frame-r-d: 30px; }
}

.mjg-has-frame .mjg-slider__main {
	padding-top: var(--mjg-frame-pad, var(--mjg-frame-pad-d));
	padding-bottom: var(--mjg-frame-pad, var(--mjg-frame-pad-d));
}

.mjg-has-frame .mjg-slide__media {
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: visible;
}

.mjg-slider .mjg-slide__frame {
	position: relative;
	box-sizing: border-box;
	height: 100%;
	max-width: 100%;
	overflow: hidden;
	border: var(--mjg-frame-w, var(--mjg-frame-w-d)) solid var(--mjg-frame-color, var(--mjg-frame-color-d));
	border-radius: var(--mjg-frame-r, var(--mjg-frame-r-d));
	background: var(--mjg-frame-color, var(--mjg-frame-color-d));
	box-shadow: 0 22px 44px -18px rgba(0, 0, 0, .38), 0 4px 12px rgba(0, 0, 0, .08);
	transform: translateZ(0);
}

.mjg-has-frame .mjg-slide__frame img {
	width: auto;
	height: 100%;
	max-width: 100%;
	object-fit: cover;
	object-position: center top;
}

.mjg-has-frame.mjg-h-auto .mjg-slide__frame { width: 100%; height: auto; }
.mjg-has-frame.mjg-h-auto .mjg-slide__frame img { width: 100%; height: auto; }

.mjg-frame-island .mjg-slide__frame::before {
	content: "";
	position: absolute;
	z-index: 3;
	top: max(6px, 1.7%);
	left: 50%;
	width: 30%;
	max-width: 120px;
	aspect-ratio: 3.3 / 1;
	transform: translateX(-50%);
	border-radius: 999px;
	background: #0a0a0a;
	pointer-events: none;
}

/* =========================================================================
 * Destacar a foto central
 * ====================================================================== */
.mjg-focus .mjg-slide__inner {
	transform: scale(var(--mjg-side-scale, .86));
	opacity: var(--mjg-side-opacity, .55);
	transform-origin: center center;
	transition: transform var(--mjg-speed, 600ms) ease, opacity var(--mjg-speed, 600ms) ease;
}
.mjg-focus .swiper-slide-active .mjg-slide__inner,
.mjg-focus .swiper-slide-duplicate-active .mjg-slide__inner,
.mjg-focus:not(.mjg-ready) .swiper-slide:first-child .mjg-slide__inner { transform: none; opacity: 1; }
.mjg-focus .swiper-slide:not(.swiper-slide-active) .mjg-slide__inner { cursor: pointer; }

/* =========================================================================
 * Ken Burns
 * ====================================================================== */
.mjg-kenburns .mjg-slide__media img {
	transform-origin: center center;
	transition: transform 0s linear var(--mjg-speed, 600ms);
	will-change: transform;
}
.mjg-kenburns-in .mjg-slide__media img { transform: scale(1); }
.mjg-kenburns-in .swiper-slide-active .mjg-slide__media img { transform: scale(var(--mjg-kb-scale, 1.15)); transition: transform var(--mjg-kb-dur, 8s) linear 0s; }
.mjg-kenburns-out .mjg-slide__media img { transform: scale(var(--mjg-kb-scale, 1.15)); }
.mjg-kenburns-out .swiper-slide-active .mjg-slide__media img { transform: scale(1); transition: transform var(--mjg-kb-dur, 8s) linear 0s; }

/* =========================================================================
 * Legendas
 * ====================================================================== */
.mjg-slide__overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	padding: 32px;
	pointer-events: none;
}

@media (max-width: 767px) { .mjg-slide__overlay { padding: 18px; } }

/* Em telas menores, a legenda sobe para não encostar nos controles do mesmo lado */
@media (max-width: 1024px) {
	.mjg-ovl-bottom.mjg-cap-v-bottom .mjg-slide__overlay { padding-bottom: calc(var(--mjg-nav-size, var(--mjg-nav-size-d)) + var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)) + 14px); }
	.mjg-ovl-top.mjg-cap-v-top .mjg-slide__overlay { padding-top: calc(var(--mjg-nav-size, var(--mjg-nav-size-d)) + var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)) + 14px); }
}

.mjg-cap-v-top .mjg-slide__overlay { align-items: flex-start; }
.mjg-cap-v-center .mjg-slide__overlay { align-items: center; }
.mjg-cap-v-bottom .mjg-slide__overlay { align-items: flex-end; }
.mjg-cap-h-left .mjg-slide__overlay { justify-content: flex-start; text-align: left; }
.mjg-cap-h-center .mjg-slide__overlay { justify-content: center; text-align: center; }
.mjg-cap-h-right .mjg-slide__overlay { justify-content: flex-end; text-align: right; }

.mjg-cap-shade.mjg-cap-v-bottom .mjg-slide__overlay { background: linear-gradient(to top, rgba(0, 0, 0, .55), rgba(0, 0, 0, 0) 62%); }
.mjg-cap-shade.mjg-cap-v-top .mjg-slide__overlay { background: linear-gradient(to bottom, rgba(0, 0, 0, .55), rgba(0, 0, 0, 0) 62%); }
.mjg-cap-shade.mjg-cap-v-center .mjg-slide__overlay { background: rgba(0, 0, 0, .3); }

.mjg-slide__caption {
	display: flex;
	flex-direction: column;
	gap: 6px;
	max-width: 680px;
}

.mjg-cap-overlay .mjg-slide__caption { color: #fff; text-shadow: 0 1px 14px rgba(0, 0, 0, .3); }
.mjg-cap-overlay .mjg-caption__main { font-size: 1.5em; font-weight: 700; line-height: 1.2; }
.mjg-cap-overlay .mjg-caption__sub { font-size: 1em; line-height: 1.45; opacity: .9; }

.mjg-slide__below { width: 0; min-width: 100%; padding-top: 14px; text-align: center; }
.mjg-cap-below .mjg-slide__caption { max-width: none; gap: 3px; }
.mjg-cap-below .mjg-caption__main { font-weight: 600; line-height: 1.3; }
.mjg-cap-below .mjg-caption__sub { font-size: .9em; line-height: 1.4; opacity: .7; }

.mjg-cap-overlay.mjg-cap-anim-fade .mjg-slide__caption,
.mjg-cap-overlay.mjg-cap-anim-fade-up .mjg-slide__caption { opacity: 0; transition: opacity .6s ease .2s, transform .6s ease .2s; }
.mjg-cap-overlay.mjg-cap-anim-fade-up .mjg-slide__caption { transform: translateY(18px); }
.mjg-cap-overlay .swiper-slide-active .mjg-slide__caption,
.mjg-cap-overlay .swiper-slide-duplicate-active .mjg-slide__caption,
.mjg-cap-overlay.mjg-slider:not(.mjg-ready) .swiper-slide:first-child .mjg-slide__caption { opacity: 1; transform: none; }

/* =========================================================================
 * Botões (setas e pausar). Seletor com classe dupla para vencer o estilo
 * global de botões do Kit do Elementor/tema.
 * ====================================================================== */
.mjg-slider .mjg-nav.mjg-nav {
	display: var(--mjg-nav-display, inline-flex);
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: var(--mjg-nav-size, var(--mjg-nav-size-d));
	height: var(--mjg-nav-size, var(--mjg-nav-size-d));
	min-width: 0;
	min-height: 0;
	margin: 0;
	padding: 0;
	border-style: solid;
	border-width: var(--mjg-nav-bw, var(--mjg-nav-bw-d, 0px));
	border-color: var(--mjg-nav-border, var(--mjg-nav-border-d, transparent));
	border-radius: var(--mjg-nav-radius, var(--mjg-nav-radius-d, 50%));
	background: var(--mjg-nav-bg, var(--mjg-nav-bg-d, #111));
	color: var(--mjg-nav-color, var(--mjg-nav-color-d, #fff));
	box-shadow: var(--mjg-nav-shadow-d, none);
	-webkit-backdrop-filter: var(--mjg-nav-blur-d, none);
	backdrop-filter: var(--mjg-nav-blur-d, none);
	font: inherit;
	font-size: var(--mjg-nav-icon, var(--mjg-nav-icon-d));
	line-height: 1;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition: background-color .25s ease, color .25s ease, border-color .25s ease, opacity .25s ease, transform .2s ease;
}

.mjg-slider .mjg-nav.mjg-nav:hover,
.mjg-slider .mjg-nav.mjg-nav:focus-visible {
	background: var(--mjg-nav-bg-h, var(--mjg-nav-bg-h-d, var(--mjg-nav-bg, var(--mjg-nav-bg-d, #111))));
	color: var(--mjg-nav-color-h, var(--mjg-nav-color-h-d, var(--mjg-nav-color, var(--mjg-nav-color-d, #fff))));
	border-color: var(--mjg-nav-border-h, var(--mjg-nav-border-h-d, var(--mjg-nav-border, var(--mjg-nav-border-d, transparent))));
}
.mjg-slider .mjg-nav.mjg-nav:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.mjg-slider .mjg-nav.mjg-nav:active { transform: scale(.93); }
.mjg-slider .mjg-nav.mjg-nav.is-disabled { opacity: var(--mjg-nav-disabled, .32); cursor: default; transform: none; }
.mjg-slider .mjg-nav svg,
.mjg-slider .mjg-nav i { display: block; width: 1em; height: 1em; font-size: 1em; line-height: 1; }
.mjg-slider .mjg-nav--toggle .mjg-ico-play { display: none; }
.mjg-stopped .mjg-nav--toggle .mjg-ico-play { display: block; }
.mjg-stopped .mjg-nav--toggle .mjg-ico-pause { display: none; }

/* Estilos (fora das fotos) */
.mjg-nav-style-circle { --mjg-nav-radius-d: 50%; --mjg-nav-bg-d: #111; --mjg-nav-color-d: #fff; --mjg-nav-bg-h-d: #3a3a3a; }
.mjg-nav-style-square { --mjg-nav-radius-d: 0px; --mjg-nav-bg-d: #111; --mjg-nav-color-d: #fff; --mjg-nav-bg-h-d: #3a3a3a; }
.mjg-nav-style-circle-outline { --mjg-nav-radius-d: 50%; --mjg-nav-bg-d: transparent; --mjg-nav-color-d: #111; --mjg-nav-bw-d: 1.5px; --mjg-nav-border-d: rgba(17, 17, 17, .35); --mjg-nav-bg-h-d: #111; --mjg-nav-color-h-d: #fff; --mjg-nav-border-h-d: #111; }
.mjg-nav-style-square-outline { --mjg-nav-radius-d: 0px; --mjg-nav-bg-d: transparent; --mjg-nav-color-d: #111; --mjg-nav-bw-d: 1.5px; --mjg-nav-border-d: rgba(17, 17, 17, .35); --mjg-nav-bg-h-d: #111; --mjg-nav-color-h-d: #fff; --mjg-nav-border-h-d: #111; }
.mjg-nav-style-glass { --mjg-nav-radius-d: 50%; --mjg-nav-bg-d: rgba(17, 17, 17, .06); --mjg-nav-color-d: #111; --mjg-nav-bw-d: 1px; --mjg-nav-border-d: rgba(17, 17, 17, .08); --mjg-nav-bg-h-d: rgba(17, 17, 17, .12); }
.mjg-nav-style-minimal { --mjg-nav-radius-d: 4px; --mjg-nav-bg-d: transparent; --mjg-nav-color-d: #111; --mjg-nav-icon-d: 24px; --mjg-nav-bg-h-d: rgba(17, 17, 17, .06); }

/* Mesmos estilos sobre as fotos (setas laterais internas e cantos sobre a foto) */
.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav,
.mjg-ovl {
	--mjg-pag-color-d: rgba(255, 255, 255, .45);
	--mjg-pag-active-d: #fff;
}
.mjg-nav-style-circle.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav,
.mjg-nav-style-circle .mjg-ovl,
.mjg-nav-style-square.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav,
.mjg-nav-style-square .mjg-ovl { --mjg-nav-bg-d: #fff; --mjg-nav-color-d: #111; --mjg-nav-bg-h-d: #111; --mjg-nav-color-h-d: #fff; --mjg-nav-shadow-d: 0 6px 18px rgba(0, 0, 0, .16); }
.mjg-nav-style-circle-outline.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav,
.mjg-nav-style-circle-outline .mjg-ovl,
.mjg-nav-style-square-outline.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav,
.mjg-nav-style-square-outline .mjg-ovl { --mjg-nav-color-d: #fff; --mjg-nav-border-d: rgba(255, 255, 255, .75); --mjg-nav-bg-h-d: #fff; --mjg-nav-color-h-d: #111; --mjg-nav-border-h-d: #fff; }
.mjg-nav-style-glass.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav,
.mjg-nav-style-glass .mjg-ovl { --mjg-nav-bg-d: rgba(255, 255, 255, .2); --mjg-nav-color-d: #fff; --mjg-nav-border-d: rgba(255, 255, 255, .35); --mjg-nav-bg-h-d: rgba(255, 255, 255, .38); --mjg-nav-blur-d: blur(12px) saturate(1.4); }
.mjg-nav-style-minimal.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav,
.mjg-nav-style-minimal .mjg-ovl { --mjg-nav-color-d: #fff; --mjg-nav-bg-h-d: rgba(255, 255, 255, .15); }
.mjg-nav-style-minimal.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav svg,
.mjg-nav-style-minimal .mjg-ovl .mjg-nav svg { filter: drop-shadow(0 1px 4px rgba(0, 0, 0, .45)); }

/* Setas laterais */
.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav.mjg-nav,
.mjg-nav-sides-outside .mjg-slider__stage > .mjg-nav.mjg-nav {
	position: absolute;
	z-index: 6;
	top: var(--mjg-arrow-top, 50%);
	margin-top: calc(var(--mjg-nav-size, var(--mjg-nav-size-d)) / -2);
}
.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav--prev { left: var(--mjg-arrow-offset, var(--mjg-arrow-offset-d)); }
.mjg-nav-sides-inside .mjg-slider__stage > .mjg-nav--next { right: var(--mjg-arrow-offset, var(--mjg-arrow-offset-d)); }
.mjg-nav-sides-outside .mjg-slider__stage {
	padding-left: calc((var(--mjg-nav-size, var(--mjg-nav-size-d)) + var(--mjg-arrow-offset, var(--mjg-arrow-offset-d))) * var(--mjg-nav-gutter, 1));
	padding-right: calc((var(--mjg-nav-size, var(--mjg-nav-size-d)) + var(--mjg-arrow-offset, var(--mjg-arrow-offset-d))) * var(--mjg-nav-gutter, 1));
}
.mjg-nav-sides-outside .mjg-slider__stage > .mjg-nav--prev { left: 0; }
.mjg-nav-sides-outside .mjg-slider__stage > .mjg-nav--next { right: 0; }

/* Só no hover (em telas com mouse) */
@media (hover: hover) and (pointer: fine) {
	.mjg-nav-hover .mjg-nav.mjg-nav { opacity: 0; }
	.mjg-nav-hover:hover .mjg-nav.mjg-nav,
	.mjg-nav-hover:focus-within .mjg-nav.mjg-nav { opacity: 1; }
	.mjg-nav-hover:hover .mjg-nav.mjg-nav.is-disabled { opacity: var(--mjg-nav-disabled, .32); }
}

/* Grupo de setas */
.mjg-navgroup {
	display: inline-flex;
	align-items: center;
	gap: var(--mjg-nav-gap, 8px);
	min-width: 0;
}
.mjg-navgroup--wrap { gap: var(--mjg-slot-gap, 14px); }
.has-stretch > .mjg-navgroup--wrap { display: flex; flex: 1 1 auto; }
.mjg-navgroup .mjg-fraction { padding: 0 6px; }

/* =========================================================================
 * Cantos sobre as fotos e barras acima/abaixo
 * ====================================================================== */
.mjg-ovl {
	position: absolute;
	z-index: 5;
	display: flex;
	align-items: center;
	gap: var(--mjg-slot-gap, 14px);
	max-width: calc(100% - 2 * var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)));
	pointer-events: none;
}
.mjg-ovl > * { pointer-events: auto; }
.mjg-ovl--top-left, .mjg-ovl--top-center, .mjg-ovl--top-right { top: var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)); }
.mjg-ovl--bottom-left, .mjg-ovl--bottom-center, .mjg-ovl--bottom-right { bottom: var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)); }
.mjg-ovl--top-left, .mjg-ovl--bottom-left { left: var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)); }
.mjg-ovl--top-right, .mjg-ovl--bottom-right { right: var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)); justify-content: flex-end; }
.mjg-ovl--top-center, .mjg-ovl--bottom-center { left: var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)); right: var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)); justify-content: center; }
.mjg-ovl--top-left.has-stretch, .mjg-ovl--top-right.has-stretch,
.mjg-ovl--bottom-left.has-stretch, .mjg-ovl--bottom-right.has-stretch { width: calc(50% - var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d))); }
.mjg-has-frame .mjg-ovl--top-left, .mjg-has-frame .mjg-ovl--top-center, .mjg-has-frame .mjg-ovl--top-right { top: calc(var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)) + var(--mjg-frame-pad, var(--mjg-frame-pad-d))); }
.mjg-has-frame .mjg-ovl--bottom-left, .mjg-has-frame .mjg-ovl--bottom-center, .mjg-has-frame .mjg-ovl--bottom-right { bottom: calc(var(--mjg-ctrl-offset, var(--mjg-ctrl-offset-d)) + var(--mjg-frame-pad, var(--mjg-frame-pad-d))); }

.mjg-bar {
	display: flex;
	align-items: center;
	gap: var(--mjg-slot-gap, 14px);
	min-width: 0;
}
.mjg-bar--below { margin-top: var(--mjg-bar-gap, 20px); }
.mjg-bar--above { margin-bottom: var(--mjg-bar-gap, 20px); }
.mjg-has-frame .mjg-bar--below { margin-top: max(0px, calc(var(--mjg-bar-gap, 20px) - var(--mjg-frame-pad, var(--mjg-frame-pad-d)) / 2)); }

.mjg-slot { display: flex; align-items: center; gap: var(--mjg-slot-gap, 14px); min-width: 0; }
.mjg-slot--left { margin-right: auto; }
.mjg-slot--center { margin-left: auto; margin-right: auto; justify-content: center; }
.mjg-slot--right { margin-left: auto; justify-content: flex-end; }
.mjg-slot.has-stretch { flex: 1 1 auto; }
.mjg-bar--grid { display: grid; grid-template-columns: minmax(max-content, 1fr) auto minmax(max-content, 1fr); }
.mjg-bar--grid .mjg-slot { margin: 0; }
.mjg-bar--grid .mjg-slot--left { grid-column: 1; justify-self: start; }
.mjg-bar--grid .mjg-slot--center { grid-column: 2; }
.mjg-bar--grid .mjg-slot--right { grid-column: 3; justify-self: end; }

.mjg-locked .mjg-nav,
.mjg-locked .mjg-pag,
.mjg-locked .mjg-ovl,
.mjg-locked .mjg-bar { display: none !important; }
.mjg-locked.mjg-nav-sides-outside .mjg-slider__stage { padding-left: 0; padding-right: 0; }

/* =========================================================================
 * Paginação
 * ====================================================================== */
.mjg-slider .mjg-pag {
	display: var(--mjg-pag-display, flex);
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
	background: var(--mjg-pag-bg, transparent);
	border-radius: 999px;
	color: var(--mjg-pag-active, var(--mjg-pag-active-d));
}
.mjg-pag-blur-yes .mjg-slider .mjg-pag { -webkit-backdrop-filter: blur(12px) saturate(1.4); backdrop-filter: blur(12px) saturate(1.4); }
.mjg-slider .mjg-pag--progress,
.mjg-slider .mjg-pag--segments,
.mjg-slider .mjg-pag--scrollbar { flex: 1 1 auto; min-width: var(--mjg-bar-min, 120px); }

@keyframes mjg-fill { from { transform: scaleX(0); } to { transform: scaleX(1); } }

/* ---- Bolinhas ---- */
.mjg-dots { position: relative; overflow: hidden; max-width: 100%; }
.mjg-dots__track { display: flex; align-items: center; transition: transform .4s ease; will-change: transform; }

.mjg-slider .mjg-dots .mjg-dot.mjg-dot {
	position: relative;
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	box-sizing: content-box;
	width: auto;
	height: max(24px, calc(var(--mjg-dot, 8px) + 14px));
	min-width: 0;
	min-height: 0;
	margin: 0;
	padding: 0 calc(var(--mjg-dot-gap, 8px) / 2);
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	color: inherit;
	font: inherit;
	line-height: 1;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition: transform .3s ease, opacity .3s ease;
}
.mjg-slider .mjg-dots .mjg-dot.mjg-dot:hover,
.mjg-slider .mjg-dots .mjg-dot.mjg-dot:focus { background: none; color: inherit; }
.mjg-slider .mjg-dots .mjg-dot.mjg-dot:focus-visible { outline: 2px solid var(--mjg-pag-active, var(--mjg-pag-active-d)); outline-offset: -2px; }

.mjg-dot__fill {
	position: relative;
	display: block;
	width: var(--mjg-dot, 8px);
	height: var(--mjg-dot, 8px);
	overflow: hidden;
	border-radius: 999px;
	background: var(--mjg-pag-color, var(--mjg-pag-color-d));
	transition: width .4s ease, opacity .3s ease, transform .3s ease;
}
.mjg-dot__fill::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: var(--mjg-pag-active, var(--mjg-pag-active-d));
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform .3s ease;
}
.mjg-dot.is-active .mjg-dot__fill::after { transform: scaleX(1); }
.mjg-dot:not(.is-active):hover .mjg-dot__fill { transform: scale(1.25); }

.mjg-dots--pill .mjg-dot.is-active .mjg-dot__fill { width: var(--mjg-dot-active-w, calc(var(--mjg-dot, 8px) * 3.5)); }
.mjg-dots--line .mjg-dot__fill { width: var(--mjg-line-w, 26px); height: var(--mjg-dot, 3px); }
.mjg-dots--line .mjg-dot:not(.is-active):hover .mjg-dot__fill { transform: scaleY(1.6); }
.mjg-dots--square .mjg-dot__fill { border-radius: 1px; }
.mjg-dots--ring .mjg-dot__fill { width: var(--mjg-dot, 10px); height: var(--mjg-dot, 10px); background: transparent; box-shadow: inset 0 0 0 1.5px var(--mjg-pag-active, var(--mjg-pag-active-d)); opacity: .55; }
.mjg-dots--ring .mjg-dot__fill::after { transform: scale(0); transform-origin: center; }
.mjg-dots--ring .mjg-dot.is-active .mjg-dot__fill { opacity: 1; }
.mjg-dots--ring .mjg-dot.is-active .mjg-dot__fill::after { transform: scale(1); }

/* Tempo do autoplay preenchendo a ativa (o fundo da ativa fica um tom mais forte) */
.mjg-dots--fill .mjg-dot.is-active .mjg-dot__fill { background: linear-gradient(var(--mjg-pag-color, var(--mjg-pag-color-d)), var(--mjg-pag-color, var(--mjg-pag-color-d))), var(--mjg-pag-color, var(--mjg-pag-color-d)); }
.mjg-dots--fill .mjg-dot.is-active .mjg-dot__fill::after { background: var(--mjg-pag-fill, var(--mjg-pag-active, var(--mjg-pag-active-d))); }
.mjg-autoplaying .mjg-dots--fill .mjg-dot.is-active .mjg-dot__fill.is-running::after { animation: mjg-fill var(--mjg-delay, 5000ms) linear forwards; }
.mjg-paused .mjg-dots--fill .mjg-dot__fill::after { animation-play-state: paused !important; }

/* Números */
.mjg-slider .mjg-dots--number .mjg-dot.mjg-dot {
	height: auto;
	padding: 8px calc(var(--mjg-dot-gap, 8px) / 2 + 2px);
	font-size: 14px;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	color: var(--mjg-pag-active, var(--mjg-pag-active-d));
	opacity: .45;
}
.mjg-slider .mjg-dots--number .mjg-dot.mjg-dot.is-active,
.mjg-slider .mjg-dots--number .mjg-dot.mjg-dot:hover { opacity: 1; }
.mjg-dots--number .mjg-dot::after {
	content: "";
	position: absolute;
	left: calc(var(--mjg-dot-gap, 8px) / 2 + 2px);
	right: calc(var(--mjg-dot-gap, 8px) / 2 + 2px);
	bottom: 3px;
	height: 2px;
	background: currentColor;
	transform: scaleX(0);
	transition: transform .3s ease;
}
.mjg-dots--number .mjg-dot.is-active::after { transform: scaleX(1); }

/* Janela de bolinhas (muitas fotos) */
.mjg-dots.is-windowed .mjg-dot.is-edge .mjg-dot__fill { transform: scale(.55); }
.mjg-dots.is-windowed .mjg-dot.is-edge.mjg-dot { opacity: .7; }

/* ---- Contador ---- */
.mjg-fraction {
	display: inline-flex;
	align-items: baseline;
	gap: .45em;
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	font-variant-numeric: tabular-nums;
	letter-spacing: .02em;
	white-space: nowrap;
	color: var(--mjg-pag-active, var(--mjg-pag-active-d));
}
.mjg-fraction__current { font-weight: 700; }
.mjg-fraction__sep, .mjg-fraction__total { opacity: .55; }
.mjg-pag--fraction .mjg-fraction { font-size: 16px; }

/* ---- Barra de progresso ---- */
.mjg-progress {
	position: relative;
	width: 100%;
	height: var(--mjg-bar-h, 3px);
	overflow: hidden;
	border-radius: 999px;
	background: var(--mjg-pag-color, var(--mjg-pag-color-d));
}
.mjg-progress__fill {
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: var(--mjg-pag-active, var(--mjg-pag-active-d));
	transform-origin: left center;
	transition: transform var(--mjg-speed, 600ms) ease;
}

/* ---- Segmentos (stories) ---- */
.mjg-segments { display: flex; width: 100%; }
.mjg-slider .mjg-segments .mjg-seg.mjg-seg {
	display: flex;
	flex: 1 1 0;
	align-items: center;
	min-width: 0;
	height: 22px;
	min-height: 0;
	margin: 0;
	padding: 0 calc(var(--mjg-seg-gap, 6px) / 2);
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}
.mjg-slider .mjg-segments .mjg-seg.mjg-seg:hover,
.mjg-slider .mjg-segments .mjg-seg.mjg-seg:focus { background: none; }
.mjg-seg__fill {
	position: relative;
	display: block;
	width: 100%;
	height: var(--mjg-bar-h, 3px);
	overflow: hidden;
	border-radius: 999px;
	background: var(--mjg-pag-color, var(--mjg-pag-color-d));
}
.mjg-seg__fill::after {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--mjg-pag-fill, var(--mjg-pag-active, var(--mjg-pag-active-d)));
	transform: scaleX(0);
	transform-origin: left center;
}
.mjg-seg.is-done .mjg-seg__fill::after,
.mjg-seg.is-active .mjg-seg__fill::after { transform: scaleX(1); }
.mjg-autoplaying .mjg-seg.is-active .mjg-seg__fill.is-running::after { animation: mjg-fill var(--mjg-delay, 5000ms) linear forwards; }
.mjg-paused .mjg-seg__fill::after { animation-play-state: paused !important; }

/* ---- Barra de rolagem arrastável ---- */
.mjg-scrollbar {
	position: relative;
	width: 100%;
	height: var(--mjg-bar-h, 4px);
	border-radius: 999px;
	background: var(--mjg-pag-color, var(--mjg-pag-color-d));
	touch-action: none;
	cursor: pointer;
}
.mjg-scrollbar::before { content: ""; position: absolute; left: 0; right: 0; top: -10px; bottom: -10px; }
.mjg-scrollbar .mjg-scrollbar__drag {
	position: relative;
	top: 0;
	left: 0;
	height: 100%;
	border-radius: inherit;
	background: var(--mjg-pag-active, var(--mjg-pag-active-d));
	cursor: grab;
}
.mjg-scrollbar.swiper-scrollbar-lock { display: none; }

/* =========================================================================
 * Miniaturas
 * ====================================================================== */
.mjg-slider .mjg-slider__thumbs { margin-top: var(--mjg-thumbs-gap, 12px); }
.mjg-slider .mjg-thumb {
	position: relative;
	height: var(--mjg-th, 84px);
	overflow: hidden;
	border-radius: var(--mjg-thumb-r, 0px);
	opacity: var(--mjg-thumb-op, .5);
	cursor: pointer;
	transition: opacity .3s ease;
}
.mjg-slider .mjg-thumbs-auto .mjg-thumb { width: auto; }
.mjg-thumb::after {
	content: "";
	position: absolute;
	inset: 0;
	border: var(--mjg-thumb-bw, 2px) solid var(--mjg-thumb-active, transparent);
	border-radius: inherit;
	opacity: 0;
	transition: opacity .3s ease;
	pointer-events: none;
}
.mjg-slider .mjg-thumb:hover,
.mjg-slider .mjg-thumb.swiper-slide-thumb-active,
.mjg-slider:not(.mjg-ready) .mjg-thumb:first-child { opacity: 1; }
.mjg-thumb.swiper-slide-thumb-active::after { opacity: 1; }
.mjg-thumb img { display: block; max-width: none; margin: 0; border: 0; border-radius: 0; }
.mjg-thumbs-per-view .mjg-thumb img { width: 100%; height: 100%; object-fit: cover; }
.mjg-thumbs-auto .mjg-thumb img { width: auto; height: 100%; }

@media (prefers-reduced-motion: reduce) {
	.mjg-kenburns .mjg-slide__media img { transform: none !important; transition: none !important; }
	.mjg-slide__caption, .mjg-focus .mjg-slide__inner, .mjg-dots__track { transition: none !important; }
}

/* Aviso no editor */
.mjg-editor-notice {
	padding: 18px 20px;
	border: 1px dashed #c3c4c7;
	background: #f6f7f7;
	color: #50575e;
	font-size: 14px;
	text-align: center;
}
