/* FONTS */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: "AvantBold", sans-serif !important;
}

@font-face {
	font-family: "AvantDemi";
	src: url("../fonts/ITCAvantGardeStd-Demi.otf") format("opentype");
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: "AvantBold";
	src: url("../fonts/ITCAvantGardeStd-Bold.otf") format("opentype");
	/*  font-weight: normal;
    font-style: normal; */
}

.avant-demi {
	font-family: "AvantDemi", sans-serif !important;
}

.avant-bold {
	font-family: "AvantBold", sans-serif !important;
}

.verdeCiber {
	color: #00ff85;
}

body {
	background-color: #000a6f;
}

.kextrabold {
	font-family: "kextrabold", sans-serif;
}

.banner {
	width: 100%;
	height: 640px;
}

.banner img {
	width: 100%;
	height: 100%;
}

.logoColonia {
	width: 100px;
}

.h2_naranja {
	font-family: "kbold", sans-serif;
	color: white;
	font-size: 32px;
	-webkit-text-stroke: #00ff85 0.1px;
}

nav {
	border-bottom: solid 3px #d9272e;
}

.nav-link {
	color: #0258a1 !important;
	font-family: "Poppins", sans-serif !important;
	font-weight: 500 !important;
	font-style: normal !important;
	font-size: 12px !important;
}

.nav-link:hover {
	color: #d9272e !important;
}

/* Asegura que el contenedor swiper tenga posición relativa */
.swiper-button-next,
.swiper-button-prev {
	top: 55% !important;
	transform: translateY(-50%);
	color: #00ff85 !important;
	width: 40px;
	height: 40px;
	z-index: 10;
}
.swiper-button-next {
	right: -30px !important;
}
.swiper-button-prev {
	left: -30px !important;
}
/* Botones individuales */
/* .daytours-next,
.paquetes-next {
  right: -25px;
}

.daytours-prev,
.paquetes-prev {
  left: -25px;
} */

/* Importante: asegúrate de que .swiper tiene posición relativa */
.daytours-swiper,
.paquetes-swiper {
	position: relative;
}

/* seccion bienvenida */

.grid-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: 120px;
	gap: 16px;
}

.item {
	background-color: #000a6f;
	color: white;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 12px;
	font-weight: bold;
	text-transform: lowercase;
	overflow: hidden; /* IMPORTANTE */
}

.pasajes {
	grid-column: 1 / 2;
	grid-row: 1;
}

.pasajes:hover {
	animation: bounce 0.5s ease;
}

.bannerText h1 {
	font-family: "kbold", sans-serif;
	color: white;
	font-size: 32px;
	-webkit-text-stroke: #00ff85 0.1px;
}
.bannerText h2 {
	font-family: "kbold", sans-serif;
	color: white;
	font-size: 24px;
	-webkit-text-stroke: #00ff85 0.1px;
}

.btn-banner {
	width: 60%;
	background-color: #04e679;
	color: #000a6f;
	border: white solid 2px;
	font-size: 20px;
	font-family: "AvantDemi", sans-serif !important;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btn-banner:hover {
	width: 60%;
	background-color: #04e679 !important;
	color: #000a6f !important;
	border: white solid 2px !important;

	font-size: 20px;
	font-family: "AvantDemi", sans-serif !important;
	animation: bounce 0.5s ease;
}

@keyframes bounce {
	0% {
		transform: translateY(0px);
	}
	50% {
		transform: translateY(-8px);
	}
	100% {
		transform: translateY(0px);
	}
}

.divCupon img {
	width: 170px !important;
}

.barco {
	width: 100% !important;
	display: flex;
	justify-content: center;
	align-items: center;
}

.barco img {
	width: 290px;
}

.banner2 {
	width: 100%;
	/* min-height: 500px; */
	background-image: url("../imgs/banners/banner_ciber_background.webp");
	background-size: cover;
	background-repeat: no-repeat;
	position: relative; /* Necesario para que el ::after se posicione correctamente */
}

.banner2::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px; /* Altura de la línea */
	background: linear-gradient(to right, transparent, #00ff85, transparent);
}

@keyframes bounce {
	0% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-8px);
	}
	100% {
		transform: translateY(0);
	}
}

.pasajes a {
	width: 100%;
	height: 100%;
}

.pasajes a img {
	width: 100%;
	height: 100%;
}

