* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  html {
    font-size: 1rem;
    scroll-behavior: smooth;
    scroll-padding-top: 80px; 
  }

body{
    background-color: rgb(255, 255, 255);
    margin: 0px;
    height: 2000px;
    
}   

nav{    
    width: 100%;
    height: 9vh;
    padding: 20px;
    position: fixed;
    top: 0;
    
}

.titulo{
    text-align: center;
}

.logo{
 line-height: 3rem;
}

.background_color__principal{
    background-color: rgb(255, 247, 0)

}

section{
    margin-top: 10vh;
    padding: 0 5%;
}

/* paleta de color */ 

.background_amarillo-1{
    background-color: rgb(255, 247, 0);
    }

.background_amarillo-2{
    background-color: rgb(255, 255, 100);
    }

.background_amarillo-3{
    background-color: rgb(255, 255, 152);
    }

.background_azul-1{
    background-color: rgb(47, 96, 180);
    }

.background_azul-2{
    background-color: rgb(109, 163, 255);
    }

.background_azul-3{
    background-color: rgb(194, 216, 255);
    }

.background_blanco{
    background-color: rgb(255, 255, 255);
    }

.container_color{
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    }

.muestra{
    height: 100px;
    width: 100%;
    }

.texto_blanco{
    color: white;
}  
/* Tipografía */ 

.galindo-regular {
    font-family: "Galindo", sans-serif;
    font-weight: 400;
    font-style: normal;
  }
  

/* Jerarquía tipo.*/ 
  
h1{
    font-family: "Galindo", sans-serif;
    font-size: 3.5em;
    margin-top: 50px;
}

h2{
    font-family: "Poppins", sans-serif;
    font-size: 2.6em;
    font-weight: 600;
    margin-top: 1px;
    margin-bottom: 15px;
}


h3{
    font-family: "Poppins", sans-serif;
    font-size: 2.4em;
    font-weight: 200;
    margin-top: 30px;
    margin-bottom: 10px; 
}

p{
    font-family: "Poppins", sans-serif;
    font-size: 1.2em;
    font-weight: 200;
    margin-top: 1px;
    line-height: 1.5em;
}

/* Jerarquía tipo_componentes*/ 

.h1_componentes{
    font-family: "Galindo", sans-serif;
    font-size: 2em;
}

.h2_componentes{
    font-family: "Poppins", sans-serif;
    font-size: 1.75em;
    font-weight: 500;
}

.h3_componentes{
    font-family: "Poppins", sans-serif;
    font-size: 1.75em;
    font-weight: 200;
}

.h4_componentes{
    font-family: "Poppins", sans-serif;
    font-size: 1.25em;
    font-weight: 400;
}

.p_componentes{
    font-family: "Poppins", sans-serif;
    font-size: 1em;
    font-weight: 350;
}

.pie_componentes{
    font-family: "Poppins", sans-serif;
    font-size: 0.75em;
    font-weight: 350;
}

/* márgenes */
.margin_zero{
    margin: 0px;
}

.margin_bottom-15{
    margin-bottom: 15px;
}

.margin_bottom-10{
    margin-bottom: 10px;
}

.margin_top-30{
    margin-top: 30px;
}

/* nav */ 

nav{
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
}

nav ul {
    list-style: none;
    font-family: "Poppins", sans-serif;
    font-weight: 300;
    font-size: 1em;
    line-height: 85%;
    
    display: flex;
    justify-content: space-between;
    padding: 0%;
    text-align: center;
    
}

nav ul :hover{
    font-weight: 500;
    transition: ease-in-out;
}

nav ul li {
    margin: 0 30px; 
    
}
 nav a{
    text-decoration: none;
    color: black;
}

/* nav_desplegable*/

/* Ocultar checkbox */
.nav-toggle {
  display: none;
}

/* Estilo del botón hamburguesa */
.nav-toggle-label {
  font-size: 2rem;
  cursor: pointer;
  display: none;
  z-index: 20;
}

/* Lista del menú */
nav ul {
  list-style: none;
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-size: 1em;
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
}

nav ul li {
  margin: 0 1.2rem;
}

nav a {
  text-decoration: none;
  color: black;
}

nav ul li:hover {
  font-weight: 500;
  transition: all 0.3s ease-in-out;
}

/* ---------- MEDIA QUERIES ---------- */
@media only screen and (max-width: 768px) {
  .nav-toggle-label {
    display: block;
  }

  .nav-links {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 70%;
    background: rgb(255, 247, 0);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    padding: 2rem 1rem;
    transform: translateX(-100%);
    transition: transform 0.4s ease-in-out;
    z-index: 10;
  }

  .nav-toggle:checked + .nav-toggle-label + .nav-links {
    transform: translateX(0);
  }

  .nav-links li {
    margin: 0;
  }

  nav {
    flex-direction: column;
    align-items: flex-start;
  }
}


/* grid_tipo*/ 

