/* ===============================
            GOOGLE FONT 
==================================*/

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap');

/* ===============================
        LIMPIEZA DEL BODY
==================================*/
* {
  margin: 0;
  padding: 0;
  font-family: 'Lato', sans-serif;
}
html {
  scroll-behavior: smooth;
}

/* ==================================
        HEADER AND NAV SUPERIOR y 
      algunos estilos NAV INFERIOR
=====================================*/

header {
  background-color: #ffffff;
  padding: 25px;
  box-shadow: 0 0 29px 0 rgba(134, 134, 134, 0.25);
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: relative;
}

.menu-superior {
  margin-right: 50px;
  display: flex;
}

.lista-menu-pc {
  display: flex;
}

.indice-navegacion {
  list-style-type: none;
  margin: 0 12px;
  display: flex;
  align-self: center;
  justify-content: center;
}

.indice-navegacion-celular {
  list-style-type: none;
  padding: 8px 20px;
  display: flex;
  align-self: center;
  border-bottom: 1px solid #cacaca;
}

.links-menu-superior {
  text-decoration: none;
  font-size: 18px;
  font-weight: 300;
  color: #030303;
}

.contenedor-menu-celular {
  display: none;
  font-size: 25px;
  margin-right: 30px;
  cursor: pointer;
}



/* ===============================
        SECCIÓN PRINCIPAL
==================================*/
#seccion-principal {
  margin: 50px;
  display: flex;
  justify-content: center;
}

.contenedor-informacion-seccion-principal {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-weight: 900;
  letter-spacing: 2px;
  line-height: 1.4;
  width: 45%;
}

.texto-arriba-del-titulo-principal {
  font-size: 35px;
}

.titulo-principal-h1 {
  font-size: 60px;
  color: #5db56a;
  margin-bottom: 20px;
}

.titulo-principal-h1::before {
  content: "<";
  font-size: 40px;
  color: #5db56a;
}

.titulo-principal-h1::after {
  content: ">";
  font-size: 40px;
  color: #5db56a;
}


.texto-abajo-del-titulo-principal {
  font-size: 18px;
  font-weight: 400;
  color: #959595;
  margin-bottom: 50px;
}

.contenedor-imagen-seccion-principal {
  display: flex;
  width: 50%;
}

.imagen-seccion-principal {
  width: 100%;
  height: auto;
}

/* =============================================
    SECCIÓN CONOCIMIENTOS Y algo de PROYECTOS
================================================*/
.seccion-con-tarjetas {
  background-color: #f6f7fb;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 60px 50px;
}

