
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');



*{
  font-family: 'Poppins', sans-serif;
}


.header{
  background-image: url(Imagenes/Bola-redonda.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 800px;
  width: auto;
}



/* Media query para la imagen de fondo del Header */



@media only screen and (max-width: 767px) {
  .header {
      height: auto;
      width: auto;
      padding-bottom: 100px;
  }
}





/* Barra de navegacion  */


#logo{
  color: white;
  font-weight: 700;
  padding-left: 20px;
}


.bg-purple{
  background-color: (0, 0, 0, 0);
}


.navbar-nav .nav-item {
 margin-right: 30px;
font-weight: 550
}
  
  
.navbar-nav .nav-link {
  color: white !important;
}
  
.navbar-scrolled {
  background-color: rgba(0, 0, 0, 0.8); /* Cambia el color de fondo según necesites */
  transition: background-color 0.3s ease; /* Agrega una transición suave */
}

  
.nav{
  display: flex;
  justify-content: flex-end;
  margin-right: 10px;
  margin-left: 10px;
}


.navbar-nav .nav-item img {
  width: 30px; 
  height: auto; 
  margin-right: 10px;
  margin-top: 10px;
  cursor: pointer; 
}


.navbar-toggler-icon {
  filter: invert(100%); /* Invierte los colores del icono */
}

.nav{
  margin-right: 20px;
} 






/* SECCION DE PRESENTACION (INICIO) */

.presentacion{
  display: flex;
  flex-direction: column;
  align-items: left;
  text-align: left;
  justify-content: left;
  color: white;
}


.lavsoft{
  font-size: 6em;
  font-weight: 650;
  padding-left: 130px;
  padding-top: 170px;
}


.empresa-de-tecnologia{
  display: inline-block;
  font-size: 3.5em;
  padding-left: 130px;
}


.impul{
  width: 45%;
  font-size: 1.5em;
  padding-left: 130px;
}


/* EFECTO DE ESCRITURA */


#empresa-tecnologia {
  overflow: hidden; /* Esconde el texto que aún no ha aparecido */
  border-right: .15em solid orange; /* Añade un cursor */
  white-space: nowrap; /* Mantén el texto en una sola línea */
  letter-spacing: .15em; /* Espaciado entre letras */
  display: inline-block; /* Inicialmente sin ancho */
  width: 0;
  animation:
    typing 2s steps(22, end) forwards,
    blink-caret 1s step-end infinite;
}

@keyframes typing {
  from { width: 0 }
  to { width: 27ch; } 
}  


@keyframes blink-caret {
  0% { border-color: transparent; }
  50% { border-color: orange; opacity: 1; }
  100% { border-color: transparent; opacity: 0; }
}  






/* Media query para textos de Inicio */

@media only screen and (max-width: 767px) {
  .lavsoft{
    font-size: 2.5em;
    font-weight: 650;
    padding-left: 45px;
    padding-top: 85px;
  }
}



@media only screen and (max-width: 767px) {
  .empresa-de-tecnologia{
    font-size: 1.3em;
    padding-left: 45px;
    font-weight: 550;
  }
}



@media only screen and (max-width: 767px) {
  .impul{
    font-size: .9em;
    padding-left: 45px;
    width: 70%;
  }
}






/* ACERCA */


#acerca{
  position: relative;
  padding-top: 110px;
  padding-bottom: 110px;
  padding-left: 60px;
  padding-right: 60px;
  z-index: 10;
  background-color: white;
}


.container-dos{
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}



.icon-box {
  margin-top: 50px;
  margin-bottom: 50px;
  /* padding: 0 10px; */
  position: relative;
}




/* Titulo Acerca */

.titulo-blanco{
  color: rgb(15, 15, 73);
  font-size: 3.4em;
  letter-spacing: 0;
  text-align: left;
  font-weight: 650;
  margin-bottom: 10px;
} 
 


.h6-acerca{
  color:rgb(15, 15, 73);
  width: 100%;
  line-height: 2;
  font-weight: 500;
}




/* IMAGEN OFICINA */


.imagen{
  padding-top: 75px;
} 





/* BOTON CONTACTO */


.mi-boton{
  background-color: rgb(15, 15, 73);
  color: white;
  border-radius: 15px;
  transition: background-color 0.3s, color 0.3s;
  cursor: pointer;
  padding: 10px;
  border: 2px solid white;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
} 

 


