/*
|--------------------------------------------------------------------------
| WRAPPER
|--------------------------------------------------------------------------
*/

.nube-cards-carousel-wrapper {

	display: flex;
	align-items: center;
	gap: 30px;
	width: 100%;
}

/*
|--------------------------------------------------------------------------
| SWIPER
|--------------------------------------------------------------------------
*/

.nube-cards-carousel-swiper {
	flex: 1;
	width: 100%;
}

/*
|--------------------------------------------------------------------------
| SLIDE
|--------------------------------------------------------------------------
*/

.nube-cards-carousel-swiper .swiper-slide {
	height: auto;
}

/*
|--------------------------------------------------------------------------
| CARD
|--------------------------------------------------------------------------
*/

.nube-cards-carousel-card {
	display: block;
	text-decoration: none;
	height: 100%;
	width: 100%;
	transition: transform .3s ease;
}

.nube-cards-carousel-swiper .swiper-wrapper {
	align-items: stretch;
}

.nube-cards-carousel-swiper .swiper-slide {
	height: auto;
	display: flex;
}

/*
|--------------------------------------------------------------------------
| BACKGROUND
|--------------------------------------------------------------------------
*/
.nube-cards-carousel-bg {
	position: relative;
	width: 100%;
	height: 500px;
	min-height: 500px;
	max-height: 500px;
	border-radius: 8px;
	overflow: hidden;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

/*
|--------------------------------------------------------------------------
| TITLE
|--------------------------------------------------------------------------
*/

.nube-cards-carousel-title {
	position: absolute;
	left: 20px;
	right: 20px;
	bottom: 18px;
	z-index: 2;
	color: #ffffff;
	text-align: center;
	font-size: 18px;
	font-style: italic;
	font-weight: 400;
	line-height: 1.2;
	transition: .3s ease;
}

/*
|--------------------------------------------------------------------------
| OVERLAY
|--------------------------------------------------------------------------
*/

.nube-cards-carousel-overlay {

	position: absolute;
	left: 18px;
	right: 18px;
	top: 18px;
	bottom: 18px;
	border-radius: 8px;
	background: rgba(
		35,
		20,
		15,
		0.88
	);
	display: flex;
	align-items: center;
	justify-content: center;
	transform: translateY(110%);
	transition:
		transform .35s ease;
	z-index: 5;
}

/*
|--------------------------------------------------------------------------
| CONTENT
|--------------------------------------------------------------------------
*/

.nube-cards-carousel-content {
	padding: 30px;
	text-align: center;
}

.nube-cards-carousel-content h3 {
  margin: 0 0 15px;
  font-size: 20px;
  font-style: italic;
  font-weight: 400;
  color: #ffffff;
  /* Subrayado profesional */
  text-decoration: underline;
  text-decoration-color: rgba(255, 255, 255, 0.4); /* Color suave para no competir con el texto */
  text-decoration-thickness: 1.5px;               /* Grosor fino y estilizado */
  text-underline-offset: 6px;                     /* Separa el subrayado del texto */
  text-decoration-skip-ink: auto;  
}

.nube-cards-carousel-content p {
	margin: 0 0 30px;
	font-size: 14px;
	line-height: 1.6;
	color: #ffffff;
}

.nube-cards-carousel-content span {
	display: block;
    font-size: 13px;
    font-weight: 300;
    text-transform: none;
    color: #ffffff;
    position: absolute;
    bottom: 25px;
    right: 30px;
}

/*
|--------------------------------------------------------------------------
| HOVER
|--------------------------------------------------------------------------
*/

.nube-cards-carousel-card:hover
.nube-cards-carousel-overlay {
	transform: translateY(0);
}

.nube-cards-carousel-card:hover
.nube-cards-carousel-title {
	opacity: 0;
}

/*
|--------------------------------------------------------------------------
| NAV
|--------------------------------------------------------------------------
*/

.nube-cards-carousel-nav {
	width: 50px;
	height: 50px;
	border: 1px solid #d9d9d9;
	background: #ffffff;
	border-radius: 50%;
	cursor: pointer;
	font-size: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition:
		background .3s ease,
		color .3s ease,
		border-color .3s ease;
}

.nube-cards-carousel-nav:hover {
	background: #5f3f2b;
	color: #ffffff;
	border-color: #5f3f2b;
}

/*
|--------------------------------------------------------------------------
| MOBILE
|--------------------------------------------------------------------------
*/

@media (max-width: 767px) {
	.nube-cards-carousel-wrapper {
		gap: 12px;
	}

	/* .nube-cards-carousel-bg {
		height: 400px;
		min-height: 400px;
		max-height: 400px;
	} */

	.nube-cards-carousel-title {
		font-size: 22px;
	}

	.nube-cards-carousel-content {
		padding: 25px;
	}

	.nube-cards-carousel-content h3 {
		font-size: 22px;
	}
}