@charset "utf-8";
body {
  overflow-x: hidden;
}
/*geometría medium*/
@font-face {
  font-family: 'Geometria Bold';
  src: url("../assets/fonts/Geometria-Bold.ttf");
}


/*geometría*/
@font-face {
  font-family:'Geometria';
  src: url("../assets/fonts/Geometria.ttf");
}


/*geometría Medium*/
@font-face {
  font-family:'Geometria Medium';
  src: url("../assets/fonts/Geometria-Medium.ttf");
}
/* CSS Document */
@media (max-width: 991px) {
	#header {
		
		margin-top:-70px !important;
		z-index: 2000; 
			height: 50px !important;
		background-color: #232323 !important;
	}
	.imagenmedidas{
		max-width: 90%; }
	
}

@media (min-width: 992px) {
	
	.imagenmedidas{
		max-width: 700px;
	margin-left:16%; }
	
	#header {
		background-color: white !important;
		height: 160px !important;
		width: 100% !important;
		margin-top: 0 !important; /* Evitamos moverlo hacia arriba */
		position: fixed !important; /* Fija el header */
		top: 0; /* Lo pega a la parte superior */
		left: 0;
		z-index: 2000;
	}
	.main-nav{
		
		background-color:rgb(55, 171, 138) !important;
		height: 45px;
		margin-top:-65px !important;
		width: 80% !important; 
		text-align: right;
		width: 100% !important;
	}
	.minimal-menu
	{
		margin-top:10px; 
		margin-right: auto;
		margin-left: auto;
		width: 1000px !important;
	}
	
	header .container {
		width: 100% !important;
	}
	}
/*SECCION 1 PAGINA PROYECTOS*/

/* Estilo general */
@media (min-width: 768px) {
.seccion1 {
    display: flex;
    justify-content: center;
    padding: 20px;
	/*background-color: rgba(202, 28, 89, 0.9); /* 70% opacidad */
background-color: white;
}
}
@media (max-width: 768px) {
.seccion1 {
    display: flex;
    justify-content: center;
    padding: 50px;
	/*background-color: rgba(202, 28, 89, 0.9); /* 70% opacidad */
background-color: white;
	        margin-top: 70px !important;
	height: 620px;
}

.contenedor {
    max-width: 1000px;
    width: 100%;
    display: flex;
    flex-direction: column; /* ¡Cambio clave aquí! */
    gap: 20px;
    /* justify-content y align-items pueden ser útiles dependiendo del alineamiento vertical/horizontal general del contenedor */
    /* justify-content: center; */ /* Centra los ítems verticalmente en el contenedor */
    /* align-items: center; */ /* Centra los ítems horizontalmente si no ocupan el 100% del ancho */
}

/* Estilos para los elementos dentro del contenedor */
.contenedor > div { /* Asumiendo que tus elementos son divs, ajusta el selector según tu HTML */
    width: 100%; /* ¡Esencial para que cada elemento ocupe todo el ancho! */
    /* height: auto; */ /* Opcional, pero común para que el alto se ajuste al contenido */
    /* Agrega aquí cualquier otro estilo para tus elementos (ej. background-color, padding, etc.) */
}

}


.columna-izquierda {
    flex: 1;
    min-width: 300px; /* Esto asegura que ocupe al menos 300px en pantallas pequeñas */
    margin-right: 20px;
}

.columna-derecha {
    flex: 1;
    min-width: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
	
}

@media (min-width: 768px) {
    
    .contenedor {
    max-width: 1000px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}


  .texto-principal {
   
   
    
    color: #4B0B73;
    font-family: 'Geometria Medium';
    
    
    
    
    border-left: 8px solid #9D33A3;
	
   /* Añadido */
    height: 800px; /* O la altura que quieras para el borde */
   
	  
	  
	  font-size: 20px;
    display: flex;
    flex-direction: column;
   
    
    width: 490px;
    margin-top: -250px;
    margin-left: 0px;
    line-height: 0.5em;
    letter-spacing: normal;
    
    
   
 
    position: relative;
	  text-size-adjust: 100%;
	  text-align: justify;
  }

  .texto-principal p { 
	  position: absolute;
    top: 50%;         /* Centrado verticalmente */
    transform: translateY(-50%);
    margin-left: 40px;
    letter-spacing: normal;
	line-height: normal;
	  width: 470px;
  }
}