.highlight-box {
  border: 2px solid rgb(15, 15, 73); 
  padding: 40px;
  border-radius: 10px; 
  text-align: center; /* Centrar el texto */
  color: white;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 10); /* Sombra */
  max-width: 50%; /* Ancho máximo del cuadro */
  margin: 0 auto; /* Centrar el cuadro en la página */
  margin-top: 50px;
  background: linear-gradient(rgba(0, 0, 0, 0.4),  rgba(0, 0, 0, 0.4)), url(Imagenes/diferencial-imagen-fondo-700x700.png) fixed center center;
  background-repeat: no-repeat;
}

.highlight-box h1 {
  margin: 0;
  padding: 20px 0px;
  font-size: 3em;
  font-weight: 500;
  text-shadow: -0.7px -0.7px 0 black, 0.7px -0.7px 0 black, -0.7px 0.7px 0 black, 0.7px 0.7px 0 black;
}


.highlight-box h6 {
  margin-top: 10px;
  font-size: 1.25em;
  text-shadow: -0.5px -0.5px 0 black, 0.5px -0.5px 0 black, -0.5px 0.5px 0 black, 0.5px 0.5px 0 black;
}






/* Media query */

@media (max-width: 768px) {
  .imagen img {
    max-width: 100%; 
    height: auto; 
  }
}


@media (max-width: 768px) {
  .h6-acerca{
    font-size: 0.8em;
    font-weight: 450; 
  }
}



@media (max-width: 768px) {
  .titulo-blanco{
    font-size: 3em;
    font-weight: 650; 
  }
}


@media (max-width: 768px) {
  .container-dos{
    padding-left: 1px;
    padding-right: 1px; 
  }
}


@media (max-width: 768px) {
  .highlight-box{
    max-width: 100%; 
  }
}




@media (max-width: 768px) {
  .highlight-box h1{
    font-size: 2em;
    padding: 10px 0px;
  }
}



@media (max-width: 768px) {
  .highlight-box h6{
    font-size: .8em ;
    margin-top: 2px;
  }
}










/* PORTFOLIO */


#portfolio{
  padding-top: 30px;
  padding-bottom: 210px;
  background-color: #F5F0E5;
  background-repeat: no-repeat;
  background-position: center; /* Centra la imagen */
  background-size: cover; /* Cubre todo el fondo, manteniendo la relación de aspecto */
}

/* #f3e6ca */

.div-titu-portfolio{
  display: block;
  text-align: center;
  padding-top: 50px;
}


#lav-portfolio{
  font-weight: 650;
  padding-left: 20px;
  color: rgb(15, 15, 73);
}


#titulo-portfolio{
  font-size: 4.5em;
  font-weight: 650;
  color: rgb(15, 15, 73);
}


.fondo-seccion-madera{
  background-image: url(Imagenes/fondo-conexion.jpg);
  background-repeat: no-repeat;
  background-position: center; /* Centra la imagen */
  background-size: cover; /* Cubre todo el fondo, manteniendo la relación de aspecto */
}


.container2 {
  display: flex;
  justify-content: space-around;
  padding-top: 50px;
}


/* .enlaces{
  padding-bottom: 20px;
} */


.box2 {
  background-color: rgb(15, 15, 73);
  padding: 150px;
  border: 3px solid #000; /* Borde para resaltar los rectángulos */
  width: 350px; /* Ancho de los rectángulos */
  height: 150px;
  text-align: center;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: opacity 0.3s ease;
}

.box2:hover {
  opacity: 0.8; /* Cambiamos la opacidad al 80% al pasar el cursor */
}





/* HTML DE LOS PROYECTOS DE PORTFOLIO  */



#lavsoft-izquierda{
  padding-left: 25px;
  padding-top: 25px;
  font-size: 3.4em;
  font-weight: 650;
  color: rgb(15, 15, 73) ;
}

.container-imagen{
  display: flex;
  justify-content: center;
}


.container-imagen img{
  width:500px;
  height: auto;
}



.div-port-liverval{
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-direction: column;
  color: white;
  padding-bottom: 30px;
  padding-top: 50px;
}


#port-liverval{
  font-size: 3.4em;
  font-weight: 650;
}


.info-info{
  padding-bottom: 50px;
}

.div-info{
  display: flex;
  align-items: center;
  color: white;
  padding-left: 20px;
}

