html {
  box-sizing: border-box;
  font-size: 62.5%; /* 1rem = 10px */
}
*, *:before, *:after {
  box-sizing: inherit;
}
body{
  font-family: 'Open Sans', sans-serif;
  font-size: 1.6rem;
  line-height: 2;
  display: flex;
  flex-direction: column;
}

/* Globales*/

.contenedor {
  max-width: 120rem;
  width: 95%;
  margin: 0 auto;
}
h1,h2,h3,h4 {
  font-family: 'PT Sans', sans-serif;
}
h1{
  font-size: 4.2rem;
  line-height: 1.2;
}
h2 {
  font-size: 4rem;
  line-height: 1.2;
}
h3 {
  font-size: 3.2rem;
}
h4 {
  font-size: 2.8rem;
}
img {
  max-width: 100%;
}

/* Utilidades */

.centrar-texto {
  text-align: center;
}
.no-margin {
  margin: 0;
}

/* Grid */
@media (min-width: 768px) {
  .grid {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .centrar-columnas {
    justify-content: center;
  }
  .columnas-10 {
    flex: 0 0 calc(83.3% - 1rem);
  }
  .columnas-12 {
    flex: 0 0 100%;
  }
  .columnas-12 img{
    width: 100%;
    height: 40rem;
  }
}

/* Header */

@media (min-width: 811px) {
  .site-header {    
    height: 10rem;
  }
  .barra {
    padding-top: 3rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
} 
.site-header {
  position:sticky;
  top: 0;
  background-color: gray;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding-bottom: 2rem;
}
.site-header a {
  color:#ffffff;
  text-decoration: none;
}
.site-header h1 {
  text-align: center;
  margin: 0rem;
}
.barra {
  padding-top: 2rem;
}

/* Navegacion */

.navegacion {
  padding-top: 3rem;
}
.navegacion a {
  text-align: center;
  display: block;
  font-size: 1.8rem;
  text-decoration: none;
}
.navegacion a:hover{
  color: #718100;
}
@media (min-width: 811px) {
  .navegacion {
    padding-top: .5rem;
  }
  .navegacion a {
    display: inline;
    margin-right: 2rem;
    color: #ffffff;
    text-decoration: none;
  }
  .navegacion a:last-of-type {
    margin: 0;
  }
}

/* Seccion Enunciado */ 

.seccion-enunciado {
  margin-top: 2rem;
  background-image: url(../img/servidores.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border-radius: 2rem;
  height: 25rem;
  display: flex;
  flex-direction: column;
  text-align: center;
  justify-content: center;
  color: #ffffff;
}

/* Seccion Presentacion */

@media (min-width: 811px) {
  .seccion-presentacion {
    display: flex;
    padding-bottom: 1rem;
  }
  .sobremi {
    position: absolute;
  }
  .imagen {
    padding-top: 4.5rem;
    margin: 1rem;  
    flex-basis: 32%;
  }
  .presentacion {
    margin-top: 8rem;
  }
}
.borde-presentacion {
  margin-top: 2rem;
  border: black 2px solid;
  border-radius: 2rem;
  margin-bottom: 2rem;
}
.imagen {
  margin-top: 2rem;
}
.imagen img {
  border-radius: 25%;
}


/* Titulacion*/

@media (min-width: 811px) {
  .situacion {
      justify-content: left;
      text-align: left;
    }
  .texto {
    margin-left: 2rem;
  }
  .situacion h4 {
    text-align: left;
  }
}
.borde-titulacion {
  border: black 2px solid;
  border-radius: 2rem;
  margin-bottom: 2rem;
}
.fecha-titulacion {
  border: black 2px solid;
  width: 14.5rem;
  text-align: left;
  margin-top: 1rem;
  margin-left: 2rem;
}
.fecha-certificados {
  border: black 2px solid;
  width: 7rem;
  text-align: left;
  margin-top: 1rem;
  margin-left: 2rem;
}
.borde-titulacion h4 {
  line-height: 1;
  margin-bottom: 1rem;
}
.borde-titulacion p {
  line-height: 1.5;
  margin-bottom: 3rem;
}

/* Boton */

@media (min-width: 811px) {
  .boton {
      display: inline-block;
      flex: 0 0 auto;
  }
}
.boton{
  color: #ffffff;
  font-weight: 700;
  text-decoration: none;
  font-size: 1.8rem;
  padding: 1rem 3rem;
  margin-top: 3rem;
  margin-bottom: 2rem;
  display: inline-block;
  text-align: center;
  border: none;
  display: block;
  flex: 0 0 100%;
}
.boton:hover {
  cursor: pointer;
}
.boton-amarillo{
  background-color: #0c98e9;
}

.btn {
  display: block;
  text-align: center;
  padding: 1rem 3rem;
  margin: 2rem 0;
  color: #ffffff;
  text-decoration: none;
  font-family: 'PT Sans', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 2rem;
  flex: 0 0 100%;
}
.btn:hover {
  cursor: pointer;
}
@media (min-width: 768px) {
  .btn {
    display:inline-block;
    flex: 0 0 auto;
  }
}
.btn-negro {
  background-color: #000000;
}

/* Proyectos */

@media (min-width: 811px) {
  .contenedor-proyectos {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
  }
}
.contenedor h2 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.proyecto{
  border: #B5B5B5 1px solid;
  background-color: #F5F5F5;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
@media (min-width: 811px) {
  .proyecto {
      flex: 0 0 calc(33.3% - 1rem);
  }
  .proyecto img {
    height: 300px;
    width: 400px;
  }
  .proyecto .viajes {
    margin-top: 10.9rem;
    height: 80px;
    width: 528px;
  }
  .contenido-proyecto.viaje {
    padding-top: 13rem;
  }
}
.contenido-proyecto {
  padding: 2rem;
} 
.contenido-proyecto h3,
.contenido-proyecto p {
  margin: 0;
}

/* Contacto */

.formulario-contacto {
  background-color: #ffffff;
  padding: 5rem;
}
.fondo img {
  border-radius: 2rem;
}
@media (min-width: 768px) {
  .formulario-contacto {
    margin-top: -10rem;
  }
}
.formulario-contacto .campo{
  display: flex;
  justify-content: space-between;
  margin-bottom: 2rem;
}
.formulario-contacto .campo label {
  flex: 0 0 8rem;
}
.formulario-contacto .campo input:not([type="submit"]),
.formulario-contacto textarea {
  flex: 1;
  border: 1px solid #e1e1e1;
  padding: 1rem;
}
.formulario-contacto textarea {
  height: 20rem;
}
.formulario-contacto .enviar {
  display: flex;
  justify-content: flex-end;
}

/* Footer */

@media (min-width: 811px) {
  .contenedor-footer {
      display: flex;
      justify-content:space-between;
  }
}
.site-footer {
  background-color:#333333;
  margin: 0;
}
.contenedor-footer {
  padding: 3rem 0;
  text-align: center;
}
.copyright {
  margin: 0;
  color: #ffffff;
}
