/* Modal Index */
.modal-index
{
	width: 90%;
	background-color: var(--color-2);
	color: #ffffff;
}

.modal-index .swal2-html-container
{
	margin-left: 0;
	margin-right: 0;
}

.modal-index .swal2-title,
.modal-index .info
{
	margin-left: 1rem;
	margin-right: 1rem;
}

.modal-index .img-modal
{
	width: 100%;
}

.modal-index .img-modal img
{
	width: 100%;
}

@media (min-width: 767px)
{
	.modal-index
	{
		width: 50%;
	}

}

/*  Hero Section - Carousel*/
section#hero
{
	width: 100%; 
	height: 100vh;
	min-height: 500px;
}

#hero .owl-carousel .item
{
	width: 100%;
	height: 100vh;
	min-height: 700px;
}

#hero .owl-carousel .owl-nav
{
	width: 100%;
	height: 0%;
	position: absolute;
	top: 0;
	padding: 1rem;
	display: flex;
	justify-content: space-between;
	fill: #ffffff;
	opacity: 0.4;
}
#hero .owl-carousel .owl-nav > button
{
	height: 100vh;
	min-height: 500px;
}

#hero .bg-image
{
	width: 100%;
	height: 100vh;
	min-height: 500px;
	position: absolute;
	top: 0;
}
#hero .bg-image img
{
	height: 100%;
	object-fit: cover;
}

#hero .cont-gradient-menu
{
	width: 100%;
	height: 100px; 
	position: absolute;
	top: 0;
	background: rgba(15,41,84, 0.5);
	background: -moz-linear-gradient(0deg, rgba(15,41,84, 0) 0%, rgba(15,41,84, 0.7) 100%);
	background: -webkit-linear-gradient(0deg, rgba(15,41,84, 0) 0%, rgba(15,41,84, 0.7) 100%);
	background: linear-gradient(0deg, rgba(15,41,84, 0) 0%, rgba(15,41,84, 0.7) 100%);
}

#hero .cont-gradient-info
{
	width: 70%;
	height: 100%; 
	position: absolute;
	top: 0;
	background: rgba(15,41,84, 0.5);
	background: -moz-linear-gradient(90deg, rgba(15,41,84, 0.7) 0%, rgba(15,41,84, 0) 100%);
	background: -webkit-linear-gradient(90deg, rgba(15,41,84, 0.7) 0%, rgba(15,41,84, 0) 100%);
	background: linear-gradient(90deg, rgba(15,41,84, 0.7) 0%, rgba(15,41,84, 0) 100%);
}

#hero .bg-opacity
{
	width: 100%;
	height: 100%;
	background-color: var(--color-2);
	opacity: 0.7;
	position: absolute;
	top: 0;
	z-index: 2;
}

#hero .info
{
	width: 100%;
	height: 100%;
	color: #ffffff;
	position: relative;
	z-index: 7;
}

#hero .info .container
{
	height: 100%;
	margin-top: -30px;
	display: flex;
	justify-content: center;
	flex-direction: column;
}


#hero .info h2,
#hero .info .line-title,
#hero .info p,
#hero .info a.cta-link
{
	max-width: 630px;
	margin-left: 4rem;
}

#hero .info h2
{
	font-size: var(--text-1);
	font-family: font1-extrabold;
	letter-spacing: 6px;
}

#hero .info .line-title
{
	width: 100px;
	height: 4px;
	margin-top: 1.3rem;
	margin-bottom: 1.7rem;
	border-radius: 100px;
	background-color: var(--color-1);
}

#hero .info p
{
	font-size: var(--text-7);
	margin-bottom: 1rem;
}

#hero .info a.cta-link
{
	font-size: var(--text-6);
	color: var(--color-1);
}

#hero .info a.cta-link img
{
	display: inline-block;
    width: auto;
    transition: 0.3s;
}

#hero .info a.cta-link:hover img
{
	transform: translateX(10px);
}

@media (max-width: 766px)
{

	#hero .info .container
	{
		height: 70%;
		align-items: center;
	}

	#hero .info h2,
	#hero .info .line-title,
	#hero .info p,
	#hero .info a.cta-link
	{
		text-align: center;
		margin: 0;
	}

	#hero .info .line-title
	{
		margin-top: 1.3rem;
		margin-bottom: 1.7rem;
	}

	#hero .info h2
	{
		font-size: var(--text-4);
	}

	#hero .info p
	{
		padding-left: 3rem;
		padding-right: 3rem;
		font-size: initial;
	}

	#hero .info a.cta-link
	{
		margin-top: 1rem;
	}
}