@media (max-width: 768px) {
.texto-principal {
    font-size: 15px;
    display: flex;
    flex-direction: column;
    color: #4B0B73;
    font-family: 'Geometria Medium';
	width: 300px;
	margin-top:250px;
	margin-left: -30px;
	margin-right: auto;
	line-height: 1.3em;
	letter-spacing: 0.03em;
	border-left: 8px solid #9D33A3;
	
	}
	.texto-principal p{margin: 0 0 0px;
        z-index: 200;
	margin-left: 18px;}
	
	.texto-principal {
	    margin-top: 50px;
	}
	
	
	
}

/*FRANJA VIOLETA*/
.divfila {
  width: 100%;
  background-color: #9D33A3; /* Lila */
     margin-top: -20px;
}

.otros-textos {
  display: flex;
  flex-direction: column;
  gap: 40px; /* Espacio entre bloques */
  max-width: 800px;
  margin: 0 auto;
	
	margin-left: calc(50% - 507px + 8px); /* Si tu .contenedor está centrado a 1000px */
}

.texto-secundario,
.matricula {
  display: flex;
  flex-direction: row;
  align-items: center; /* Alinea texto verticalmente respecto a línea */
  color: white;
}

.texto-secundario{
	font-family: 'Geometria Medium';
	
	
}
.matricula {
  margin-top:-50px; 
	font-family: 'Geometria';
	
}
@media (min-width: 768px) {
.linea {
  width: 7px;
  height: 200px;
 
	
  margin-right: 20px;
}
}


@media (min-width: 767px) {
.texto-secundario p,
.matricula p {
  margin: 0;
  line-height: 1.5em;
  letter-spacing: 0.03em;
  font-family: 'Geometria Medium', sans-serif;
	margin-left:20px;
}
}

@media (max-width: 768px) {
.linea {
  width: 7px;
  height: 200px;
 
	
  margin-right: 325px;
}
	.texto-secundario p,
.matricula p {
  margin: 0;
  line-height: 1.5em;
  letter-spacing: 0.03em;
  font-family: 'Geometria Medium', sans-serif;
	margin-left:0px;
}
.otros-textos {
    max-width: 700px;
}

}

.texto-secundario p {
  font-size: 15px;
}

.matricula p {
  font-size: 15px;
}

.linea2 {
  width: 8px;
  height: 200px;
  background-color: white;
  min-height: 150px;
  
}



@media (min-width: 768px) {
.imagen {
    width: 100%;
    height: auto;
    object-fit: cover;
	width: 571px;
    height: auto;
	
	margin-top: -280px;
	margin-left: 140px;
	
}
}

@media (max-width: 768px) {
.imagen {
       
           
        width: 100%;
        height: auto;
        object-fit: cover;
        height: auto;
        margin-top: -280px;
        margin-left: -300px;
        margin-right: 400px;
        clip-path: inset(20% 19% 10% 15%);
    
}
	
	
	.imagensola {
       
           
        width: 100%;
        height: auto;
       
       
        margin-top: -200px;
        margin-left: 50px;
        margin-right: auto;
        clip-path: inset(20% 19% 10% 15%);
    
}
}

/* Media Queries para pantallas pequeñas */
@media (max-width: 768px) {
    .contenedor {
        flex-direction: column;
    }

    .columna-izquierda, .columna-derecha {
       
    }
}


/*seccion dos con los 5 items COMO TRABAJAMOS*/

.section {
      max-width: 100%;
      margin: auto;
     
	background-color: #6f6f72;
    }

    .grid {
      display: grid;
		max-width: 1000px;
      grid-template-columns: 1fr 1fr;
	  margin-left: auto;
		margin-right: auto;
      gap: 2rem;
    }

    .col-1 {
      display: flex;
      flex-direction: column;
    }
