@import url('https://fonts.googleapis.com/css2?family=Krona+One&family=Montserrat:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,400;0,700;1,400&family=Oswald:wght@200..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@200..700&display=swap');

:root {
  --color-primario: #000000;
  --color-secundario: #F6F6F6;
  --color-terciario: #0083B0;
  --color-hover: #272727;

  --fuente-krona: 'Krona One', sans-serif;
  --fuente-montserrat: 'Montserrat', sans-serif;
  --fuente-libre: 'Libre Baskerville', serif;
  --fuente-Oswald: 'Oswald', serif;
}

/* Barra de navegacion */

.navbar, .nav-link {
  padding: 1rem;
  /* background-color: #f5f6f7; */
  font-family: var(--fuente-montserrat);
    font-size: 24px;
    font-weight: 600;
    color: var(--color-terciario);
    text-decoration: none;
}

.navbar-collapse {
  align-items: center;
  justify-content: space-between;  

}


/* Estilos generales */

section {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

h1 {
  font-size: 2.5rem;
  font-family: 'Rubik Dirt', cursive;
}
/* Cambiar color de conoce a Areli Manuel */
.seccion-oscura {
  color: rgb(22, 20, 20);
  background-color: #074799;
  font-family: var(--fuente-libre);
}

.seccion-herramientas{
  font-size: 30px;
  font-weight: 600;
  font-family: var(--fuente-Oswald);
  
}

.seccion-clara {
  color: black;
  background-color: white;
}

.seccion-titulo {
  font-size: 2rem;
  padding: 15px 0;
  font-family: 'Rubik Dirt', cursive;
  
}

.seccion-descripcion {
  font-size: 1.2rem;
  color: #584e4e;
}

.seccion-texto {
  font-size: 1.2rem;
}

.btn-info {
  font-size: 1.1rem;
  margin: 20px;
}

.texto-negro {
  color: black;
}

.texto-blanco {
  color: rgb(12, 5, 5);
}

/* Seccion Hero */

.hero {
  background-color: #f5f6f7;
  min-height: 450px;
  text-align: center;
}

.hero-principal {
  padding: 3rem;
}

.hero-imagen-desarrollador {
  width: 450px;
  height: 450px;
  margin: 20px;
  /* sombra */
  box-shadow: 20px 20px 30px rgba(102, 132, 214, 0.5);
}
.hero-inferior-imagen{
  width: 400px;
  height: 400px;
  
}

.hero-principal h2 {
  font-size: 1.5rem;
  color: #615151;
}

/* Sobre mi */

/* .sobre-mi {
  height: 500px;
  padding: 10px;
} */

.sobre-mi .contenedor {
  max-width: 850px;
  text-align: center;
}
/* General */
#certificados{
  padding: 50px;
}
#sobre-mi {
  padding: 20px;
  
  color: #fff;
}

.seccion-titulo {
  text-align: center;
  margin-bottom: 20px;
  font-size: 2rem;
}

.seccion-texto {
  font-size: 1.2rem;
  line-height: 1.6;
  text-align: justify;
  margin-bottom: 20px;
}

.herramientas {
  text-align: center;
}

.herramientas-grid {
  display: flex;
  flex-wrap: wrap; /* Permite que los elementos se ajusten */
  gap: 15px;
  justify-content: center;
}

/* Experiencia */

.experiencia {
  padding: 40px 40px 60px 40px;
}

.experiencia .columna {
  padding: 20px;
  border: 2px solid #8080804d;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  transition: all 0.2s ease-in;
}
/* cambiar color a cajas de donde dice desarrollo articulos al pasar el mause  */
.experiencia .columna:hover {
  color: rgb(31, 6, 6);
  background-color: #D84040;
}

.experiencia i {
  font-size: 2.5rem;
  color: #7ade30;
  background-color: #0a0a23;
  padding: 8px 19px;
  border-radius: 50%;
}

.experiencia-titulo {
  font-size: 25px;
  font-weight: bold;
  margin: 10px 0;
}

.badges-contenedor {
  font-size: 20px;
  font-weight: bold;
  margin: 10px 0;
}