.div-info i,
.div-info h5 {
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px;
}






/* MEDIA QUERY DE PORTOFOLIO HTML PRINCIPAL */



@media only screen and (max-width: 767px) {
  #portfolio{
    height: auto;
    width: auto;
  }
}



@media only screen and (max-width: 767px) {
  .container2{
    display: flex;
   flex-direction:column;
   align-content: center; 
   align-items: center; /*alinea el contenido de forma vertical */
   padding-bottom: 50px;
   padding-top: 50px;
  }
}

















/* NUESTRO ENFOQUE */


.div-como-lo-hacemos{
  display: flex;
  justify-content: center;
  padding: 70px 11px;
  padding-bottom: 0px;
}

.div-que-nos-hace-distintos{
  display: flex;
  justify-content: center;
  color: rgb(15, 15, 73);
  padding-bottom: 50px;
}

#que-nos-hace-distintos{
  font-weight: 550;
}



.titulo-como-lo-hacemos{
  font-size: 3.4em;
  font-weight: 625;
  color: rgb(15, 15, 73);
}  


.container-como-lo-hacemos{
  padding: 20px 50px;
}



.div-icono{
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 15px;
  color: rgb(15, 15, 73);
  font-size: 60px;
}  


#interfaz-agradable{
  padding-left: 45px;
}

.acordeon{
  width: 100%; 
  margin-bottom:60px;
}
  


.accordion-body{
  font-size: 1.1em;
  font-weight: 600;
  color:  rgb(15, 15, 73);
  font-family: 'Poppins', sans-serif;
}


.accordion-header .accordion-button{
  font-size: 20px; 
  font-weight: 650;
  display: flex; /* No esta funcionando */
  justify-content: center; /* No esta funcionando */
  align-items: center; /* No esta funcionando */
  color: rebeccapurple;
  /* padding-left: 170px; */
}




/* Media query para "NUESTRO ENFOQUE" */



@media only screen and (max-width: 767px) {
  .titulo-como-lo-hacemos{
    font-size: 2.2em;
  }
}


@media only screen and (max-width: 767px) {
  #analisis-del-proyecto{
    padding-left: 90px;
    font-size: .8em;
  }
}




@media only screen and (max-width: 767px) {
  #desarrollo-web{
    padding-left: 75px;
    font-size: .8em;
  }
}




@media only screen and (max-width: 767px) {
  #interfaz-agradable{
    padding-left: 60px;
    font-size: .8em;
  }
}



@media only screen and (max-width: 767px) {
  #desarrollo-seo{
    padding-left: 45px;
    font-size: .8em;
  }
}











/* SERVICIOS */


#servicios{
  background-color: rgb(15, 15, 73);
  padding: 80px;
}


.titulo-servicios{
  font-size: 4.4em;
  font-weight: 750;
  color: #fff;
  padding-top: 10px;
  padding-bottom: 80px;
}  



.div-servicios{
  display: flex;
  justify-content: center;
}






/* CAJAS FLEX BOX */


/* Estilos para el contenedor de las cajas */

.row-uno {
  display: flex;
  justify-content: space-around; /* Distribuye el espacio entre las cajas */
  padding-bottom: 20px;
}



/* Estilos para cada caja de servicio */

.servicio-box {
  width: 30%; /* Ajusta el ancho según el número de cajas y el espacio deseado */
  height: 400px; /* Ajusta la altura según tus necesidades */
  margin: 10px; /* Espacio entre las cajas */
  position: relative;
  overflow: hidden;
  cursor: pointer;
  border: 1px solid #ccc; /* Borde opcional para visualizar mejor las cajas */
}




/* Estilos específicos para el contenido frontal */
.front-content {
  background-repeat: no-repeat;
  background-position: center; 
  background-size: cover; /* Cubre todo el fondo, manteniendo la relación de aspecto */
  z-index: 2; /* Asegura que el contenido frontal esté por encima */
  color: #fff;
  font-weight: 550;
  text-shadow: -0.25px -0.25px 0 black, 0.25px -0.25px 0   black, -0.25px 0.15px 0   black, 0.25px 0.25px 0   black;
  -webkit-text-stroke: 0.25px   black;
}

.front-content .fondo-imagen-chica-ap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* Asegura que la imagen cubra todo el fondo */
  z-index: -1;
}