@media (min-width: 768px) {
    .titulo {
    font-family: 'Geometria Bold';
    
    font-size: 8rem;
    line-height: 1.1;
    color: white;
		margin-top:150px;
		letter-spacing: 0em;
		margin-left: 40px;
  }



  .titulo .de {
    font-size: 6.7rem;
    display: inline-block;
    margin: 0 0.5rem;
    vertical-align: middle;
    color: white;
    margin-top: -10px;
  }

  .titulo .de .d {
    border-bottom: 6px solid white;
    padding-bottom: 0.1rem;
	   color: white;
  }

  .titulo .espacios {
    display: block;
    font-size: 8rem;
    letter-spacing: 0em;
	 
  }

  .titulo .espacios .o {
    font-size: 6.7rem;
	color: white;
  }

    .texto-general {
    grid-column: 1 / 3;
    font-size: 1.2rem;
    margin: 2rem 0;
	color: white;
	font-family: 'Geometria Medium';
	font-size: 17px;
	letter-spacing: 0.03em;
	margin-top: 30px;
		margin-left: 45px;
    }

    .subtitulo {
      font-size: 4rem;
      color: white;
      margin-bottom: 1rem;
		font-family: 'Geometria Bold';
		margin-left: 20px;
		margin-top:100px;
		
    }

    .trabajo {
      position: relative;
      padding-left: 2rem;
    }

    .trabajo::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 8px;
      background: #9D33A3;
    }

     .item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 2rem;
		 margin-top: 60px;
		 margin-left: 5px;
  }
	
	.cuatro {
		
		margin-top:50px;
	}
	
	.cinco{}

  .item-img {
    width: 75px;
    height: auto;
    flex-shrink: 0;
	  background-color:white;
	  border-radius: 75px;
  }

  .item-contenido {
    display: flex;
    gap: 1rem;
  }

  .numero {
    font-size: 9rem;
    font-family: 'Geometria Bold';
    color: white;
    line-height: 1;
    flex-shrink: 0;
	  margin-left: 20px;
	  margin-right: 20px;
	  margin-top: -12px;
  }

  .texto-item {
    font-size: 14px;
    line-height: 1.3;
	  color: white;
	  width: 216px;
	   font-family: 'Geometria';
	 
		font-weight: bold;
  }

 .btn-cita {
    display: inline-block;
    margin: 1rem auto;
    padding: 0.8rem 1.5rem;
    background-color: #4b4a4a;
    color: #fff;
    text-decoration: none;
    border: none;
    font-size: 2rem;
    text-align: center;
	
    cursor: pointer;
    border-radius: 4px;
  }

  .btn-container {
    text-align: left;
  }
}


/*pantallas chicas*/
@media (max-width: 767px) {
    .titulo {
    font-family: 'Geometria Bold';
    
    font-size: 4rem;
    line-height: 1.1;
    color: white;
		margin-top:150px;
		letter-spacing: 0em;
		margin-top: 40px;
        margin-left: 330px;
  }



  .titulo .de {
    font-size: 2.7rem;
    display: inline-block;
    margin: 0 0.5rem;
    vertical-align: middle;
    color: white;
    margin-top: -10px;
  }

  .titulo .de .d {
    border-bottom: 6px solid white;
    padding-bottom: 0.1rem;
	   color: white;
  }

  .titulo .espacios {
    display: block;
    font-size: 4rem;
    letter-spacing: 0em;
	 
  }

  .titulo .espacios .o {
    font-size: 2.7rem;
	color: white;
  }

    .texto-general {
      grid-column: 1 / 3;
      font-size: 1.2rem;
      margin: 2rem 0;
		color: white;
		font-family: 'Geometria Medium';
		font-size: 12px;
		letter-spacing: 0.03em;
		margin-left:335px;
    }

    .subtitulo {
      font-size: 3rem;
      color: white;
      margin-bottom: 1rem;
		font-family: 'Geometria Bold';
		margin-left: 0px;
		margin-top:30px;
		
    }

    .trabajo {
      position: relative;
      padding-left: 2rem;
    }

    .trabajo::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 8px;
      background: rgb(128 128 128);
    }

     .item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 2rem;
    margin-top: 60px;
  }
	
	.cuatro {
		
		margin-left:20px; margin-top:10px;
	}
	.cinco{
		
		margin-left:20px;
	}

  .item-img {
    width: 55px;
    height: auto;
    flex-shrink: 0;
	  background-color:white;
	  border-radius: 55px;
  }

  .item-contenido {
    display: flex;
    gap: 1rem;
  }

  .numero {
    font-size: 5rem;
    font-family: 'Geometria Bold';
    color: white;
    line-height: 1;
    flex-shrink: 0;
	  margin-left: 4px;
	  margin-right: 4px;
	  margin-top: -6px;
  }

  .texto-item {
    font-size: 14px;
    line-height: 1.3;
	  color: white;
	  width: 200px;
	   font-family: 'Geometria';
  }

 .btn-cita {
    display: inline-block;
    margin: 1rem auto;
    padding: 0.8rem 1.5rem;
    background-color: #4b4a4a;
    color: #fff;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    text-align: center;
	
    cursor: pointer;
    border-radius: 2px;
  }

  .btn-container {
    text-align: left;
  }
}





    @media (max-width: 768px) {
      .grid {
        grid-template-columns: 1fr;
      }

      .texto-general {
        grid-column: 1;
      }

      .trabajo::before {
        display: none;
      }
    }


