/*===============================================*/
/* 1. RESET */
/*===============================================*/

/*===============================================*/
/* 2. GENERAL */
/*===============================================*/
html, body {
	width: 100vw;
	height: 100%;
	scroll-behavior: smooth;
	background-color: white !important;
}
body{
	overflow-x: hidden;
}
h1, h2, h3, h4, h5, h6{
	font-family: "Outfit", sans-serif !important;
	font-weight: 800;
}
p,a, span{
	font-family: "Space Grotesk", sans-serif !important;
}
body.page-loaded {
	opacity: 1;
	/* Mostrar cuerpo después de cargado */
}
body, html {
	margin: 0;
	padding: 0;
}
body {
	opacity: 1;
	/* Inicialmente oculto */
	transition: opacity 0.3s ease;
	/* Transición suave de opacidad */
	padding: 0;
	margin: 0 auto;
	color: #444142;
	background-color:white;
	font-weight: 300;
	overflow-x:hidden !important
}

/* timeline*/
@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,700);

body {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 1em;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

/* Layout */
* {
  box-sizing: border-box;
}

/* Styling */
.timeline {
  margin: 4em auto;
  position: relative;
  max-width: 46em;
}

.timeline::before {
  background-color: #0c8b8f;
  content: '';
  margin-left: -1px;
  position: absolute;
  top: 0;
  left: 2em;
  width: 2px;
  height: 90%;
}

.timeline-event {
  position: relative;
}

.timeline-event:hover .timeline-event-icon {
  transform: rotate(-45deg);
  background-color: #8f0c0c;
}

.timeline-event:hover .timeline-event-thumbnail {
  box-shadow: inset 40em 0 0 0 #8f0c0c;
}

.timeline-event-copy {
  padding: 2em;
  position: relative;
  top: -1.875em;
  left: 4em;
  width: 80%;
}

.timeline-event-copy h3 {
  font-size: 1.7em;
padding: 0;
}

.timeline-event-copy h4 {
  font-size: 1.2em;
  margin-bottom: 1.2em;
  font-weight: 300;
}

.timeline-event-copy strong {
  font-weight: 700;
}

.timeline-event-copy p:not(.timeline-event-thumbnail) {
  padding-bottom:3em;
}

.timeline-event-icon {
  transition: transform 0.2s ease-in;
  transform: rotate(45deg);
  background-color: #0c8b8f;
  outline: 10px solid #eaeaea;
  display: block;
  margin: 0.5em 0.5em 0.5em -0.5em;
  position: absolute;
  top: 0;
  left: 2em;
  width: 1em;
  height: 1em;
}

.timeline-event-thumbnail {
  transition: box-shadow 0.2s ease-in 0.1s;
  color: white;
  font-size: 0.75em;
  background-color: #0c8b8f;
  box-shadow: inset 0 0 0 0em #a90000;
  display: inline-block;
  margin-bottom: 1.2em;
  padding: 0.25em 1em 0.2em 1em;
}




.clear {
	clear: both;
}
p {
	padding: 0;
	margin: 0px;
	line-height: 20px;
}
a {
	text-decoration: none;
	line-height: 18px;
}
blockquote {
	font-style: italic;
	font-size: 24px;
	padding: 0 5%;
	margin: 40px 0 60px 0;
	line-height: 34px;
	position: relative;
	text-align: center;
}
blockquote:after {
	content: ' ';
	position: absolute;
	display: block;
	width: 10%;
	margin: 20px 40%;
	border: 1px solid #e76b71;
}
a img {
	border: none;
}
a:hover {
	text-decoration: none;
	color: #212121;
}
/*---------------------------*/
/* 2-1. HEADINGS */
/*---------------------------*/
h1, h2, h3, h4, h5, h6 {
	letter-spacing: -0.5px;
	padding: 0 0 30px 0;
	margin: 0;
}
h1 {
	font-size: 40px;
}
h2 {
	font-size: 35px;
	line-height: 1.2em;
	/* Ajusta este valor según sea necesario */
	max-height: 3.6em;
	/* 3 líneas a 1.2em cada una */
	overflow: hidden;
	position: relative;
}
h4 {
	font-size: 20px;
}
h5 {
	font-size: 18px;
}
h6 {
	font-size: 16px;
}
/* ELEMENT - header__menu */
@keyframes slidearrow {
	0% {
		transform: translateX(0);
		/* Posición inicial */
	}
	50% {
		transform: translateX(-1.5px);
		/* Moverse 2px hacia la izquierda */
	}
	100% {
		transform: translateX(1.5px);
		/* Moverse 2px hacia la derecha */
	}
}
.arrowicon{
	animation: slidearrow 1s ease-in-out infinite;
}
.backgroundNav {
	background-color: rgba(255, 255, 255, 0.7);
	/* Ajusta el color y la opacidad según tus necesidades */
	transition: background-color 0.3s ease;
}
.logo{
	width: 15%;
	/* filter:drop-shadow(1px 1px 3px rgba(25, 25, 25, 0.8))*/
}
.menu-hidden {
	display: none;
}
.menu-visible {
	display: block;
}
.menu {
	max-height: 0;
	overflow: hidden;
}
a{
	font-size: 13px;
	font-weight: 300;
}
.selected{
	color:rgb(172, 17, 17);
	font-weight: 600 !important;
}


.language{
	font-weight: 600;
	font-size: 12px;
	margin: 0 !important;
	cursor: pointer;
	color: #0c8b8f;
}
.language:hover{
	font-weight:700;
	font-size: 14px;
	color: #0a696c;
}
.en{
	font-weight: 600;
	font-size: 13px;
	margin: 0 !important;
	color: #0c8b8f;
}
.es{
	font-weight: 600;
	font-size: 13px;
	margin: 0 !important;
	padding-left:20px;
	color: #8f0c0c;
}
.check{
	position:relative;
	width: 35px;
	cursor: pointer;
}
.check:before{
	cursor: pointer;
	content: '';
	position: absolute;
	width:35px;
	height: 20px;
	background-color: #f0eeee;
	border-radius: 25px;
	box-shadow: inset rgba(46, 46, 46, 0.472) 0px 0px 10px -4px,rgba(60, 64, 67, 0.2) 0px 1px 2px 0px, rgba(60, 64, 67, 0.1) 0px 2px 6px 2px;
}
.check:after{
	cursor: pointer;
	content: '';
	position: absolute;
	width: 20px;
	height: 20px;
	background-color: #7c0707;
	border-radius: 25px;
	transition: 0.25c;
	border:2px solid #f0eeee;
	box-sizing: border-box;
}
.check:after{
	background-color: #7c0707;
	border-radius: 25px;
	transition: 0.25c;
	border:2px solid #f0eeee;
	box-sizing: border-box;
}
.check:checked:after{
	left:15px;
	border:2px solid #f0eeee;
	background: #0c8b8f;
}
.check:checked:before{
	background: #f0eeee;
}
.clientsPortal{
	border: solid 1.5px #cb1818;
	padding: 5px 10px;
	color: #cb1818;
	font-weight: 500;
}
.clientsPortal:hover{
	background-color:#cb1818 ;
	color:white;
	border: solid 1.5px #ffffff;
}
.space{
	margin: 0 !important;
}
#typedData{
	color:#b70909;
	font-weight:700
}
#typedDataEn{
	color:#b70909;
	font-weight:700
}
.about , .about2{
	padding-top: 5.5rem !important;
	padding-bottom: 3rem !important;
}
.about p:nth-child(4){
	padding-top: 12px;
	font-size: 15px;
	line-height: 20px;
}
.about h2{
	padding-bottom: 10px;
}
.about2{
	position: relative;
	height: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.isoimage{
	position: absolute;
	z-index: 30 !important;
	width: 170px;
	top:10%;
	right:20px;
	filter: drop-shadow(3px 5px 15px rgba(1, 1, 1, 0.1));
}
.isoimageEn{
	position: absolute;
	z-index: 30 !important;
	width: 170px;
	top:10%;
	right: 20px;
	filter: drop-shadow(3px 5px 15px rgba(1, 1, 1, 0.1));
}
.containerAbout{
	width: 90%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	margin: 3;
}
.containerAbout .card{
	position: relative;
	height: 200px;
	background-color: #f3f3f3;
	display: flex;
	width: 45%;
	margin: 30px 10px;
	box-shadow: 2px 2px 10px 0.2px rgba(0, 0, 0, 0.1);
}
.containerAbout .card .imgBox{
	width: 120px;
	height: 100%;
	left: 0;
	background: #d6d6d6;
}
.containerAbout .card .imgBox::before{
	content: attr(data-text);
	position: absolute;
	bottom: 0;
	left: 5%;
	text-align: center;
	font-size:3rem;
	color: rgba(142, 142, 142, 0.1);
	font-weight: 700;
}
.containerAbout .card .imgBox img{
	width:100px;
	padding-top: 30px !important;
	padding-left: 30px;
}
.containerAbout .card .content{
	position: absolute;
	right: 0;
	width: calc(95% - 80px);
	height: 100%;
	padding: 30px;
	display: flex;
	justify-content:center;
	align-items:center ;
}
.containerAbout .card .content h3{
	margin-bottom: 4px;
	padding-bottom: 10px!important;
	font-weight: 600;
	color: red;
}
.containerAbout .card .content p{
	font-size: 16px !important;
	font-weight: 400;
}
.ourWork{
	background-color: #f7f7f7;
	padding: 50px;
	width: 100vw;
}
.ourWork h2{
	color: #e90000;
}
.ourWork .us{
	width: 75%;
	background: rgba(231, 231, 231, 0.802);
	box-shadow: rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
	padding: 40px 35px !important;
	margin: 20px auto;
}
.ourWork .us h3{
	padding-bottom: 10px;
	font-weight: 600;
	font-size: 1.4rem !important;
}
.ourWork .us p{
	font-size:17px;
	font-weight:300;
	line-height: 30px;
	font-weight: 300;
}
.ourWork .us img{
	width: 150px;
}

.clients{
	
	padding: 50px;
	width: 100vw;
}
.clients h2{
	color: #e90000;
}

/*SLIDER CLIENTS*/
.sectionSlider {
	width: 100%;
	height: auto;
	float: left;
	padding-top: 5rem !important;
	position: relative;
}


@keyframes fadeInOutSmooth {
  0%, 10% {
    opacity: 0;
  }
  25%, 75% {
    opacity: 1;
  }
  90%, 100% {
    opacity: 0;
  }
}

.fade-text {
  animation: fadeInOutSmooth 2.4s ease-in-out infinite;
  transition: opacity 0.5s ease-in-out;
}




.text-flicker {
	-webkit-animation: text-flicker 4s linear 2s infinite;
	animation: text-flicker 4s linear 2s infinite;
}
@keyframes text-flicker{
	0% {
		opacity: 0;
	}
	10.1% {
		opacity: 1;
	}
	10.2% {
		opacity: 0;
	}
	20% {
		opacity: 0;
	}
	20.1% {
		opacity: 1;
	}
	30.1% {
		opacity: 1;
	}
	55.1% {
		opacity: 0;
	}
	57% {
		opacity: 0;
	}
	57.1% {
		opacity: 1;
	}
	60% {
		opacity: 1;
	}
	60.1% {
		opacity: 0;
	}
	65% {
		opacity: 0;
	}
	77.1% {
		opacity: 1;
	}
	85% {
		opacity: 1;
	}
	85.1% {
		opacity: 0;
	}
	86% {
		opacity: 0;
	}
	86.1% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@keyframes fadeInOut {
	0%, 10% {
		opacity: 0;
	}
	20%, 50% {
		opacity: 1;
	}
	60%, 100% {
		opacity: 0;
	}
}
.flicker {
	animation: fadeInOut 2.4s cubic-bezier(0.65, 0.05, 0.36, 1) infinite;
}

.logos:before,.logos:after {
	position: absolute;
	top: 0;
	width: 250px;
	height: 100%;
	content: "";
	z-index: 2;
}
.logos:before {
	left: 0;
	background: linear-gradient(to left, rgba(255, 255, 255, 0), white);
}
.logos:after {
	right: 0;
	background: linear-gradient(to right, rgba(255, 255, 255, 0), white);
}

.logos:hover .logos-slide {
	animation-play-state: paused;
}






@keyframes slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.logos {
  overflow: hidden;
  padding: 60px 0;
  background: white;
  position: relative;
}

.logos-slide {
  display: flex;
  width: max-content;
  animation: slide 45s linear infinite;
  align-items: center;
}

.logos-slide img {
  height: 60px;
  margin: 0 20px;
  flex-shrink: 0;
}




.logos-slide:hover .thelogo {
	filter: grayscale(0%);
}
.thelogo{
	filter:grayscale(100%)
}
.lamp{
	filter: drop-shadow(-1px -4px 15px #fff2ab);
}
.ship {
	bottom: 10px;
	left: 0;
	width: 100px;
	height: auto;
	animation: moveShip 4s infinite alternate ease-in-out;
}
@keyframes moveShip {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(150%);
	}
}
.bg_image h1{
	padding-left: 20px;
}
.bg_image h2{
	padding-left: 20px;
}
.bg_image button{
	margin-left: 20px;
}
.bg-gallery{
	background: #ffffff;
	padding: 10px 0px;
	box-shadow: rgba(136, 165, 191, 0.48) 6px 2px 16px 0px, rgba(255, 255, 255, 0.8) -6px -2px 16px 0px;
}
.gallery-container{
	width: 95%;
	margin:20px auto;
	columns:6;
	column-gap: 10px;
}
.gallery-container .box{
	width: 100%;
	margin-bottom: 10px;
	break-inside: avoid;
	background-color: white;
	box-shadow: rgba(50, 50, 105, 0.15) 0px 2px 5px 0px, rgba(0, 0, 0, 0.05) 0px 1px 1px 0px;
	border-radius: 5px;
	position: relative;
	overflow: hidden;
}
.circ:nth-child(1) {
	top: 0px;
	left: 0px;
}
.circ:nth-child(2) {
	top: 0px;
	right:0px;
}
.circ:nth-child(3) {
	bottom: 0px;
	left: 0px;
}
.circ:nth-child(4) {
	bottom: 0px;
	right:0px;
}
.circle1{
	animation: spin 60s linear infinite;
}
.eng{
	top:105px;
	left:100px;
	animation: spin 17s linear infinite;
}
.eng1{
	top:135px;
	right:100px;
	animation: inverseSpin 19s linear infinite;
}
@keyframes spin {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}
@keyframes inverseSpin {
	from {
		transform: rotate(360deg);
	}
	to {
		transform: rotate(0deg);
	}
}
/*slide down */
@keyframes slide-down {
	0% {
		opacity: 0;
		transform: translateY(-10px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}
.animate-slide-down {
	display: flex;
	align-items: center;
	flex-direction: column;
	animation: slide-down 0.3s ease-out;
}
@media (min-width: 1024px) {
	.dropdown-menu {
		width: 110%;
		/* Ancho del 110% en pantallas LG */
	}
}
.animate-slide-up {
	display: flex;
	align-items: center;
	flex-direction: column;
	animation: slide-down-reverse 0.3s ease-out;
}
@keyframes slide-down-reverse {
	0% {
		opacity: 1;
		transform: translateY(0);
	}
	100% {
		opacity: 0;
		transform: translateY(-10px);
	}
}
#dropdownIcon.rotate {
	transform: rotate(180deg);
}
.gallery-container .box img{
	max-width: 100%;
	border-radius: 5px;
	transition: filter 0.5s ease-in-out;
	filter:grayscale(100%);
	transition: transform 0.3s ease
}
.gallery-container .box img:hover{
	filter: grayscale(0%);
	transform: scale(1.1);
}
.glightbox-clean .gslide-title{
	font-size: 20px !important;
	font-weight: bold;
	/* Peso de la fuente */
	color: #a90202 !important;
}
/* Estilo para la descripción */
.glightbox-description {
	font-size: 14px;
	/* Tamaño de fuente */
	color: #666;
	/* Color del texto */
}
/*card*/
.containerCard .card {
	width: 180px;
	/* Ancho de la tarjeta */
	height: 120px;
	/* Altura de la tarjeta */
}
.containerCard .card .icon {
	position: absolute;
	top: 25px;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #ffffff;
}
.containerCard .card .icon img {
	margin: 20px auto;
	width:5rem;
	/* Ancho deseado para la imagen */
	height: 5rem;
	/* Altura deseada para la imagen */
}
.tada:hover {
	-webkit-animation-name: tada;
	animation-name: tada;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
@-webkit-keyframes tada {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
	}
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}
	100% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}
@keyframes tada {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
	}
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}
	100% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}