.grid_tipo{
    border-radius: 30px;
    margin-top: 30px;
    margin-bottom: 60px;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows:  30px 30px 30px 30px 30px 30px;
    width: 100%;
    height: 250px;
    grid-gap: 15px;
    grid-template-areas: 
     "a "  
     "b "  
     "c " 
     "d " 
     "e " 
     "f "
     ;
}

.grid_tipo p{
    width: 70px;
    height: 40px;
}

.tipo_box1{ 
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    grid-area: a;
}

.tipo_box2{ 
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    grid-area: b;
}

.tipo_box3{ 
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
    grid-area: c;
}
.tipo_box4{ 
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    grid-area: d;
}
.tipo_box5{ 
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    grid-area: e;
}
.tipo_box6{ 
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    grid-area: f;
}

.texto_blanco{
    color: white;
}

/* retícula*/ 

.centrar{
       display: block;
       margin: 30px auto;
       width: 400px;
}


/* iconos*/ 

.centrar2{
    margin-top: 30px;
    display: flex;
    width: fit-content;
    margin: auto;
}

.centrar2 img{
    margin: 0 10px;
    width: fit-content;
}

/* botones*/ 


.botones_box1{ 
    grid-area: a;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.botones_box2{ 
    grid-area: b;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.botones_box3{ 
    grid-area: c;
    display: flex;
    flex-direction: column;
    align-items: center;
}


.boton{

    width: fit-content;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
    height: 48px;
    padding-left: 20px;
    padding-right: 20px;
    margin: 5px;
   
}

.boton_pequeño{

    height: 32px;
    padding-left: 16px;
    padding-right: 16px;
}

.borde-grande{
  border: 3px solid black;
}

.borde-pequeño{
  border: 2px solid black;
}

.boton:hover{
    box-shadow: 0px 5px 4px 0px rgba(0, 0, 0, 0.25);
    transition: ease-in-out;
}

.boton:active{
    box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.25) inset;
    border: none;
    background-color: rgb(55, 108, 199);
}

 /* Cards */

.card{
   display: flex;
    width: 216px;
    height: 500px;
    margin-top: 30px;
   
    margin: auto;
    flex-direction: column;
    align-items: center;
    
    
    border-radius: 20px;
    background: #FF0;
}

.card_img{
    width: 100%;
    height: auto;
    display: block;
    
}

.card_contenido{
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 200px;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
}

.card_texto{
    display: flex;
    flex-direction: column;
    
}

.card_título{
    display: flex;
    justify-content: space-between;
    
}

 /* formulario */

 .formulario{
    width: fit-content;
    margin: auto;
    margin-top: 30px;
    background-color: rgb(255, 255, 255);
    padding: 20px;
    border: 2px solid black;
    border-radius: 30px;
    }

    .formulario input:active,
    .formulario textarea:active {
        box-shadow: none; 
        background-color: rgb(255, 255, 255); 

    }
  .formulario input {
    margin-top: 10px;
    margin-bottom: 10px;
  }

  .formulario div{
    margin-top: 20px;
    margin-bottom: 10px;
  }
    
  .formulario textarea{
    margin-top: 10px;
    margin-bottom: 10px;
  }

  /* Tabla */

  .tabla{
    width: 300px;
    margin-top: 30px;
    margin-bottom: 30px;
    margin: auto;
    align-items: center;
  }

  
  .tabla_column{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 10px;
  }

  .tabla_column div{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    border-bottom: 1px solid black;
    
    margin: 10px;
  }

  .tabla_cabecera{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    background-color: rgb(255, 247, 0);
   
    margin: 10px;
  }

/*  versión móvil */

.wrapper {
    /*con este ancho controlas la longitud de línea en versión móvil*/
    width: 90%;
    margin: 0 5%;
    margin-top: 20vh;
  }


  
  
  /* Versión escritorio */
  
  @media only screen and (min-width: 768px) {
    main article {
      /*para centra la caja de texto*/
      margin: auto;
      /*con este ancho controlas la longitud de línea. Si aumenta de 768 deberías de 
      cambiar media query al mismo número */
      width: 800px;
      
    }

    .muestra{
    height: 100px;
    width: 32%;
    }

    .container_color{
    margin-top: 20px;
    display: flex;
    flex-direction: row;
    }

    .grid_botones{
    margin-top: 30px;
    margin-bottom: 60px;
    display: grid;
    grid-template-columns: 33% 33% 33%;
    grid-template-rows:  150px;
    width: 100%;
    height: 150px;
    grid-gap: 15px;
    grid-template-areas: 
     "a b c "  
     ;
}

.tabla{
    width: 100%;
    margin-top: 30px;
    margin-bottom: 30px;
    display: flex;
    
  }

  .tabla_column{
    width: 33%;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 10px;
  }

  }

  footer {
    margin-top: 100px;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 100%;
    height: 5vh;
    background-color: rgb(255, 247, 0);
    display: flex;
    justify-content: center;
    align-items: center;
    /*position: fixed;*/
    bottom: 0;
    }

