@charset "utf-8";
* {box-sizing: border-box;}
body {
    /* familia tipografica general del proyecto
       (sus elementos contenidos la heredan) */
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  
    /* se retiran los 8 pixeles de margen que vienen predeterminados en body para que sus elementos contenidos "lleguen" hasta los bordes de la ventana del navegador */
    margin: 0;
  
    /* color general de los textos */
    color: hsl(0, 0%, 15%);
  
    /* color de fondo */
    background-color: hsl(177, 69%, 90%);
  }

  p,
li {
  /* se evitan "viudas" y "huerfanos" */
  text-wrap: pretty;
}


h1,
h2,
h3,
h4,
h5 {
  /* mas oscuros que los otros textos */
  color: hsl(245, 97%, 12%);

  /* parecido a interlineado, valor 1 equivaldria a interlineado igual al tamaño de la tipografia */
  line-height: 1.1;
  /* en web, generalmente, el interlineado en titulos es menor que el interlineado en parrafos */

  /* si ocupa más de una linea,
  se equilibran los anchos de esas lineas */
  text-wrap: balance;
}
img {
    /* mediran, como maximo, el tamaño
       del bloque html que las contiene */
    max-width: 100%;
  }
  a {
    /* no estaran subrayados */
    text-decoration: none;
  
    /* seran de un color definido en la "paleta de diseño" */
    color: hsl(210, 96%, 11%);
  
    /* negrita */
    font-weight: bold;
  }
  
  /* "TODAS" las listas */
  ul,
  ol {
    /* elimina bullets, numeros etc. */
    list-style: none;
  
    /* retira el relleno izquierdo predeterminado */
    padding: 0;
  }

  .contenedora {

    /* ancho maximo 1040px */
    max-width: 65rem;
  
    /* centrado horizontal (si sobra espacio,
      lo distribuye a izquierda y derecha por igual) */
    margin-inline: auto;
  
    /* espacio entre el borde del elemento y su contenido
    para que este no quede "pegado" a los bordes */
    padding: 1rem;
  }

  header,
  footer {
    /* color de fondo: de la paleta de diseño */
    background-color: hsl(210, 88%, 63%);
  
    /* color de texto: de la paleta de diseño */
    color: hsl(0 0% 95%);
  }  

  header {
    /* sombra difusa  */
    box-shadow:
      0   /* desplazamiento horizontal */
      4px /* desplazamiento vertical */
      4px /* desenfoque */
      hsl(0 0% 0% / 20%) /* color */
  }

  footer {
    /* sombra difusa  */
    box-shadow:
      0   /* desplazamiento horizontal */
      -4px /* desplazamiento vertical */
      4px /* desenfoque */
      hsl(0 0% 0% / 20%) /* color */
  }

  #logoDGPC {
      display: block;
      width: 8rem;}

  header nav ul {
    /* elimina los margenes arriba y abajo que vienen predeterminados */
    margin-block: 0;
    /* en proximas clases se ocultara el menu en celulares */
    /* display: none; */
  }
  header nav a {
    /* color del texto */
    color: hsl(240, 100%, 8%);
  
    /* color de fondo */
    background-color: hsl(198, 57%, 91%);
  
    /* para darle propiedades de caja (ancho, por ejemplo) */
    display: block;
  
    /* ancho igual para todos */
    width: 5em;
  
    /* "relleno" arriba y abajo */
    padding-block: 0.25em .5em;
  
    /* border redondeado */
    border-radius: .5rem;
    /* cantidad muuuuuy grande para que
    se visualice como "pildora" */
  
    /* texto centrado */
    text-align: center;
  }

  header nav a:hover,
header nav a:focus-visible,

.index nav li:first-of-type a,
.plan nav li:nth-of-type(2) a,
.mapa nav li:nth-of-type(3) a {
  /* cambia el color de fondo */
  background-color: hsl(0 0% 95%);

  /* cambia el color de texto */
  color: hsl(210 92% 36%);
  outline: none;
}

section.contenedora {
    /* distancia entre sus contenidos
    y sus bordes superior e inferior */
    padding-block: 1em;
  }

  .titulo {
    /* "subrayado" a todo lo ancho */
    border-block-end: 4px solid hsl(241, 100%, 11%);
    
    /* separa el "subrayado" del texto */
    padding-block-end: .35rem;
    text-align: center;
  }

  .equipo article {
    /* color de fondo */
    background-color: hsl(280 29% 44% / .15);
  
    /* distancia vertical entre los integrantes */
    margin-block: .5em;
  
    /* "relleno" (distancia entre contenido y borde) */
    padding: 2em;
  
    /* borde redondeado */
    border-radius: .25em;
  }

  .equipo img {
    /* tamaños */
    width: 10em;
    aspect-ratio: 1;
  
    /* borde violeta */
    border: solid .4em hsl(237, 98%, 16%);
  
    /* imagen redonda */
    border-radius: 5%;
  
    /* sombra interna y externa */
    box-shadow:
      0 4px 4px hsl(0 0% 0% / 20%);
  }
  .equipotextos a {
    background-color: hsla(240, 98%, 19%, 0.584);
    border-radius: 100vw;
    color: hsl(0, 0%, 100%);
    font-size: 1em;
    padding-block: .125em .25em;
    padding-inline: 1em .75em;

  }
  .equipotextos a::after {
    content: " 🡆";
  }