.containerCard .card .icon:hover {
	transition: 1s;
	background-color: #ffffff00;
}
.containerCard .card .slide {
	width: 190px;
	/* Ancho de la tarjeta */
	height: 120px;
	/* Altura de la tarjeta */
	transition: 0.5s;
}
.containerCard .card .slide.slide1 {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1;
	transition: .7s;
	transform: translateY(10px);
}
.containerCard .card:hover .slide.slide1{
	transform: translateY(0px);
}
.containerCard .card .slide.slide2 {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 12px;
	box-sizing: border-box;
	transition: .8s;
	transform: translateY(-80px);
	box-shadow: 0 10px 20px rgba(0,0,0,0.05);
}
.containerCard .card:hover .slide.slide2{
	transform: translateY(0);
}
/* Gallery */
.rectangulo {
	display: flex;
	flex-direction: row;
	height: 90px;
	min-width: 250px;
	justify-content: space-between;
	position: relative;
	border-radius: 4px;
	box-shadow: 2px 2px 10px 0.2px rgba(67, 67, 67, 0.2);
	background-color: #e9e9e9;
}
.rectangulo:hover {
	box-shadow: 2px 2px 15px 0.2px rgba(66, 66, 66, 0.679);
}
.texto {
	font-size: 1.5rem;
	line-height: 1;
	color: #535353;
	padding: 8px;
	text-align: end;
	font-weight: 500;
}
.franja {
	position: absolute;
	bottom: 0;
	height: 20px;
	width: 100%;
	overflow: hidden;
	/* Adjust the height of the stripe as needed */
}
/* Grid Layout */
@media (min-width: 1024px) {
	/* Large screens (Desktops) */
	.grid {
		grid-template-columns: repeat(2, 1fr);
		/* 5 columns */
	}
	.rectangulo {
		width: 450px;
		/* Ensure it takes full width */
	}
}
@media (min-width: 768px) and (max-width: 1023px) {
	/* Medium screens (Tablets) */
	.grid {
		grid-template-columns: repeat(2, 1fr);
		/* 2 columns */
	}
	.rectangulo {
		width: 350px;
		/* Ensure it takes full width */
	}
	.texto {
		font-size: 1.4rem;
	}
}
@media (max-width: 767px) {
	/* Small screens (Mobile) */
	.grid {
		grid-template-columns: repeat(2, 1fr) /* 1 column */
	}
	.rectangulo {
		width: 270px;
		/* Adjust width for smaller screens */
	}
}
.icon-container {
	order: 1;
	/* Ensures the icon is on the right */
}
@media (max-width: 650px) {
	.grid {
		grid-template-columns: 1fr;
		/* 1 column */
	}
	.rectangulo {
		width: 380px;
		/* Adjust width for smaller screens */
	}
}
@media (max-width: 530px) {
	.rectangulo {
		width: 380px;
		/* Adjust width for smaller screens */
	}
}
@media (max-width: 400px) {
	.rectangulo {
		width: 300px;
		/* Adjust width for smaller screens */
	}
}
@media (max-width: 350px) {
	.rectangulo {
		width: 200px;
		/* Adjust width for very small screens */
	}
	.texto {
		font-size: 1rem;
		text-align: end;
		margin-bottom: 20px;
	}
}
.contenedor {
	max-width: 120rem;
	margin: 0 auto;
	width: 90%;
}
.grid-item img{
	width: 100%;
	display: block;
	object-fit: cover;
	height: 100%;
}
.grid-container{
	display: grid;
	grid-template-columns: repeat(1,1fr);
	gap:0.4rem;
	padding: 1rem;
}
.img-vacations{
	object-fit: cover;
	object-position: bottom;
	width: 100%;
	height: 100%;
}
@media (min-width:768px){
	.grid-container{
		grid-template-columns: repeat(4,1fr);
	}
	.grid-item:nth-child(1){
		grid-row: 1/3;
		height: 16.4rem;
	}
	.grid-item:nth-child(2){
		grid-column: 2/4;
		height: 1/3;
	}
	.grid-item:nth-child(6){
		grid-row: 3/5;
		grid-column: 2/3;
		height: 16.4rem;
	}
	.grid-item:nth-child(9){
		grid-column: 3/5;
	}
	.grid-item:nth-child(11){
		grid-column: 3/5;
	}
}
.grid-text{
	position: absolute;
	justify-self: center;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
	color: white;
	font-weight: 600;
	font-size: 22px;
	font-family: "Space Grotesk", sans-serif ;
	text-shadow: 1px 0px 8px rgba(0,0,0,0.87);
	width: 100%;
	text-align: center;
	padding: 10px 0;
	transition: background-color 0.3s ease, opacity 0.3s ease;
}
.grid-item{
	position: relative;
	border-radius: 0.2rem;
	overflow: hidden;
	height: 8rem;
}
.grid-item img{
	transition: all .3s ease ;
	filter: brightness(70%)
}
.grid-item img:hover{
	transform: scale(1.1);
	filter:brightness(1);
	cursor:pointer
}
.grid-item:hover .grid-text{
	background-color: rgba(0, 6, 21, 0.724);
	opacity: 1;
}
@media (max-width:990px){
	.container{
		width: 100%;
	}
	.about2 header h3{
		font-size: 2rem ;
	}
	.isoimage, .isoimageEn{
		top: 10%;
		width: 120px;
	}
}
@media (max-width:780px){
	.grid-container {
		grid-template-columns: repeat(2, 1fr);
	}
	.gallery-container{
		columns:3;
	}
	.isoimage, .isoimageEn{
		top: 10%;
		width: 120px;
	}
	.about2 {
		padding-top: 4rem !important 
}
	.about2 header h3{
		font-size:1rem !important ;
	}
	.containerAbout .card .imgBox img{
		width:80px;
		padding-top: 30px !important;
		padding-left:10px !important;
	}
	.containerAbout .card .imgBox img{
		width:70px;
		padding-top: 30px !important;
		padding-left:10px !important;
	}
	.containerAbout .card .imgBox{
		width:95px;
		height: 100%;
		left: 0;
		background: #b2bec3;
	}
	.containerAbout .card .content h3{
		font-size:1.2rem !important;
		line-height: 20px;
	}
	.containerAbout .card .content p{
		font-size:0.9rem !important;
		line-height: 15px;
	}
	.us{
		flex-direction: column;
	}
}
@media (max-width:640px){
	.ourWork .us{
		width: 85%;
		padding: 40px 20px !important;
	}
	.gallery-container{
		columns:3;
	}
	.isoimage,.isoimageEn{
		top: 8%;
		width: 140px;
	}
	.containerAbout .card{
		position: relative;
		height: 200px;
		display: flex;
		width: 45%;
		margin: 30px 10px;
		box-shadow: 2px 2px 10px 0.2px rgba(0, 0, 0, 0.2);
	}
	.containerAbout .card .content{
		position: absolute;
		right: 0;
		width: calc(95% - 85px);
		height: 100%;
		padding: 10px;
		display: flex;
		justify-content:center;
		align-items:center ;
	}
	.containerAbout .card .imgBox{
		width:80px;
		height: 100%;
		left: 0;
		background: #a1c6d5;
	}
	.containerAbout .card .imgBox::before{
		content: attr(data-text);
		overflow: hidden;
		position: absolute;
		bottom: 0;
		left: 5%;
		text-align: center;
		font-size:2.5rem;
		font-weight: 700;
	}
	.containerAbout .card .imgBox img{
		width:70px;
		padding-top: 30px !important;
		padding-left:10px !important;
	}
	.containerAbout .card .content h3{
		font-size:1.1rem !important;
		line-height: 20px;
	}
	.containerAbout .card .content p{
		font-size:0.8rem !important;
		line-height: 15px;
	}
	.us{
		flex-direction: column;
	}
	.grid-container {
		grid-template-columns: repeat(1, 1fr);
	}
}
@media (max-width:480px){
	.grid-container {
		grid-template-columns: repeat(1, 1fr);
	}
	.ourWork .us{
		width: 90%;
		padding: 40px 20px !important;
		margin: 20px auto;
	}
	.isoimage {
		top:8%
}
	.isoimageEn {
		top:7%
}
	.containerAbout{
		display: flex;
		flex-direction: column;
	}
	.containerAbout .card .content h3{
		font-size:1.1rem !important;
	}
	.containerAbout .card .content p{
		font-size:0.8rem !important;
	}
	.containerAbout .card{
		width: 90%;
	}
	.gallery-container{
		columns:2;
	}
}
@media (max-width:320px){
	.ourWork .us{
		width: 75%;
		background: rgba(255, 251, 251, 0.463);
		box-shadow: rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
		padding: 40px 35px !important;
		margin: 20px auto;
	}
	.isoimage {
		top:8%;
	}
	.isoimageEn {
		top:7%;
	}
	.gallery-container{
		columns:1;
	}
}
/*===============================================*/
/* 4. SECTION */
/*===============================================*/
/* BLOCK - section */
.glightbox-clean .gdesc-inner {
	padding: 0px !important;
	width: 100%;
}
.glightbox-clean .gslide-desc{
	border-radius: 10px !important;
	font-size: 0.85rem !important;
	color: #141414 !important;
	font-weight: 400;
}
.glightbox-container .gcontainer{
	background-color: #5c5c5cac !important;
	width: 100vw;
}
.glightbox-clean .gclose{
	border-radius: 50%!important;
	background-color: #111111b9;
}
.glightbox-mobile .glightbox-container .gslide-description {
	height: auto!important;
	width: auto !important;
	position: relative !important;
	bottom: 0;
	padding: 0 !important;
	max-width: 100vw!important;
	-webkit-box-ordinal-group: 3!important;
	-ms-flex-order: 2!important;
	order: 2!important;
	max-height: auto !important;
	overflow: auto!important;
	background: none !important;
	-webkit-transition: opacity .3s linear;
	transition: opacity .3s linear;
	padding-bottom: 50px;
	margin:0 auto!important;
}
@media (min-width: 634px) and (max-width: 756px){
	.glightbox-container .gcontainer{
		background-color: #ffffffb3 !important;
		width: 100vw;
	}
	.gslide-image img.zoomable {
		position:absolute;
		top:1px;
	}
	.glightbox-clean .gslide-desc{
		font-size: 0.8rem !important;
		color: #111111 !important;
		font-weight: 400;
	}
	.glightbox-container .ginner-container{
		justify-content: flex-start !important;
	}
	.glightbox-clean .gdesc-inner{
		margin: 10px;
	}
}
@media (min-width: 300px) and (max-width: 400px){
	.glightbox-container .gcontainer{
		background-color: #ffffff !important;
		width: 100vw;
	}
	.glightbox-container .gslide-inner-content{
		display: flex !important;
		flex-direction: column !important;
	}
	.glightbox-container .ginner-container{
		justify-content: flex-start!important;
		margin-top: 30px !important;
	}
	.gslide-media{
		margin-top: 20px;
	}
	.glightbox-clean .gslide-desc{
		line-height:1.2px !important;
		font-size: 0.85rem !important;
		color: #111111 !important;
		font-weight: 400;
	}
	.gslide-desc p{
		line-height: 1.3;
	}
}
@media (min-width: 400px) and (max-width: 550px){
	.glightbox-container .gcontainer{
		background-color: #ffffff !important;
		width: 100vw;
	}
	.glightbox-container .gslide-inner-content{
		display: flex !important;
		flex-direction: column !important;
	}
	.glightbox-container .ginner-container{
		justify-content: flex-start!important;
	}
	.glightbox-mobile .glightbox-container .gslide-description {
		display: flex;
		position: absolute;
		bottom: 30px!important;
		justify-content: center;
		margin-top: 8px !important;
		padding: 8px !important;
	}
	.glightbox-clean .gdesc-inner{
		margin: 0px;
	}
	.gslide-media{
		margin: auto!important;
		margin-top: 0px;
		width: 85% !important;
	}
	.glightbox-clean .gslide-desc{
		width: 100vw;
		font-size: 0.8rem !important;
		color: #111111 !important;
		font-weight: 400;
	}
}
@media (min-width: 551px) and (max-width: 768px){
	.glightbox-container .gcontainer{
		background-color: #ffffff !important;
		width: 100vw;
	}
	.glightbox-container .gslide-inner-content{
		display: flex !important;
		flex-direction: column !important;
	}
	.glightbox-container .ginner-container{
		justify-content: flex-start!important;
	}
	.glightbox-mobile .glightbox-container .gslide-description {
		display: flex;
		position: absolute;
		bottom: 30px!important;
		justify-content: center;
		margin-top: 8px !important;
		padding: 8px !important;
	}
	.glightbox-clean .gdesc-inner{
		margin: 0px;
	}
	.gslide-media{
		margin: auto!important;
		margin-top: 0px;
		width: 65% !important;
	}
	.glightbox-clean .gslide-desc{
		width: 100vw;
		font-size: 0.8rem !important;
		color: #111111 !important;
		font-weight: 400;
	}
}
.btnHome{
	font-family: "Space Grotesk", sans-serif ;
	background-color: #ffffff;
	margin: 30px 0;
	border: solid 1.5px #cb1818;
	padding: 6px 10px;
	color: #cb1818;
	font-weight: 500;
}
.btnHome:hover{
	background-color:#cb1818 ;
	color:white;
	border: solid 1.5px #ffffff;
}
.btnHome.appear {
	animation: fadeInRight 1s ease-in-out;
	animation-fill-mode: forwards;
	/* Mantiene el estado final de la animación */
	animation-delay: 2s;
	/* Ajusta el tiempo de retraso según tus preferencias */
}
.arrow-down {
	position: absolute;
	bottom: 40px;
	width: 0;
	height: 0;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-top: 20px solid #cb1818ba ;
	/* color de la flecha */
	margin: 0 auto;
	animation: arrowBounce 1.5s ease-in-out infinite;
	opacity: 1;
	/* Inicialmente visible */
	transition: opacity 0.5s;
	/* Transición suave de opacidad */
}
.hide {
	opacity: 0;
	/* Oculta la flecha */
}
@keyframes arrowBounce {
	0%, 100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(10px);
	}
}
/* Animación de aparición con fade y movimiento de izquierda a derecha */
@keyframes fadeInRight {
	from {
		opacity: 2px;
		transform: translateX(-50%);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}
/* Aplicar la animación al h2 con un retraso de 1 segundo */
h2.appear {
	animation: fadeInRight 1s ease-in-out;
	animation-fill-mode: forwards;
	/* Mantiene el estado final de la animación */
	animation-delay: 1s;
	/* Ajusta el tiempo de retraso según tus preferencias */
}
/* The typing effect */
@keyframes typing {
	from {
		width: 0 
}
	to {
		width: 100% 
}
}
/* The typewriter cursor effect */
@keyframes blink-caret {
	from, to {
		border-color: transparent 
}
	50% {
		border-color: orange;
	}
}

.newModal{
	z-index: 999!important;
}
/*CONTACT*/
.contactContainer {
	position: relative;
	width: 100%;
	min-height: 100vh;
	padding: 2rem;
	background-color: #fafafa;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}
.contactContainer h3{
	padding-bottom: 0;
}
.contactContainer p{
	font-weight: 400;
}
.form {
	width: 100%;
	max-width: 820px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 0 20px 1px rgba(0, 0, 0, 0.1);
	z-index: 20;
	overflow: hidden;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.contact-form {
	background-color: #bc1a1a;
	position: relative;
}
.circle {
	border-radius: 50%;
	background: linear-gradient(135deg, transparent 20%, #921414);
	position: absolute;
}
.circle.one {
	width: 130px;
	height: 130px;
	top: 130px;
	right: -40px;
}
.circle.two {
	width: 80px;
	height: 80px;
	top: 10px;
	right: 30px;
}
.contact-form:before {
	content: "";
	position: absolute;
	width: 26px;
	height: 26px;
	background-color: #bc1a1a;
	transform: rotate(45deg);
	top: 50px;
	left: -13px;
}
form {
	padding: 2.3rem 2.2rem;
	z-index: 10;
	overflow: hidden;
	position: relative;
}
.title {
	color: #fff;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1;
	margin-bottom: 0.7rem;
}
.input {
	margin-bottom:12px;
	width: 100%;
	height: 2rem;
	outline: none;
	border: 1.7px solid #fafafa;
	background: none;
	padding: 0.6rem 1.2rem;
	color: #fff;
	font-weight: 500;
	font-size: 0.95rem;
	letter-spacing: 0.5px;
	border-radius: 25px;
	transition: 0.3s;
}
.input::placeholder{
	color:rgba(255, 255, 255, 0.765)
}
.error-message {
	color: rgb(209, 189, 4);
	padding-left: 20px;
	margin-top: -5px;
	margin-bottom: 5px;
	font-weight: 800;
	font-size: 0.6rem;
	font-family: "Space Grotesk", sans-serif ;
	display: block;
}
textarea.input {
	padding: 0.8rem 1.2rem;
	min-height: 150px;
	border-radius: 22px;
	resize: none;
	overflow-y: auto;
}
.contactContainer .btn {
	padding: 0.6rem 1.3rem;
	background-color: #fff;
	border: 2px solid #fafafa;
	font-size: 0.95rem;
	font-weight: 600;
	color: #bc1a1a;
	line-height: 1;
	border-radius: 25px;
	outline: none;
	cursor: pointer;
	transition: 0.3s;
	margin: 0;
}
.contactContainer .btn:hover {
	background-color: transparent;
	color: #fff;
}
.input-container span {
	position: absolute;
	top: 0;
	left: 10px;
	transform: translateY(-50%);
	font-size: 0.8rem;
	padding: 0 0.4rem;
	color: transparent;
	pointer-events: none;
	z-index: 25;
}
.input-container span:before,.input-container span:after {
	content: "";
	position: absolute;
	width: 15%;
	opacity: 0;
	transition: 0.3s;
	height: 8px;
	background-color: #bc1a1a;
	top: 50%;
	transform: translateY(-50%);
}
.input-container span:before {
	left: 50%;
}
.input-container span:after {
	right: 50%;
}
.input-container.focus label {
	top: 0;
	transform: translateY(-50%);
	left: 12px;
	font-size: 0.8rem;
}
.input-container.focus span:before,.input-container.focus span:after {
	width: 50%;
	opacity: 1;
}
.contact-info {
	padding: 2.3rem 2.2rem;
	position: relative;
}
.contact-info .title {
	color: #bc1a1a;
}
.text {
	color: #333;
	margin: 1rem 0 2rem 0;
}
.information {
	display: flex;
	color: #555;
	margin: 0.7rem 0;
	align-items: center;
	font-size: 0.95rem;
}
.information a{
	font-size: 0.95rem;
}
.icon {
	width: 1rem;
	margin-right: 0.7rem;
}
.social-media {
	padding: 2rem 0 0 0;
}
.social-media p {
	color: #333;
}
.social-icons {
	display: flex;
	margin-top: 0.5rem;
}
.social-icons a {
	width: 35px;
	height: 35px;
	border-radius: 40px;
	background: linear-gradient(45deg, #bc1a1a, #921414);
	color: #fff;
	text-align: center;
	line-height: 35px;
	margin-right: 0.5rem;
	transition: 0.3s;
}
.social-icons a:hover {
	transform: scale(1.05);
}
.contact-info:before {
	content: "";
	position: absolute;
	width: 110px;
	height: 100px;
	border: 22px solid #bc1a1a;
	border-radius: 50%;
	bottom: -77px;
	right: 50px;
	opacity: 0.3;
}
@media (max-width: 800px) {
	.containerDat {
		width: 320px;
		/* Mueve .imgData hacia la derecha 200px al hacer hover sobre .imgCont */
	}
	.containerDat .imgData {
		left: 55%;
		/* Mueve .imgData hacia la derecha 200px al hacer hover sobre .imgCont */
	}
	.containerDat .imgCont {
		left:0;
		/* Mueve .imgData hacia la derecha 200px al hacer hover sobre .imgCont */
	}
}
@media (max-width: 600px) {
	.bg_image h1{
		font-size: 2rem;
	}
	.bg_image h2{
		font-size: 1.2rem;
	}
	.form {
		grid-template-columns: 1fr;
	}
	.contact-info:before {
		bottom: initial;
		top: -75px;
		right: 65px;
		transform: scale(0.95);
	}
	.contact-form:before {
		top: -13px;
		left: initial;
		right: 70px;
	}
	.text {
		margin: .8rem 0 1.5rem 0;
	}
	.social-media {
		padding: 1.5rem 0 0 0;
	}
}
@media (max-width: 480px) {
	.imgCont{
		
		position: absolute;
		z-index:3;
		background-color:#ffffff;
		box-shadow: 0 10px 20px rgba(0,0,0,0.05);
		transition: left 1s ease;
	}
	.imgData {
		text-align: center;
		position: absolute;
		top:0;
		z-index: 1;
		transition: left 1s ease;
		/* Agrega transición para el efecto */
	}
	.containerDat .imgData {
		left:50%;
		/* Mueve .imgData hacia la derecha 200px al hacer hover sobre .imgCont */
	}
	.containerDat .imgCont {
		left:-5%;
		/* Mueve .imgData hacia la derecha 200px al hacer hover sobre .imgCont */
	}
	.container {
		padding: 1.5rem;
	}
	.contact-info:before {
		display: none;
	}
	form,.contact-info {
		padding: 1.7rem 1.6rem;
	}
	.text,.information,.social-media p {
		font-size: 0.8rem;
	}
	.title {
		font-size: 1.15rem;
	}
	.social-icons a {
		width: 30px;
		height: 30px;
		line-height: 30px;
	}
	.input {
		padding: 0.45rem 1.2rem;
	}
	.contactContainer .btn {
		padding: 0.45rem 1.2rem;
	}
}
@media (max-width: 350px) {
	.imgCont{
		position: absolute;
		z-index:3;
		background-color:#ffffff;
		box-shadow: 0 10px 20px rgba(0,0,0,0.05);
		transition: left 1s ease;
	}
	.imgData {
		text-align: center;
		position: absolute;
		top:0;
		z-index: 1;
		transition: left 1s ease;
		/* Agrega transición para el efecto */
	}
	.containerDat .imgData {
		left: 50%;
		/* Mueve .imgData hacia la derecha 200px al hacer hover sobre .imgCont */
	}
	.containerDat .imgCont {
		left:-8%;
		/* Mueve .imgData hacia la derecha 200px al hacer hover sobre .imgCont */
	}
}
/*===============================================*/
/* 8. FOOTER */
/*===============================================*/
/* BLOCK - footer */
footer {
	left: 0;
	bottom: 0;
	right: 0;
	padding-bottom: 20px;
	background: #ab1717;
	color: #f9f9f9;
}
footer article {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 50px 40px;
	margin: -99px 20px 20px;
	border-radius: 10px;
	background: linear-gradient(90deg, #773ecb, #2663ff);
}
footer article h2 {
	font-weight: 400;
	color: rgb(255 255 255 / 70%);
}
footer article button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 0 40px 0 44px;
	width: 100%;
	background: #ac0000;
	border: 0;
	border-radius: 30px;
	color: #f9f9f9;
	font-family: inherit;
	font-size: 16px;
}
footer section {
	padding: 0 50px;
}
section.top {
	padding-top: 30px;
	margin-bottom: 48px;
}
section.top img {
	display: block;
	height: 30px;
	margin: 0 0 30px;
}
section.top ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 30px;
	grid-template-columns: repeat(2, 1fr);
}
@media (width > 480px) {
	footer article button {
		width: 70%;
	}
	section.top ul {
		padding-right: 10%;
	}
}
@media (width > 600px) {
	footer article {
		flex-direction: row;
		min-height: 140px;
		margin: -70px 20px 20px;
		padding: 30px 50px 30px;
	}
	footer article button {
		width: auto;
		padding: 0 20px 0 24px;
	}
	section.top ul {
		grid-template-columns: repeat(4, 1fr);
		padding-right: 0;
	}
}
section.top ul li a {
	display: block;
	margin-bottom: 10px;
	color: rgb(255 255 255 / 90%);
}
section.top h3 {
	color: rgb(255 255 255 / 40%);
	font-weight: 400;
	text-transform: uppercase;
	font-size: 12px !important;
	padding-bottom: 12px !important;
	letter-spacing: 1px;
}
section.bottom {
	padding-top: 10px;
	border-top: 2px solid rgb(255 255 255 / 10%);
	color: rgb(255 255 255 / 40%);
	font-size: 13px;
}
.socials {
	width: 150px;
	display: flex;
	justify-content: space-around;
}
.venturing_logo {
	height: 40px;
}
/*===============================================*/
/* 9. MEDIA QUERIES */
/*===============================================*/
/*===============================================*/
/* Laptops max 1400 px */
/*===============================================*/
/*Tablets and Mobile - Portrait - max 1024 px */
/*===============================================*/
/*===============================================*/
/* Tablets Landscape */
/*===============================================*/
/*===============================================*/
/* Mobile 800 */
/*===============================================*/
/*===============================================*/
/* Mobile Landscape max 800 */
/*===============================================*/
@media screen and (max-width: 800px) and (orientation: landscape) {
	.intro {
		padding: 10% 0 0 0;
	}
}
/*===============================================*/
/* Smaller Mobile 680 */
/*===============================================*/
@media screen and (max-width: 680px) {
	.btn {
		padding: 8px 15px;
		margin: 0 5px;
	}
	.venturing_logo {
		height: 40px;
	}
}
/*===============================================*/
/* Smaller Mobile Portrait max 680 */
/*===============================================*/
@media screen and (max-width: 680px) and (orientation: landscape) {
	.venturing_logo {
		height: 40px;
	}
}
.imgCont{
	display: flex;
	flex-direction: column;
	position: absolute;
	left: 20%;
	z-index:3;
	background-color:#fbfbfb;
	box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px;
	transition: left 1s ease;
}
.imgData {
	padding: 5px;
	text-align: center;
	background-color:#f1f0f0ba;
	position: absolute;
	left:20%;
	top:0;
	z-index: 1;
	transition: left 1s ease;
	/* Agrega transición para el efecto */
}
.containerDat:hover .imgData {
	left: 63%;
	/* Mueve .imgData hacia la derecha 200px al hacer hover sobre .imgCont */
}
.containerDat:hover .imgCont {
	left: 0;
}