/*  Curva Open */
.curva1
{
	width: 100%;
	margin-top: -43.3vh;
	position: relative;
	z-index: 2;
	display: block;
}

.curva2
{
	width: 100%;
	display: block;
	margin-top: -70px;
	position: relative;
	z-index: 2;
}

.curva1 img,
.curva2 img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border: none;
	margin: -3px 0;
}

.curva1 .dots-hero 
{
	width: 100%;
	height: 100%;
	margin-top: 50px;
	padding-right: 7%;
	position: absolute;
	top: 0;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.curva1 .dots-hero .container
{
	position: relative;
}

.curva1 .dots-hero > div
{
	width: 100%;
	text-align: right;
}

.curva1 .dots-hero button
{
	width: 7px;
    height: 7px;
    margin: 5px 18px;
    background: rgba(0,0,0,0.4);
    display: inline-block;
    -webkit-backface-visibility: visible;
    transition: opacity .2s ease;
    border-radius: 30px;

    transition: 0.3s;
}

/*.curva1 .dots-hero button:hover, */
.curva1 .dots-hero button.active
{
	width: 12px;
	height: 12px;
    background: #ffffff;
}

.curva1 .dots-hero > div.mincultura
{
	width: 150px;
	position: absolute;
	top: 0px;
	bottom: 0;
	right: 0px;
	margin: 0 auto;
	margin-top: -100px;
}

.curva1 .mincultura img
{
	width: 100%;
	/*margin-top: -40px;*/
	object-fit: contain;
}


/*  Cita   */
#cita
{
	width: 100%;
	overflow: hidden;
	padding: 70px 1rem;
	background-color: var(--color-1);
	display: flex;
	align-items: center;
	flex-direction: column;
	position: relative;
	z-index: 1;
}

#cita .comillas
{
	height: 30px;
}
#cita .comillas img
{
	height: 100%;
	object-fit: contain;
}

#cita p
{
	width: 100%;
	max-width: 700px;
	padding: 1rem;
	font-family: font1-bold;
	color: var(--color-2);
	font-size: var(--text-4);
	text-align: center;
}

#cita .autor
{
    width: 100%;
	font-family: font2-freepen;
	color: var(--color-2);
	margin-top: 40px;
	transform: rotate(-5deg);
}


#cita .autor .eco,
#cita .autor .firma
{
	width: 100%;
	font-size: 80px;
	text-align: right;
	position: relative;
	bottom: 0;
	right: 1rem;
}

#cita .autor .eco
{	
	position: absolute;
	bottom: 0;
	transform: translateX(-50%) scale(2.5);
	opacity: 0.1;
	
}

@media (min-width: 767px)
{
	.curva2
	{
		margin-top: -170px;
	}

	#cita .comillas
	{
		height: 50px;
	}

	#cita p
	{
		font-size: var(--text-3);
	}
	
	.curva1 .dots-hero > div.mincultura
	{
		width: 200px;
		margin-top: -100px;
	}
}

/*  Seccion Que hacemos */
#que-hacemos
{	
	width: 100%;
	background-color: var(--color-5);
	margin-top: -100px;
	padding-top: 200px;
}

#que-hacemos .zigzag
{
	background-image: url(../../assets/img/web/global/zigzag1-h.png);
	background-size: auto 100%;
	height: 90px;
	width: 100%;
}

#que-hacemos .container
{
	display: flex;
	align-items: center;
	flex-direction: column;
}

#que-hacemos .info
{
	width: 90%;
	max-width: 550px;
	height: 100%;
	background-color: rgba(15,41,84, 0.95);
	padding: 1.4rem 1.2rem;
	border-radius: 4px;
	margin-top: -70px;
	position:relative;
}

#que-hacemos .info p
{
	padding-bottom: 10px;
}

#que-hacemos .info a
{
	display: block;
	text-align: right;
	color: var(--color-1);
	font-size: var(--text-7);
	padding-top: 10px;
}

#que-hacemos .info a img
{
	transition: 0.3s;
}

#que-hacemos .info a:hover img
{
	transform: translateX(10px);
}

#que-hacemos .image
{

	width: 100%;
	max-width: 700px;
	margin-top: -170px;
	padding: 1rem;
}

#que-hacemos .image img
{
	width: 100%;
	object-fit: contain;
}

@media (min-width: 767px)
{
	#que-hacemos .container
	{
		padding-left: 1rem;
		flex-direction: row-reverse;
	}

	#que-hacemos .info
	{
		margin-top: 0;
		margin-right: -200px;
	}
}

@media (min-width: 992px)
{

	#que-hacemos .image
	{
		margin-right: 100px;
	}

}

/*  Seccion gropos de la fundacion  */
#grupos
{
	width: 100%;
	height: 100%;
	background-color: var(--color-5);
	padding: 3rem 1rem;
	color: var(--color-2);
	text-align: center;
	position: relative;

}

#grupos .container
{
	display: flex;
	flex-direction: column;
}

#grupos .info
{
	padding: 0 1rem 2rem;
	font-size: var(--text-7);
}

#grupos .grupo 
{
	width: 100%;
	background-color: #ffffff;
	border-radius: 3px;
	padding: 2rem;
	margin-bottom: 2rem;
	box-shadow: 0 7px 10px rgba(0,0,0,0.1);
	position: relative;
	z-index: 1;
}

#grupos .grupo p
{
	padding-top: 1rem;
}

#grupos .grupo a
{
	display: block;
	text-align: right;
	color: var(--color-1);
	font-family: font1-medium;
	font-size: var(--text-7);
	padding-top: 10px;
}

#grupos .grupo a img
{
	transition: 0.3s;
}

#grupos .grupo a:hover img
{
	transform: translateX(10px);
}


#grupos .grupo .logo
{
	width: 100%;
}

#grupos .grupo .logo img
{
	width: 100%;
	object-fit: contain;
}

#grupos .zigzag
{
	height: 90px;
	width: 100%;
	background-image: url(../../assets/img/web/global/zigzag1-h.png);
	background-size: auto 100%;
	margin-top: -50px;
	position: absolute;
	left: 0;
	bottom: 30px;
}


@media (min-width: 767px)
{
	#grupos .container
	{
		flex-direction: row;
		font-size: var(--text-7);

	}

	#grupos .col-1, 
	#grupos .col-2 
	{
		padding: 0 2rem;
	}

	#grupos .info,
	#grupos .grupo p
	{
		font-size: var(--text-6);
	}

	#grupos .zigzag
	{
		bottom: 200px;
	}
}

/*  Seccion Por que nosotros  */
#porque-nosotros
{
	width: 100%;
	height: 100%;
	background-color: var(--color-5);
	padding: 0 1rem 3rem;
	position: relative;
}

#porque-nosotros .cuadrado-lineas
{
	position: absolute;
	top: 0;
	margin-left: 20%;
}

#porque-nosotros .container
{
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	z-index: 1;
}

#porque-nosotros .imagen
{
	width: 90%;
	position: relative;
	z-index: 3;
}

#porque-nosotros .imagen img
{
	width: 100%;
	object-fit: contain;
}

#porque-nosotros .info
{
	width: 100%;
	padding: 100px 1.7rem 2rem;
	margin-top: -80px;
	border-radius: 3px;
	background-color: var(--color-1);
	color: var(--color-2);
	text-align: center;
	position: relative;
	z-index: 2;
}

#porque-nosotros .info h2
{
	font-family: font1-bold;
	font-size: var(--text-4);
}

#porque-nosotros .info .line-title
{
	height: 10px;
	margin: 0.5rem 0 1.7rem;
}

#porque-nosotros .info .line-title img
{
	height: 100%;
}

#porque-nosotros .info p
{
	max-width: 500px;
	margin: 0 auto;
}


#porque-nosotros .zigzag-vertical
{	
	width: 120px;
	height: 400px;
	position: absolute;
	left: -50px;
	z-index: 1;
	bottom: -70%;
	background-image: url(../../assets/img/web/global/zigzag2-v.png);
	background-size: 100% auto;
}


#porque-nosotros .fondo-azul
{
	width: 100%;
	height: 50%;
	background-color: var(--color-2);
	position: absolute;
	left: 0;
	bottom: 0;
}

@media (min-width: 767px)
{
	#porque-nosotros .container
	{
		flex-direction: row;
	}

	#porque-nosotros .imagen
	{
		width: 100%;
		height: 100%;
		margin-right: -120px;
	}

	#porque-nosotros .imagen img
	{
		max-height: 250px;
		object-position: right;
	}

	#porque-nosotros .info
	{
		padding: 4rem 1.7rem;
		padding-left: 150px;
		margin-top: 0;
		text-align: left;
	}

	#porque-nosotros .info p
	{
		margin: 0;
	}
}


@media (min-width: 992px)
{
	#porque-nosotros .info
	{
		padding: 7rem 1.7rem;
		padding-left: 150px;
	}

	#porque-nosotros .info h2
	{
		font-size: var(--text-3);
	}

	#porque-nosotros .info p
	{
		font-size: var(--text-7);
	}

}


/*  Sección testimonios */
#testimonios
{
	width: 100%;
	color: #ffffff;
	margin-top: -200px;
	position: relative;	
}

#testimonios .container
{
	height: 100%;
	position: relative;
}

#testimonios .degradado
{
	display: none;
	width: 300px;
	height: 100%;
	position: absolute;
	top: 200px;
	right: 0;
	z-index: 1;
	background: rgba(15,41,84, 0.5);
	background: -moz-linear-gradient(90deg, rgba(15,41,84, 0) 0%, rgba(15,41,84, 1) 90%);
	background: -webkit-linear-gradient(90deg, rgba(15,41,84, 0) 0%, rgba(15,41,84, 1) 90%);
	background: linear-gradient(90deg, rgba(15,41,84, 0) 0%, rgba(15,41,84, 1) 90%);
}

#testimonios .degradado svg
{
	display: none;
	float: right;
	cursor: pointer;
	margin-top: 50px;
	margin-right: 100px;
	fill: #ffffff;
}

#testimonios .owl-carousel
{
	width: 100%;
	padding-top: 220px;
	display: block;
}

#testimonios .owl-carousel .item
{
	padding-left: 100px;
	padding-right: 1rem;
	text-align: center;
	font-size: var(--text-7);
}

#testimonios .autor
{
	padding-top: 1.3em;
}

#testimonios .autor .line
{
	width: 70px;
	height: 3px;
	margin-right: 7px;
	display: inline-block;
	background-color: var(--color-1);
	border-radius: 100px;
	vertical-align: middle;
}

#testimonios .autor
{
	width: 100%;
	display: flex;
	flex-direction: column;
	text-align: right;
}

#testimonios .nombre
{
	font-size: var(--text-6);

}

#testimonios .autor span
{
	font-size: var(--text-8);
}

@media (min-width: 767px)
{
	#testimonios .degradado
	{
		display: initial;
	}

	#testimonios .owl-carousel .item
	{
		font-size: var(--text-5);
	}

	#testimonios .degradado svg
	{
		display: initial;
	}
}

@media (min-width: 992px)
{
	#testimonios .owl-carousel .item
	{
		padding-left: 200px;
	}
}

/*  Sección Aliados estrategicos  */
#aliados
{
	width: 100%;
	background-color: var(--color-4);
	text-align: center;
	position: relative;
	z-index: 2;
	padding: 70px 1rem 100px;
	margin-top: 35px;
}

#aliados .container
{
	display: flex;
	flex-direction: column;
	align-items: center;
}

#aliados h2
{
	font-family: font1-extrabold;
	font-size: var(--text-4);
	color: var(--color-2);
}

#aliados .line
{
	margin: 0.6rem 0 1.5rem;
}

#aliados .line img
{
	width: 100%;
	object-fit: contain;
}

#aliados .logos
{
	width: 100%;
}

#aliados .logo
{
	width: 40%;
	margin: 0 2rem 2rem;
	display: inline-block;
	filter: grayscale(100);
	opacity: 0.9;
	transition: 0.3s;
}

#aliados .logo:hover
{
	filter: grayscale(0);
	opacity: 1;
	transform: scale(1.03);
}

#aliados .logo img
{
	width: 100%;
	object-fit: contain;
}

@media (min-width: 767px)
{
	#aliados .logo
	{
		width: 220px;
	}

	#aliados h2
	{
		font-size: var(--text-3);
	}

	#aliados .line
	{
		margin: 1rem 0 2rem;
	}
}