.equipotextos a:hover,
.equipotextos a:focus-visible {
  color: hsl(0, 0%, 100%);
  background-color: hsl(232, 92%, 10%);
  outline: none;
}

.datosAcademicos > ul > li:not(:last-of-type) {
    /* li­nea divisoria*/
    border-bottom: solid 2px hsla(241, 82%, 28%, 0.297);
    
    /* espacio antes de la li­nea */
    padding-block-end: 1.5em;
    
    /* espacio despues de la li­nea*/
    margin-block-end: 1.5em;
  }

  .datosAcademicos img {
    display: block;
    width: 8em;
    object-fit: contain;
    background-color: white;
    padding: .5rem;
    border-radius: .25rem;
    box-shadow: 0 4px 4px transparent;
    transition: box-shadow .6s ease;
  }

  .datosAcademicos a:hover img {
    box-shadow: 0 4px 4px hsla(0, 0%, 0%, 0.608);
    transition: box-shadow .3s ease;
  }

  footer p {
    /* elimina el margen inferior que viene predeterminado */
    margin-block-end: 0;
  }

  body {
    /* altura del navegador, como minimo */
    min-height: 100dvh;
  
    /* contenedor tipo cuadri­cula */
    display: grid;
  
    /* PLANTILLA de la cuadricula: altura de las li­neas
    --> header: la altura de su contenido
    --> main: se estira para ocupar el mayor espacio */
    grid-template-rows: auto 1fr;
  }

  header .contenedora {
    /* caja contenedora flexible */
    display: flex;
  
    /* elementos de la caja flexible separados segun el eje principal (horizontal) */
    justify-content: space-between;
  
    /* elementos centrados en el eje secundario (vertical) */
    align-items: center;
  
    /* si un elemento no cabe, baja a la siguiente li­nea */
    flex-wrap: wrap;
  
    /* separacion minima entre elementos de la caja flexible */
    gap: 1rem;
  }
  header nav ul {
    /* caja flexible */
    display: flex;
  
    /* separacion entre elementos de la caja flexible */
    gap: .25rem;
  
    /* si un elemento no cabe, baja a la siguiente li­nea */
    flex-wrap: wrap;
  }

  .contenedora figure {
    float: left;
  }

  .equipo_articulos {
    /* contenedor tipo cuadri­cula */
    display: grid;
  
    /* plantilla de columnas:
    --> que los elementos "llenen" todo el espacio horizontal con un ancho base de 320px (20rem) para que...
    en celulares quepa un integrante a lo ancho,
    en tabletas quepan 2, lado a lado,
    y en escritorio quepan 3, lado a lado  */
    grid-template-columns: repeat(auto-fit, minmax(min(20rem, 100%), 1fr));
  
    /* separacion entre integrantes */
    gap: 1rem;
  }

  .equipo_articulos article {
    /* para que imagen quede a la izquierda y texto a la derecha */
    display: grid;
    /* PLANTILLA de columnas */
    grid-template-columns: 6rem 1fr;
  
    /* separacion entre imagen y textos, 1 renglon */
    gap: 1rem; 
  }

  .equipotextos {
    /* contenedor tipo cuadri­cula */
    display: grid;
    
    /* altura de las "filas...
    --> el nombre: altura de su contenido
    --> la carrera: altura de su contenido
    --> el parrafo se estira y ocupa todo el espacio disponible  */
    grid-template-rows: auto auto 1fr;
  
    /* separacion minima entre textos: 1.25 renglones */
    gap: 1.25em;
  }

  .equipotextos > * {
    /* se eliminan los márgenes predeterminados para que
    se separen solo con la propiedad "gap" de la caja contenedora */
    margin: 0;  
  }

  .equipotextos a {
    /* se va a la derecha, poniendo margen a la izquierda */
    margin-inline-start: auto;
  }

  .datosAcademicos > ul {

    /* separacion entre instituciones 1 renglon */
    gap: 1em;
  }

  .datosAcademicos > ul > li {
    /* caja flexible */
    display: flex;
    /* si el texto no cabe, se va para abajo */
    flex-wrap: wrap;
    /* espacio entre foto y texto: 1 renglon */
    gap: 1em;
    /* elementos alineados a la izquierda */
    justify-content: flex-start;
    /* elementos alineados por arriba, en la vertical */
    align-items: flex-start;
    /* Si hay mas de una linea de elementos,
    loa elementos de CADA linea
    alineados por arriba, en la vertical */
    align-content: flex-start;
  }

  .datosAcademicos h2 {
    margin-block-start: 0;
  }
