.mkb-slider-wrapper {
	width: 100%;
	position: relative;
	margin-bottom: 0;
}

.mkb-banner {
	width: 100%;
	position: relative;
	display: block;
	overflow: hidden;
	height: var(--mkb-d-h, auto);
	border-radius: var(--mkb-slider-radius, 0px);
}

.mkb-global-link {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}

.mkb-media-layer {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}

.mkb-media-layer picture, 
.mkb-media-layer .mkb-image, 
.mkb-media-layer .mkb-video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	line-height: 0;
}

.mkb-hide-mobile { display: block; }
.mkb-hide-desktop { display: none; }

/* OVERLAY TEXT BOX */
.mkb-overlay-layer {
	position: absolute;
	top: 0; 
	left: 50%;
	transform: translateX(-50%);
	width: 100%; 
	max-width: 1408px; /* Alinhado com a largura max da página (1280px de conteudo + 128px de paddings) */
	height: 100%;
	z-index: 2;
	display: flex;
	padding-left: 16px; /* Margem padrão mobile */
	padding-right: 16px;
	box-sizing: border-box;
	pointer-events: none; /* A camada inteira vazado clique */
}

@media (min-width: 768px) {
	.mkb-overlay-layer {
		padding-left: 64px; /* Margem padrão desktop (px-margin-desktop) */
		padding-right: 64px;
	}
}

.mkb-text-box {
	max-width: var(--mkb-content-width, 800px);
	pointer-events: auto; /* O texto e o botâo capturam clique */
}
.mkb-global-link .mkb-text-box {
	pointer-events: none;
}

.mkb-title {
	margin: 0 0 15px 0;
	font-weight: 800;
	line-height: 1.1;
	font-size: var(--mkb-t-size);
	text-shadow: 0 2px 10px rgba(0,0,0,0.5); /* Sombra pesada para leitura independente do fundo */
	letter-spacing: -0.5px;
}

.mkb-subtitle {
	margin: 0 0 30px 0;
	font-weight: 400;
	line-height: 1.4;
	font-size: var(--mkb-s-size);
	text-shadow: 0 2px 10px rgba(0,0,0,0.5);
}


.mkb-action-btn {
	display: inline-block;
	padding: 12px 35px;
	border-radius: 40px;
	border: 2px solid transparent;
	text-decoration: none;
	font-weight: bold;
	font-size: 16px;
	transition: 0.3s;
	box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}
.mkb-action-btn:hover {
	transform: scale(1.05);
	opacity: 0.9;
	text-decoration: none;
}

/* 9 POSITIONS */
.mkb-pos-top-left { align-items: flex-start; justify-content: flex-start; text-align: left; }
.mkb-pos-top-center { align-items: flex-start; justify-content: center; text-align: center; }
.mkb-pos-top-right { align-items: flex-start; justify-content: flex-end; text-align: right; }

.mkb-pos-center-left { align-items: center; justify-content: flex-start; text-align: left; }
.mkb-pos-center-center { align-items: center; justify-content: center; text-align: center; }
.mkb-pos-center-right { align-items: center; justify-content: flex-end; text-align: right; }

.mkb-pos-bottom-left { align-items: flex-end; justify-content: flex-start; text-align: left; }
.mkb-pos-bottom-center { align-items: flex-end; justify-content: center; text-align: center; }
.mkb-pos-bottom-right { align-items: flex-end; justify-content: flex-end; text-align: right; }

/* Móbile Fixes */
@media (max-width: 767px) {
	.mkb-banner { height: var(--mkb-m-h, var(--mkb-d-h, auto)); }
	
	.mkb-title { font-size: calc(var(--mkb-t-size) * 0.7) !important; }
	.mkb-subtitle { font-size: calc(var(--mkb-s-size) * 0.8) !important; }

	.mkb-hide-mobile { display: none !important; }
	.mkb-hide-desktop { display: block !important; }
	
	.mkb-overlay-layer { padding: 25px; }

	.mkb-text-box { max-width: 100% !important; }

	.mkb-title { max-width:90vw; }
	.mkb-subtitle { max-width:90vw; }
	.mkb-action-btn { padding: 10px 25px; font-size: 14px; }
}

/* SWIPER FIXES (Evitar bugs visuais com Swiper default) */
.mkb-swiper-container {
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: auto; 
	border-radius: var(--mkb-slider-radius, 0px);
}
.mkb-swiper-container .mkb-banner {
	border-radius: 0; /* Container já redimensiona, evita gaps sujos na transição cover */
}
.mkb-swiper-container .swiper-slide {
	display: flex;
	justify-content: center;
	align-items: center;
}

/* Customizar setas/pontos do Swiper para combinarem com os tons brancos premium */
.mkb-swiper-container .swiper-pagination {
	z-index: 99 !important;
	pointer-events: auto !important;
}
.mkb-swiper-container .swiper-pagination-bullet {
	background: #fff;
	opacity: 0.5;
	box-shadow: 0 0 5px rgba(0,0,0,0.5);
	cursor: pointer !important;
	pointer-events: auto !important;
}
.mkb-swiper-container .swiper-pagination-bullet-active {
	opacity: 1;
}

/* Setas de navegação personalizadas e imunes a interceptação de cliques */
.mkb-button-next,
.mkb-button-prev {
	position: absolute;
	top: 50%;
	width: var(--swiper-navigation-size, 45px);
	height: var(--swiper-navigation-size, 45px);
	margin-top: calc(0px - (var(--swiper-navigation-size, 45px) / 2));
	z-index: 99 !important;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--swiper-navigation-color, #ffffff);
	filter: drop-shadow(0 2px 6px rgba(0,0,0,0.5));
	pointer-events: auto !important;
	transition: transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.2s ease;
}

.mkb-button-next:hover,
.mkb-button-prev:hover {
	transform: scale(1.2);
	opacity: 0.95;
}

.mkb-button-next:active,
.mkb-button-prev:active {
	transform: scale(0.9);
}

.mkb-button-next svg,
.mkb-button-prev svg {
	width: 60%;
	height: 60%;
	display: block;
}

.mkb-button-next {
	right: 25px;
	left: auto;
}

.mkb-button-prev {
	left: 25px;
	right: auto;
}

@media (max-width: 767px) {
	.mkb-button-next,
	.mkb-button-prev {
		width: 36px;
		height: 36px;
		margin-top: -18px;
	}
	.mkb-button-next { right: 12px; }
	.mkb-button-prev { left: 12px; }
}