/* Estilos para el contenido frontal y trasero de cada caja */
.front-content, .back-content {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: transform 0.5s ease, opacity 0.5s ease; /* Transición suave para el deslizamiento y la opacidad */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}


.brillo{
  display: grid;          /* Activa grid */
  place-items: center;    /* Centra los elementos horizontal y verticalmente */
  filter: brightness(3.5);
}


.textos-cajas-servicios{
  padding-left: 25px;
  padding-right: 25px;
  padding-bottom: 20px;
}



/* Estilos específicos para el contenido trasero */

.back-content {
  color: rgb(45, 6, 45);
  background-color: #fff; /* #e0e0e0 Color de fondo del contenido trasero */
  transform: translateX(100%); /* Inicialmente, el contenido trasero está fuera de la vista */
  opacity: 0; /* Contenido transparente inicialmente */
}

/* Estilos al pasar el mouse sobre la caja */
.servicio-box:hover .front-content {
  transform: translateX(-100%); /* Desliza el contenido frontal hacia la izquierda */
}

.servicio-box:hover .back-content {
  transform: translateX(0); /* Desliza el contenido trasero a la vista */
  opacity: 1; /* Hace que el contenido trasero sea opaco */
}




/* Media query para Servicios */


@media only screen and (max-width: 767px) {
  .row-uno{
    display: flex;
   flex-direction:column;
   align-content: center; 
   align-items: center; /*alinea el contenido de forma vertical */
  }
}


@media only screen and (max-width: 767px) {
  .titulo-servicios{
   font-size: 3em;
   font-weight: 650;
  }
}


@media only screen and (max-width: 767px) {
  .servicio-box{
    width: 90%;
    height: 500px;
  }
}




@media only screen and (max-width: 767px) {
  .textos-cajas-servicios{
    font-size: 0.9em;
    padding-bottom: 50px;
  }
}












/* Tecnologia */



#tecnologia{
  background-image: url(Imagenes/Fondo\ Software\ sofisticado\ computadora\ cinco.png);
  background-size: cover;
  background-repeat: no-repeat; 
  background-position: center;
  height: 800px;
  max-width: 100%;
}





.titulo-tecnologia{
  position: relative;;
  padding-top: 100px;
  padding-left: 120px;
  font-weight: 300;
  font-size: 5em;
  color: #fff;
  /* color: #f39406; */
  text-decoration: none;
  text-shadow: -0.5px -0.5px 0 black, 0.5px -0.5px 0 black, -0.5px 0.5px 0 black, 0.5px 0.5px 0 black;
  -webkit-text-stroke: 0.5px black;
} 


/* Efecto de fondo de secion de tecnologia */

.titulo-tecnologia::after {
  content: '';
  position: absolute;
  bottom: -2px; 
  left: 0;
  width: 0;
  height: 2px; 
  background-color: white; 
  transition: width 0.3s ease; 
  animation: underline-animation 2s linear infinite; 
} 


@keyframes underline-animation {
  0% {
    width: 0;
    left: 0; /* Inicio de la animación */
  }
  50% {
    width: 100%;
    left: 0; /* Mitad de la animación */
  }
  100% {
    width: 0;
    left: 100%; /* Final de la animación */
  }
}




/* Media query de "Tecnología" */

@media only screen and (max-width: 767px) {
  #tecnologia{
      height: 350px;
      width: auto;
  }
} 




@media only screen and (max-width: 767px) {
  .titulo-tecnologia{
    font-size: 2.5em;
    font-weight: 250;
    padding-top: 64px;
    padding-left: 30px;
    text-shadow: -0.25px -0.25px 0 black, 0.25px -0.25px 0 black, -0.25px 0.25px 0 black, 0.25px 0.25px 0 black;
    -webkit-text-stroke: 0.25px black;
  }
}









/* FORMULARIO */


#contacto{
  background-color: rgb(15, 15, 73);
}


.titulo-contacto{
  display: flex;
  justify-content: center;
  color: #fff;
  padding-top: 50px;
  padding-bottom: 30px;
  font-weight: 250;
  font-size: 4em;
}



.div-formulario{
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 600px;
}



.form-control.floatingInput{
  border: 3px solid black;
  margin-bottom: 25px;
}


.form-floating {
  margin-right: 0;
}




.container-mensaje{
  margin-left: auto;
  margin-right: auto;
  max-width: 600px;
}


#mensaje{
  height: 110px;
}