.badge {
  margin: 5px;
}
/* cv pdf */
.seccion-titulo{
  text-decoration: none;
}
.cv-boton {
  background-color: #f06a6a; /* Fondo de boton*/
  color: rgb(37, 37, 37); /* Texto blanco */
  padding: 12px 20px; /* Espaciado interno */
  font-size: 20px; /* Tamaño de la fuente */
  border: none; /* Sin borde */
  border-radius: 8px; /* Bordes redondeados */
  display: flex; /* Usamos flexbox para centrar imagen y texto */
  align-items: center; /* Centra los elementos verticalmente */
  gap: 8px; /* Espacio entre texto e imagen */
  cursor: pointer; /* Puntero al pasar el mouse */
  transition: background-color 0.3s ease; /* Efecto de transición */
}

.cv-boton:hover {
  background-color: #e4d44b; /* Cambia el color de fondo al pasar el ratón */
}

/* .cv-boton:active {
  background-color: #388e3c; /* Cambia el color de fondo al hacer clic */
/* } */ 

#imgcv {
  width: 80px; /* Tamaño de la imagen */
  height: 80px; /* Tamaño de la imagen */
}


/* Proyectos */

.proyectos-recientes {
  padding: 40px;
}

.proyectos-recientes img {
  height: 100%;
  width: 100%;
  padding: 10px;
  border-radius: 10px;
  display: block;
  transition: all 0.2s ease;
}

.proyectos-contenedor {
  padding-top: 60px;
  margin-bottom: 40px;
}

.overlay {
  transition: all 0.2s ease;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}

.overlay p {
  font-size: 25px;
  font-weight: bold;
  margin-bottom: 0;
}

.proyecto {
  position: relative;
}

.proyecto:hover img {
  opacity: 0.2;
}

.proyecto:hover .overlay {
  opacity: 1;
}

.overlay .iconos-contenedor {
  display: flex;
}

.overlay i {
  color: black;
  font-size: 60px;
  margin: 10px;
}



/* Contacto */

.contacto .container {
  max-width: 1100px;
  min-height: 200px;
  padding: 20px;
}
/* rectangulo de contactame  */
.contacto .rectangulo {
  margin-top: -5rem;
  background-color: #fcbf49;
  border-radius: 10px;
  box-shadow: 0px 1px 4px 1px rgb(34, 33, 33);
}

.contacto .row {
  width: 100%;
  display: flex;
  align-items: center;
}

.contacto .descripcion {
  color: white;
  font-size: 1.2rem;
}

.contacto button {
  color: white;
  font-weight: bold;
  background-color: transparent;
  border: 2px solid white;
  padding: 1.25em 2em;
  margin: 10px;
  border-radius: 100px;
  transition: all 0.2s ease-in-out;
}

.contacto button:hover {
  background-color: white;
  color: black;
}

.contacto button i {
  color: white;
  font-size: 1.3rem;
  transition: all 0.2s ease-in-out;
}

.contacto button:hover i {
  color: black;
}

/* Pie de pagina (footer) */

footer {
  min-height: 500px;
}

.footer-logo {
  height: 80px;
  width: 80px;
  margin: 10px;
}

.footer-texto {
  font-size: 1.5rem;
  padding: 20px;
  margin-bottom: 30px;
  font-family: 'Quicksand', sans-serif;
}

.iconos-redes-sociales a {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2px;
  margin: 10px;
  border: 2px solid white;
  border-radius: 50%;
  transition: all 0.2s ease-in;
}

.iconos-redes-sociales i {
  color: white;
  font-size: 1.5rem;
  transition: all 0.2s ease-in;
}

.iconos-redes-sociales a:hover {
  background-color: white;
  border: 2px solid rgba(114, 151, 206, 0.76);
}

.iconos-redes-sociales a:hover i {
  color: black;
}

.derechos-de-autor {
  font-size: 15px;
  color: #aeaeae;
  padding: 20px;
}

/* Responsivo */
@media screen and (max-width: 768px) {
  .seccion-texto {
    font-size: 0.9rem;
    line-height: 1.5;
  }

  .herramientas-grid img {
    max-width: 60px; /* Reduce el tamaño de los íconos */
    height: auto;
  }
}

@media screen and (max-width: 480px) {
  #sobre-mi {
    padding: 15px;
  }

  .seccion-titulo {
    font-size: 1.5rem;
  }

  .seccion-texto {
    font-size: 0.85rem;
  }

  .herramientas-grid {
    flex-direction: column; /* Los íconos se apilan verticalmente */
    align-items: center;
  }
}