.paquetes {
	grid-column: 2 / 3;
	grid-row: 1;
}

.paquetes:hover {
	animation: bounce 0.5s ease;
}

.paquetes a {
	width: 100%;
	height: 100%;
}

.paquetes img {
	width: 100%;
	height: 100%;
}

.daytours {
	grid-column: 3 / 4;
	grid-row: 1 / 3; /* ocupa 2 filas */
}

.daytours:hover {
	animation: bounce 0.5s ease;
}

.daytours a {
	width: 100%;
	height: 100%;
}

.daytours a img {
	width: 100%;
	height: 100%;
}

.bodegas {
	grid-column: 1 / 3; /* ocupa 2 columnas */
	grid-row: 2;
}

.bodegas:hover {
	animation: bounce 0.5s ease;
}

.bodegas a {
	width: 100%;
	height: 100%;
}

.bodegas a img {
	width: 100%;
	height: 100%;
}

/* CARDS */

.card {
	border: transparent;
}

.tour-card {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.card-body {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 130px;
}

.card-img-top {
	border-radius: 25px;
}

.pdias {
	font-size: 12px;
}

.card {
	border-radius: 9.34px;
}
.card-title {
	font-size: 16px;
	margin: 5px;
}

.baseDoble {
	font-size: 12px !important;
}

.accordion-body p {
	font-size: 14px;
}

.card_footer {
	margin-top: auto; /* lo empuja hacia abajo */
}

.btn-card {
	background-color: #000a6f;
	color: whitesmoke;
	width: 80%;
	margin-bottom: 2%;
}

.btn-card:hover {
	background-color: #01063d;
	color: whitesmoke;
}

.media-wrapper {
	position: relative;
	overflow: hidden;
	/*     border-radius: var(--bs-card-border-radius); */
}

/* Imagen de fondo por defecto */
.media-wrapper .img-preview {
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 2;
	transition: opacity 0.5s ease;
	opacity: 1;
	border: #00ff85 solid 6px;

	border-radius: 9.34px;
}

/* Video superpuesto inicialmente oculto */
.media-wrapper .video-element {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: opacity 0.5s ease;
	z-index: 1;
	border: #00ff85 solid 6px;
	border-radius: 9.34px;
}

.video-element,
.img-preview {
	transition: opacity 0.3s ease;
}
.video-element {
	opacity: 0;
}

.swiper {
	width: 100%;
	height: 100%;
}

.swiper-slide {
	text-align: center;

	display: flex;
	justify-content: center;
	align-items: center;
}

/* ESTO HACE EL EFECTO  PARA QUE SE VEA UNA PARTE DE LA CARD */

.swiper-slide {
	width: 85%; /* ajusta el porcentaje según el diseño */
	max-width: 300px; /* opcional, para que no se haga enorme en pantallas grandes */
}

.swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.swiper-pagination {
	margin-top: 20px;
	text-align: center;
	position: static !important; /* ¡Esto lo saca de la posición absoluta! */
}

.swiper-pagination-bullet {
	background-color: #00ff85 !important;
	opacity: 1;
}

.swiper-pagination-bullet-active {
	background-color: #ffb700;
}

.fa-star {
	color: #ffb700;
}

.text-decoration-line-through {
	color: gray;
}

.divRedes img {
	width: 100%;
	border-radius: 15px;
}

.h2redes {
	color: #000a6f;
	font-size: 16px;
}

.icono-instagram {
	width: 100px;
	height: 100px;
	position: absolute;
}

.redSocial {
	width: 100px;
	height: 100px;
}

.redSocial a img {
	width: 100%;
}

footer {
	background-color: rgb(34, 34, 34);
	color: whitesmoke;
	min-height: 75px;
	font-size: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
	padding: 0;
}

footer p {
	margin: 0;
	padding: 0;
}
/* 
.redSocial a img:hover {
	transition: transform 0.4s ease-in-out;
}
.redSocial a img:hover {
	transform: scale(1.2);
} */

.redSocial a img:hover {
	animation: bounce 0.5s ease;
}

@keyframes bounce {
	0% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-8px);
	}
	100% {
		transform: translateY(0);
	}
}

.accordion-button {
	color: #000a6f;
}

.accordion-button:not(.collapsed) {
	color: #000a6f;
	background-color: transparent;
	box-shadow: none;
}