.contenedor-boton{
  margin-top: 10px;
  padding-bottom: 100px;
  text-align: center;
}


.enviar{
  width: 44.3%; 
  padding: 10px; 
  font-weight: bold;
  border-radius: 3px;
  border-width: 0;
  background-color: black;
  color: white;
  font-weight: 600;
  transition: all .3s ease;
  font-family: 'Poppins', sans-serif;
  font-size: 25px;
  letter-spacing: -0.04em;
}


.enviar:hover {
  background-color: rgb(87, 19, 87)
}



.invalid{
  border: 2px solid red;
}




/* Media query */



@media only screen and (max-width: 767px) {
  .titulo-contacto{
      font-size: 2.5em;
  }
} 


@media only screen and (max-width: 767px) {
  .form-row{
    flex-direction: column;
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}  



@media only screen and (max-width: 767px) {
  .container-mensaje{
    max-width: 80%; 
  }
}  



@media only screen and (max-width: 767px) {
  .enviar{
    max-width: 30%; 
  }
}  




/* FOOTER */



.footer{
  position: relative;
  padding-top: 25px;
  padding-bottom: 70px;
  background-color:black;
  color: white;
}


.footer .div-uno{
  padding-left: 70px;
  margin-right: 150px;
}


.footer .parra-fotter{
  display: flex;
  justify-content: center;
}



.footer .col-3 a {
  color: white;
}



.footer .col-3 i {
  padding-right: 30px;
  font-size: 25px;
}





/* FOOTER LIVERVAL */



.footer-liverval{
  position: relative;
  padding-top: 25px;
  padding-bottom: 70px;
  background-color:  black;
  color: white;
}


.div-uno-liverval{
  margin-right: 100px;
  margin-left: 50px;
}



.parra-fotter-liverval{
  display: flex;
  justify-content: center;
}


.footer-liverval i{
  margin-right: 12px;
  font-size: 20px;
  color: white;
}


/* FOOTER MADERA & ARTE */



.footer-madera{
  position: relative;
  padding-top: 25px;
  padding-bottom: 70px;
  background-color:  black;
  color: white;
}


.div-uno-madera{
  margin-right: 100px;
  margin-left: 50px;
}



.parra-fotter-madera{
  display: flex;
  justify-content: center;
}


.footer-madera .col-5 i{
  margin-right: 12px;
  font-size: 20px;
  color: white;
}


/* .banderas{
  display: flex;
  justify-content: flex-start;
}

.banderas-dos{
  display: flex;
} */






/* Media query de Footer */




@media (max-width: 767px){
  .div-primera-columna{
    flex-direction: column;
  }
}   


@media (max-width: 767px){
  .footer .div-uno{
    width: 100%;
  }
}  



@media (max-width: 767px){
  .footer .columna-enlaces{
    width: 100%;
    padding-left: 50px;
    padding-top: 50px;
  }
}  


@media (max-width: 767px){
  .footer .div-redes{
    padding-top: 30px;
    padding-left: 50px;
  }
}  



@media (max-width: 767px){
  .footer .parra-fotter{
    padding-top: 30px;
    padding-left: 15px;
    font-size: 0.7em;
  }
} 





/* Media query de portfolio liverval */


@media (max-width: 767px){
  .seccion-portfolio-liverval{
    height: auto;
    width: auto;
  }
}




@media (max-width: 767px){
  .fondo-seccion-madera{
    height: auto;
    width: auto;
  }
}




@media (max-width: 767px){
  .footer-madera .div-uno-liverval{
    height: auto;
    width: auto;
  }
}  




@media (max-width: 767px){
  #seguinos{
    font-size: 1.3em;
    padding-left: 50px;
  }
}  




@media (max-width: 767px){
  .parra-fotter-liverval{
    padding-top: 30px;
    font-size: 0.8em;
  }
} 




/* Media query de portfolio liverval ingles */


@media (max-width: 767px){
  .parra-fotter-madera{
    padding-top: 30px;
    font-size: 0.8em;
  }
} 








/* CSS DEL HTML GRACIAS */




.mensaje{
  text-align: center;
  justify-content: center;
  align-items: center;
  color: #fff;
  background-color: rgb(15, 15, 73);
  border-radius: 10px;
  margin: 150px 300px ;
  padding: 20px;
}



@media (max-width: 767px){
  .mensaje{
    margin: 100px 50px;
    padding: 20px;
  }
}