.contenedor-titulo-e-info-seccion-con-tarjetas {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.titulo-seccion-con-tarjetas {
  font-size: 45px;
  font-weight: 900;
  margin: 30px 0;
}

.texto-abajo-del-titulo-conocimientos {
  width: 400px;
  font-size: 18px;
  font-weight: 300;
  margin-bottom: 50px;
  text-align: center;
}

.contenedor-tecnologias-seccion-conocimientos {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  max-width: 900px;
}

.tarjeta-tecnologia-seccion-conocimientos {
  font-size: 85px;
  background-color: #fff;
  border: 1px solid #dddfe5;
  border-radius: 8px;
  width: 230px;
  margin: 10px;
  padding: 50px 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.titulo-de-la-tarjeta {
  font-size: 22px;
  margin-top: 20px;
  text-align: center;
}

/* =============================================
          SECCIÓN FRASE y algo de CONTACTO
================================================*/
.seccion-complementaria {
  background-color: #5db56a;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 60px 50px;
}

.contenedor-elementos-de-la-seccion-complementaria {
  width: 70%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  text-align: center;
}

.fas.fa-quote-right {
  font-size: 85px;
}

.frase-inspiradora-seccion-frase {
  font-size: 30px;
  font-weight: 300;
  margin: 30px 0;
}

.autor-de-la-frase-seccion-frase {
  font-size: 28px;
  font-weight: 700;
}

/* ===============================
    SECCIÓN PROYECTOS y BOTONES
==================================*/
.contenedor-botones-seccion-proyectos {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
}
/* Estilado de los botones seccion nav, hola y boton activo en proyectos */
.boton-seccion-proyectos {
  cursor: pointer;
  border: none;
  padding: 5px 10px;
  margin: 0 10px;
  background-color: transparent;
}

.web-boton, .boton-seccion-proyectos:focus {
  background-color: #5db56a;
  cursor: pointer;
  font-size: 18px;
  font-weight: 400;
  color: #ffffff;
  border: none;
  border-radius: 50px;
  padding: 10px 30px;
}
.web-boton:hover {
  background-color: #f25518;
  box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.3);
}

/* Fin de css de botones */

.link-navegacion-proyectos {
  text-decoration: none;
  font-size: 18px;
  font-weight: 300;
  padding: 0 10px;
}
.link-navegacion-proyectos:visited {
  color: #030303;
}


.contenedor-proyectos-seccion-proyectos {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  width: 1100px;
}

.tarjetas-de-proyectos-seccion-proyectos {
  background-color: #fff;
  border: 1px solid #dddfe5;
  border-radius: 8px;
  width: 300px;
  margin: 10px;
  padding: 50px 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
.contenedor-imagen-seccion-proyectos {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 250px;
}

.imagen-proyecto-seccion-proyectos {
  width: 100%;
  height: auto;
}

/* ===============================
        SECCIÓN CONTACTO
==================================*/
/* Algunos estilos para no repetir están en la sección del nav superior y en la sección de frase */

.contenedor-elementos-de-la-seccion-contacto {
  display: flex;
}

.links-menu-inferior {
  text-decoration: none;
  font-size: 14px;
  font-weight: 300;
  padding: 0 10px;
  color: #fff;
}

.contenedor-iconos-redes-sociales-seccion-contacto {
  display: flex;
  margin: 30px 0;

}
.iconos-redes-sociales-seccion-contacto {
  background-color: #fff;
  padding: 15px 17px;
  font-size: 20px;
  display: flex;
  align-items: center;
  border-radius: 50px;
  margin-right: 20px;
}

.link-social-media {
  text-decoration: none;
  cursor: pointer;
  color: #5db56a;
}

.link-social-media:hover {
  color: #5db56a;
}

.texto-al-final-del-footer {
  font-size: 16px;
  letter-spacing: 2px;
}

.texto-al-final-del-footer > span {
  text-decoration: underline;
}

/* ===============================
          MEDIA QUERY
==================================*/

@media (max-width: 1150px) and (min-width: 901px) {
  #seccion-principal {
    margin: 30px;
  }
  
  .texto-arriba-del-titulo-principal {
    font-size: 25px;
  }
  
  .titulo-principal-h1 {
    font-size: 45px;
  }
  
  .contenedor-proyectos-seccion-proyectos {
    width: 800px;
  }

}

@media (max-width: 900px) and (min-width: 651px) {
  .menu-superior {
    margin-right: 10px;
  }

  .links-menu-superior {
    font-size: 14px;
  }

  #seccion-principal {
    flex-direction: column;
    align-items: center;
  }

  .contenedor-informacion-seccion-principal {
    width: 100%;
    align-items: center;
    margin-bottom: 30px;
  }

  .texto-abajo-del-titulo-principal {
    text-align: center;
  }

  .contenedor-imagen-seccion-principal {
    width: 600px;
    height: auto;
  }
  
  .contenedor-tecnologias-seccion-conocimientos, .contenedor-proyectos-seccion-proyectos {
    width: 550px;
  }

  .tarjeta-tecnologia-seccion-conocimientos {
    width: 200px;
  }

  .tarjetas-de-proyectos-seccion-proyectos {
    width: 230px;
    padding: 30px 10px;
  }

  .contenedor-imagen-seccion-proyectos {
    width: 180px;
  }

  .contenedor-elementos-de-la-seccion-complementaria {
    width: 90%;
  }

  .fas.fa-quote-right {
    font-size: 70px;
  }
  
  .frase-inspiradora-seccion-frase {
    font-size: 20px;
  }
  
  .autor-de-la-frase-seccion-frase {
    font-size: 25px;
  }

  .menu-inferior {
    display: none;
  }

}

