/* CSS Customizado para o Slider - Sobrescreve o Bootstrap */

/* Reset completo do carousel-caption do Bootstrap */
.slider-section .carousel-caption {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 100% !important;
	text-align: center !important;
	background: rgba(0, 0, 0, 0.6) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	z-index: 10 !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* Sobrescrever especificamente as regras do Bootstrap */
.slider-section .carousel-caption[style] {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 100% !important;
	text-align: center !important;
	background: rgba(0, 0, 0, 0.6) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	z-index: 10 !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* Container centralizado */
.slider-section .carousel-caption .container {
	max-width: 800px;
	margin: 0 auto;
	padding: 20px;
}

/* Texto sempre visível */
.slider-section .carousel-caption h1,
.slider-section .carousel-caption h2,
.slider-section .carousel-caption h3 {
	color: #ffffff !important;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9) !important;
	font-weight: bold !important;
	margin-bottom: 20px !important;
}

.slider-section .carousel-caption p {
	color: #ffffff !important;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.9) !important;
	font-size: 18px !important;
	line-height: 28px !important;
	margin-bottom: 25px !important;
}

/* Botões estilizados */
.slider-section .carousel-caption .btn-primary {
	background-color: #007bff !important;
	border-color: #007bff !important;
	color: #ffffff !important;
	font-weight: bold !important;
	padding: 12px 30px !important;
	font-size: 16px !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	transition: all 0.3s ease !important;
	text-shadow: none !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3) !important;
}

.slider-section .carousel-caption .btn-primary:hover {
	background-color: #0056b3 !important;
	border-color: #0056b3 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4) !important;
}

/* Responsivo para mobile */
@media (max-width: 768px) {
	.slider-section .carousel-caption {
		background: rgba(0, 0, 0, 0.7) !important;
		padding: 20px !important;
	}
	
	.slider-section .carousel-caption h1,
	.slider-section .carousel-caption h2,
	.slider-section .carousel-caption h3 {
		font-size: 24px !important;
		line-height: 32px !important;
	}
	
	.slider-section .carousel-caption p {
		font-size: 16px !important;
		line-height: 22px !important;
	}
	
	.slider-section .carousel-caption .btn-primary {
		padding: 10px 20px !important;
		font-size: 14px !important;
	}
}

/* Responsivo para tablets */
@media (min-width: 769px) and (max-width: 1024px) {
	.slider-section .carousel-caption {
		background: rgba(0, 0, 0, 0.6) !important;
	}
	
	.slider-section .carousel-caption h1,
	.slider-section .carousel-caption h2,
	.slider-section .carousel-caption h3 {
		font-size: 32px !important;
		line-height: 42px !important;
	}
	
	.slider-section .carousel-caption p {
		font-size: 17px !important;
		line-height: 26px !important;
	}
}

/* Regras de emergência para garantir visibilidade */
.slider-section .carousel-caption * {
	color: #ffffff !important;
}

.slider-section .carousel-caption h1,
.slider-section .carousel-caption h2,
.slider-section .carousel-caption h3,
.slider-section .carousel-caption p {
	color: #ffffff !important;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9) !important;
}

/* Forçar display flex em todos os casos */
.slider-section .carousel-caption,
.slider-section .carousel-caption[style] {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}