/*SECCION NÚMERO 3*/





   .containersolicitudes {
    color: #6F6F72;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 20px;
    background-color: #fff;  
  display: flex;
  justify-content: center; 
  align-items: center;     
  flex-wrap: wrap;
  gap: 40px;
  margin-left: auto;
  margin-right: auto;
 margin-top: 50px; 
}

.main-titlesolicitudes {
    font-size: 6rem;
   margin-left: -120%;
    color: #9D33A3;
    margin-bottom: 60px;
    font-family: 'Geometria Bold';
	width: 100%;
}


@media (max-width: 768px) {
    .main-titlesolicitudes {
      font-size: 4rem;
     margin-left: 0%;
      color: #9D33A3;
      width: 100%;
      margin-bottom: 60px;
		font-family: 'Geometria Bold';
    }
	.columnssolicitudes {
      display: flex;
      gap: 40px;
      flex-wrap: wrap;
	  margin-left: auto;
	  margin-right: auto;
		justify-content: center; 
    }
}

  @media (min-width: 768px)  and (max-width: 1440px) {
    .main-titlesolicitudes {
      font-size: 44px;
      margin-left: 0%;
      color: #9D33A3;
        
      margin-bottom: 60px;
		font-family: 'Geometria Bold';
		width: 100%;
		margin-left:100px;
    }
	
	.columnssolicitudes {
      display: flex;
      gap: 150px;
      flex-wrap: wrap;
		    margin-left: auto;
		margin-right: auto;
    }
}  

@media (min-width: 1441px)   {
    .main-titlesolicitudes {
      font-size: 44px;
      margin-left: 11% !important;
      color: #9D33A3;
        
      margin-bottom: 60px;
		font-family: 'Geometria Bold';
		width: 100%;
		margin-left:100px;
    }
	
	.columnssolicitudes {
      display: flex;
      gap: 150px;
      flex-wrap: wrap;
		    margin-left: auto;
		margin-right: auto;
    }
}  

.col2{
	
	
	/*margin-left: 50px;*/
}
@media (min-width: 768px) {
    .columnsolicitudes {
      flex: 1 1 26%;
        max-width: 240px;
    }
	
	.sectionsolicitudes h2 {
      font-size: 25px;
      font-family: 'Geometria Bold';
      margin-bottom: 10px;
      font-weight: normal;
      letter-spacing: 0.03em;
	    margin-top: 25px;
		text-align: center;
    }
	.sectionsolicitudes {
      margin-bottom: 50px;
		max-width: 230px;
		text-align: justify;
		margin: 10px;
		align-items: center;
    }
}

@media (max-width: 767px) {
    .columnsolicitudes {
      flex: 1 1 100%;
	  max-width: 100%;
    }
	
	.sectionsolicitudes h2 {
      font-size: 22px;
      font-family: 'Geometria Bold';
      margin-bottom: 10px;
      font-weight: normal;
      letter-spacing: 0.03em;
	    margin-top: 25px;
    }
	
	.sectionsolicitudes {
      margin-bottom: 50px;
		max-width: 230px;
		text-align: justify;
		margin: 10px;
		align-items: center;
		margin-left: 20px;
    }
}

    


 .subti {
      font-size: 27px;
      color: #6F6F72;
      margin-bottom: 10px;
      
      letter-spacing: 0.03em;
	  
    }
 .titu {
      font-size: 27px;
      color: #9D33A3;
      margin-bottom: 10px;     
      letter-spacing: 0.03em;
	  margin-top: 10px;
    }

    .sectionsolicitudes h3 {
    font-size: 16px;
    color: #6F6F72;
    margin-bottom: 10px;
    font-style: italic;
    font-family: 'Geometria Bold';
    margin-top: 60px;
    text-align: left; 
    letter-spacing: 0.04em;
    line-height: 1.4em;
    position: relative; 
    padding-left: 1.5em; 
}

.sectionsolicitudes h3::before {
    content: "•"; 
    color: #6F6F72; 
    position: absolute;
    left: 0; 
    top: 0; 
    font-weight: bold; 
    font-size: 1.2em; 
    line-height: inherit; 
}

    .sectionsolicitudes p {
    font-size: 16px;
    margin: 0 0 10px 0; 
    color: #6F6F72;
    font-family: 'Geometria Bold';
    text-align: left; 
    letter-spacing: 0.04em;
    line-height: 1.4em;
    position: relative; 
    padding-left: 1.5em; 
		
}