@media (max-width: 650px) and (min-width: 501px) {
  header {
    padding: 25px 0;
  }

  .menu-superior {
    margin-right: 10px;
  }

  .lista-menu-pc {
    display: none;
  }

  .contenedor-menu-celular {
    display: flex;
    flex-direction: column;
    margin-right: 10px;
  }

  .menu-celular {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 70px;
    right: 0;
    background-color: #fff;
    width: 100%;
    transition: all 2s;
    transform: translateY(-240px);
  }
  .mostrar-menu-desplegable {
    transform: translateY(0);
    box-shadow: 0 20px 20px 0 rgba(134, 134, 134, 0.35);
  }
  
  #seccion-principal {
    flex-direction: column;
    align-items: center;
  }

  .contenedor-informacion-seccion-principal {
    width: 100%;
    align-items: center;
    margin-bottom: 30px;
  }

  .titulo-principal-h1 {
    font-size: 40px;
  }

  .texto-abajo-del-titulo-principal {
    text-align: center;
  }

  .contenedor-imagen-seccion-principal {
    width: 100%;
    height: auto;
  }

  .contenedor-tecnologias-seccion-conocimientos, .contenedor-proyectos-seccion-proyectos {
    width: auto;
    justify-content: center;
  }

  .tarjeta-tecnologia-seccion-conocimientos {
    width: 200px;
  }
  
  .tarjetas-de-proyectos-seccion-proyectos {
    width: 400px;
    padding: 60px 30px;
  }

  .contenedor-imagen-seccion-proyectos {
    width: 350px;
  }

  .contenedor-elementos-de-la-seccion-complementaria {
    width: 90%;
  }

  .fas.fa-quote-right {
    font-size: 70px;
  }
  
  .frase-inspiradora-seccion-frase {
    font-size: 20px;
  }
  
  .autor-de-la-frase-seccion-frase {
    font-size: 25px;
  }

  .menu-inferior {
    display: none;
  }
}

@media (max-width: 501px) {
  header {
    padding: 25px 0;
  }

  .menu-superior {
    margin-right: 10px;
  }

  .lista-menu-pc {
    display: none;
  }
  
  .contenedor-menu-celular {
    display: flex;
    flex-direction: column;
    margin-right: 10px;
  }

  .menu-celular {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 70px;
    right: 0;
    background-color: #fff;
    width: 100%;
    transition: all 2s;
    transform: translateY(-240px);
  }
  
  .mostrar-menu-desplegable {
    transform: translateY(0);
    box-shadow: 0 20px 20px 0 rgba(134, 134, 134, 0.35);
  }

  #seccion-principal {
    flex-direction: column;
    align-items: center;
    margin: 30px 10px;
  }

  .contenedor-informacion-seccion-principal {
    width: 100%;
    align-items: center;
    margin-bottom: 30px;
    line-height: 1;
  }

  .texto-arriba-del-titulo-principal {
    font-size: 20px;
}

  .titulo-principal-h1 {
    font-size: 30px;
  }

  .texto-abajo-del-titulo-principal, .texto-al-final-del-footer {
    text-align: center;
    font-size: 14px;
  }

  .contenedor-imagen-seccion-principal {
    width: 100%;
    height: auto;
  }

  .titulo-seccion-con-tarjetas {
    font-size: 25px;
  }

  .texto-abajo-del-titulo-conocimientos {
    font-size: 14px;
    width: 100%;
  }

  .contenedor-tecnologias-seccion-conocimientos, .contenedor-proyectos-seccion-proyectos {
    width: auto;
    justify-content: center;
  }

  .link-navegacion-proyectos {
    font-size: 12px;
    padding: 0;
  }
  .boton-seccion-proyectos {
    margin: 0 5px;
  }

  .contenedor-elementos-de-la-seccion-complementaria {
    width: 90%;
  }

  .fas.fa-quote-right {
    font-size: 70px;
  }
  
  .frase-inspiradora-seccion-frase {
    font-size: 20px;
  }
  
  .autor-de-la-frase-seccion-frase {
    font-size: 25px;
  }

  .menu-inferior {
    display: none;
  }
  
}

@media (max-width: 380px) {
  .contenedor-botones-seccion-proyectos {
    flex-direction: column;
  }

  .boton-seccion-proyectos {
    margin: 5px;
  }

  .tarjetas-de-proyectos-seccion-proyectos {
    width: 220px;
    padding: 60px 30px;
  }
}

/* Clase para el JS */
.hidden {
  display: none;
}