.accordion-button:focus {
	box-shadow: none;
	outline: none;
}

.divInstructivo {
	width: 100%;
}
.divInstructivo img {
	width: 100%;
	border-radius: 15px;
}

.btn-download {
	background-color: #04e679;
	color: #000a6f;
	border: white solid 2px;
	font-size: 16px;
	font-family: "AvantDemi", sans-serif !important;
}
.btn-download:hover {
	background-color: #00ff85;
	color: #000a6f;
	border: white solid 2px;
	font-size: 16px;
	font-family: "AvantDemi", sans-serif !important;
}

.divInstructivo {
	color: #000a6f;
	border-radius: 15px;
	font-size: 18px;
	margin: 0 auto;
}

.divInstructivo p {
	font-size: 16px;
}

#footer-p {
	font-family: 11px;
}

.a_card_intro {
	text-decoration: none !important;
}

/*SECCION animacion card con video*/

@media (min-width: 768px) and (max-width: 1199px) {
	.h2redes {
		color: #000a6f;
		font-size: 25px;
	}

	.divCupon img {
		width: 250px !important;
	}

	.nav-link {
		font-size: 17px !important;
	}

	.logoColonia {
		width: 150px;
	}

	.bannerText h1 {
		font-family: "kbold", sans-serif;
		color: white;
		font-size: 72px;
		-webkit-text-stroke: #00ff85 0.1px;
	}
	.bannerText h2 {
		font-family: "kbold", sans-serif;
		color: white;
		font-size: 50px;
		-webkit-text-stroke: #00ff85 0.1px;
	}

	.btn-banner {
		width: 60%;
		background-color: #04e679;
		color: #000a6f;
		border: white solid 2px;
		font-size: 30px;
		font-family: "AvantDemi", sans-serif !important;
	}

	.btn-banner:hover {
		width: 60%;
		background-color: #04e679;
		color: #000a6f;
		border: white solid 2px;
		font-size: 30px;
		font-family: "AvantDemi", sans-serif !important;
		animation: bounce 0.5s ease;
	}

	@keyframes bounce {
		0% {
			transform: translateY(0px);
		}
		50% {
			transform: translateY(-8px);
		}
		100% {
			transform: translateY(0px);
		}
	}

	.barco {
		width: 100% !important;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.barco img {
		width: 669px;
	}

	/* Asegura que el contenedor swiper tenga posición relativa */
	.swiper-button-next,
	.swiper-button-prev {
		top: 55% !important;
		transform: translateY(-50%);
		color: #00ff85 !important;
		width: 40px;
		height: 40px;
		z-index: 10;
	}

	/* Importante: asegúrate de que .swiper tiene posición relativa */
	.daytours-swiper,
	.paquetes-swiper {
		position: relative;
	}
	.swiper-button-next {
		right: -20px !important;
	}
	.swiper-button-prev {
		left: -20px !important;
	}

	.swiper-slide {
		width: 100%; /* ajusta el porcentaje según el diseño */
		max-width: none; /* opcional, para que no se haga enorme en pantallas grandes */
	}

	.h2_naranja {
		font-family: "kbold", sans-serif;
		color: white;
		font-size: 64px;
		-webkit-text-stroke: #00ff85 0.1px;
	}

	.grid-container {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-auto-rows: 240px;
		gap: 16px;
	}

	.item {
		background-color: #000a6f;
		color: white;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 12px;
		font-weight: bold;
		text-transform: lowercase;
		overflow: hidden; /* IMPORTANTE */
	}

	.pasajes {
		grid-column: 1 / 2;
		grid-row: 1;
	}

	.paquetes {
		grid-column: 2 / 3;
		grid-row: 1;
	}

	.daytours {
		grid-column: 3 / 4;
		grid-row: 1 / 3; /* ocupa 2 filas */
	}

	.bodegas {
		grid-column: 1 / 3; /* ocupa 2 columnas */
		grid-row: 2;
	}

	footer {
		background-color: rgb(34, 34, 34);
		color: whitesmoke;
		min-height: 75px;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0;
		padding: 0;
	}

	.card-title {
		font-size: 28px;
		margin: 5px;
	}

	.card-body {
		min-height: 176px !important;
	}
}

@media (min-width: 1200px) {
	.h2redes {
		color: #000a6f;
		font-size: 25px;
	}

	.divCupon img {
		width: 250px !important;
	}

	.bannerText h1 {
		font-family: "kbold", sans-serif;
		color: white;
		font-size: 100px;
		-webkit-text-stroke: #00ff85 0.1px;
	}
	.bannerText h2 {
		font-family: "kbold", sans-serif;
		color: white;
		font-size: 50px;
		-webkit-text-stroke: #00ff85 0.1px;
	}

	.btn-banner {
		width: 60%;
		background-color: #04e679;
		color: #000a6f;
		border: white solid 2px;
		font-size: 36px;
		font-family: "AvantDemi", sans-serif !important;
	}

	.btn-banner:hover {
		width: 60%;
		background-color: #04e679;
		color: #000a6f;
		border: white solid 2px;
		font-size: 36px;
		font-family: "AvantDemi", sans-serif !important;
		animation: bounce 0.5s ease;
	}

	@keyframes bounce {
		0% {
			transform: translateY(0px);
		}
		50% {
			transform: translateY(-8px);
		}
		100% {
			transform: translateY(0px);
		}
	}

	.barco {
		width: 100% !important;
		height: 100% !important;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.barco img {
		width: 732px;
	}

	/* .barco {
		width: 100% !important;
		height: 100% !important;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.barco img {
		width: 80%;
	} */

	.banner2 {
		width: 100%;
		min-height: 600px;
		background-image: url("../imgs/banners/banner_ciber_background.webp");
		background-size: cover;
		background-repeat: no-repeat;
	}

	.swiper-slide {
		width: 100%; /* ajusta el porcentaje según el diseño */
		max-width: none; /* opcional, para que no se haga enorme en pantallas grandes */
	}

	.h2_naranja {
		font-family: "kbold", sans-serif;
		color: white;
		font-size: 64px;
		-webkit-text-stroke: #00ff85 0.1px;
	}

	.banner img {
		width: 100%;
		height: 600px;
	}

	.grid-container {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-auto-rows: 280px;
		gap: 16px;
	}

	.pasajes {
		grid-column: 1 / 2;
		grid-row: 1;
	}
	/* EFECTOS PARA LAS CARDS */
	.pasajes:hover {
		animation: bounce 0.5s ease;
	}

	@keyframes bounce {
		0% {
			transform: translateY(0);
		}
		50% {
			transform: translateY(-8px);
		}
		100% {
			transform: translateY(0);
		}
	}

	.pasajesImg {
		display: block;
		width: 100%;
		height: auto;
	}

	.paquetes {
		grid-column: 2 / 3;
		grid-row: 1;
	}
	.paquetes:hover {
		animation: bounce 0.5s ease;
	}

	@keyframes bounce {
		0% {
			transform: translateY(0);
		}
		50% {
			transform: translateY(-8px);
		}
		100% {
			transform: translateY(0);
		}
	}

	.daytours {
		grid-column: 3 / 4;
		grid-row: 1; /* ocupa 2 filas */
	}

	.daytours:hover {
		animation: bounce 0.5s ease;
	}

	@keyframes bounce {
		0% {
			transform: translateY(0);
		}
		50% {
			transform: translateY(-8px);
		}
		100% {
			transform: translateY(0);
		}
	}

	.bodegas {
		grid-column: 1 /4; /* ocupa 2 columnas */
		grid-row: 2;
	}

	.bodegas:hover {
		animation: bounce 0.5s ease;
	}

	@keyframes bounce {
		0% {
			transform: translateY(0);
		}
		50% {
			transform: translateY(-8px);
		}
		100% {
			transform: translateY(0);
		}
	}

	.spanDesk {
		color: white !important;
		text-decoration: none !important;
		font-size: 100px !important;
		text-decoration-line: underline none !important;
	}

	footer {
		background-color: rgb(34, 34, 34);
		color: whitesmoke;
		min-height: 75px;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0;
		padding: 0;
		font-size: 14px;
	}

	.nav-link {
		font-size: 20px;
	}

	.logoColonia {
		width: 150px;
	}

	.btn-download {
		width: 35%;
	}

	/* .navbar-nav{
		margin: 0 auto;
	} */
	.media-wrapper .video-element {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		opacity: 0;
		transition: opacity 0.5s ease;
		z-index: 1;
		border: #00ff85 solid 6px;
		border-radius: 9.34px;
	}

	.card-body {
		min-height: 104px;
	}
}