.sectionsolicitudes p::before {
    content: "•"; 
    color: #6F6F72; 
    position: absolute;
    left: 0; 
    top: 0;
    font-weight: bold; 
    font-size: 1.2em; 
    line-height: inherit; 
}
@media (min-width: 768px) {
    .final-textsolicitudes {
      margin-top: 10px;
      font-size: 15px;
      letter-spacing: 0.03em;
      text-align: left;
      font-family: 'Geometria Bold';
      padding-top: 20px;    margin-left: auto; 
		width: 100%;
    }
}

    @media (max-width: 768px) {
      .columnssolicitudes {
        flex-direction: column;
      }
		
		.final-textsolicitudes {
      margin-top: 10px;
      font-size: 15px;
      letter-spacing: 0.03em;
      text-align: left;
      font-family: 'Geometria Bold';
      padding-top: 20px;    
			margin-left: auto;
			margin-right: auto;
    }
    }

.img-container {
  background-color:#000000; /* gris claro */
  border: 1px solid #ccc;    /* borde gris */
  padding: 16px;
  display: inline-block;
  border-radius: 49%;        /* opcional, para bordes redondeados */
	 width: 120px;
  height: 120px;
	
}

.custom-img {
  object-fit: cover;
  width: 84px;
  height: 80px;
  display: block;
	text-align: center;
}

.bullets {
  list-style: none;
  padding-left: 0;
	margin: 0;
  line-height: 1.5em;
  letter-spacing: 0.03em;
  font-family: 'Geometria Medium', sans-serif;
	font-size: 15px;
	
}

.bullets li::before {
  content: "✔"; /* Unicode símbolo profesional */
  color: white; /* Verde profesional */
  font-weight: bold;
  display: inline-block;
  width: 1.5em;
	
}

.titu-bloque{
	
	
}

/*el footer*/


.extra-footer {
   background-color: #6F6F72;
  color: white;
  font-family: 'Geometria';
  text-align: left;
  padding: 30px;
}

.extra-footer p {
  margin: 5px 0;
  font-size: 16px;
}

.extra-footer a {
  color: white;
  text-decoration: none;
}

@media (max-width: 600px) {
  .extra-footer p {
    font-size: 14px;
  }
}

@media (max-width: 767px) {
.alturita{
	margin-top: 10px !important; 
	}
.alturita2{
	margin-top: 0px !important; 
	}
	
	.alturita3{
	margin-top: -10px !important; 
	}
	
	.alturitabis{
	margin-top: 0px !important; 
	}
	
	.alturita3bis{
	margin-top: 20px !important; 
	}
}

@media (min-width: 768px) {
.alturita{
	margin-top: 50px !important; 
	}
.alturita2{
	margin-top: 21px !important; 
	}
	
	.alturita3{
	margin-top: -15px !important; 
	}
	
	.alturitabis{
	margin-top: 60px !important; 
	}
	
	.alturita3bis{
	margin-top: -05px !important; 
	}
}


.card-custom {
  width: 100%;
  max-width: 300px;
	margin-left: auto;
}

@media (min-width: 768px) {
  .card-custom {
    flex: 0 0 auto;
	  margin-left: auto;
  }
}

.carousel-item {
  transition: transform 0.7s ease-in-out;
}

/* Que las flechas estén siempre visibles */
.carousel-control-prev,
.carousel-control-next{
  width: 2%;
  opacity: 0;
  height: 50px;
  margin-top:180px;
}


body {
  overflow-x: hidden;
}

@media (min-width: 768px) {
.linealila {
                width: 8px;
        height: 4500px;
        /*background-color: #009BB4;*/
        margin-left: -1px;
        margin-right: 20px;
        z-index: 99;
        margin-top: 0px;
	    background-image: linear-gradient(to bottom, 
                                      #009BB4 0px, 
                                      #009BB4 650px, 
                                      transparent 650px, 
                                      transparent 1277px, 
                                      #009BB4 1277px, 
                                      #009BB4 4500px);
    
	
	
}
}


@media (max-width: 768px) {
.linealila {
  width: 8px;
  height: 700px;
  background-color: #009BB4;
	 height: 4580px;
  margin-right: 98%;
	
	background-image: linear-gradient(to bottom, 
                                      #009BB4 0px, 
                                      #009BB4 1382px, 
                                      transparent 1382px, 
                                      transparent 1450px, 
                                      #009BB4 1450px, 
                                      #009BB4 4580px);
	z-index: 999;
}
}
