*{
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
  line-height: 0;
}
body{
  background-color: #d4d4d4;
  font-family: 'comfortaa';
}
a{
  text-decoration: none;
}
a, p, input{
  margin: 10px 0px;
  line-height: 1.5;
}
ul li{
  line-height: 1.5;
}

h1{
  color: #444;
  text-shadow: 0px 0px 2px #eee;
  font-size: 3vmax;
  line-height: 2;
}
h2{
  font-size: 2vmax;
  color: #eee;
  text-shadow: 0px 0px 10px #eee;
  line-height: 2;
}
h3{
  font-size: 1vmax;
  margin-bottom: 18px;
  text-shadow: 0px 0px 10px #999;
  line-height: 1.75;
}

.half ul{
  padding-left: 20px;
}
input[type="text"], input[type="button"]{
  width: 100%;
  padding: 10px 5px;
  margin-bottom: 16px;
  font-size: 1vmax;
}

input[type="button"]{
  background-color: dodgerblue;
  border: none;
  color: #eee;
}

#head{
  background-color: #000;
  text-align: center;
  width: 100%;
  padding: 5px;
}
#cabecera{
  background-repeat: no-repeat;
  background-size: cover;
}
.imagen{
  width: 100%;
  height: auto;
  line-height: 0;
}
.caja{
  width: 80%;
  margin: 0 auto;
}
.padding{
  padding: 2%;
}

.padding-20{
  padding: 20px;;
}
.padding-50{
  padding: 50px 0px;
}
.padding-30-ud{
  padding: 30px 0px;
}
.padding-200-ud{
  padding: 200px 0px;
}
.row{
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: center;
}
.half{
  width: 50%;
  float: left;
}
.quarter{
  width: 25%;
  float: left;
  padding: 2%;
}
.button{
  padding: 20px 40px;
  border: 1px solid #eee;
  border-radius: 5px;
  color: #eee;
  font-weight: 800;
}
.button:hover{
  background-color: #fff;
  color: #444;
}
.container{
  width: 60%;
  margin: auto;
  background-color: #fff;
  box-shadow: 0px 0px 10px #888;
}
.center{
  text-align: center;
}
.margin-top{
  margin-top: 2%;
}

#footer{
  background-color: #000;
  color: #eee;
}
#footer a{
  font-size: 3vmax;
}
.footer ul{
  padding: 0px;
}
.footer > li{
  list-style: none;
  padding-top: 2%;
}

#social a{
  color: #eee;
  padding: 1% 2%;
}

@media only screen and (max-width: 600px) {
  #cabecera{
    background-image: url(img/cabecera_480.webp);
  }
  .row{
    flex-wrap: wrap;
  }
  .half{
    width: 100%;
  }
  .quarter{
    width: 100%;
  }
}

@media only screen and (min-width: 600px) {
    #cabecera{
    background-image: url(img/cabecera_480.webp);
  }
  .row{
    flex-wrap: wrap;
  }
  .half{
    width: 100%;
  }
  .quarter{
    width: 100%;
  }
}

@media only screen and (min-width: 768px) {
    #cabecera{
    background-image: url(img/cabecera_1080.webp);
  }
  .half{
    width: 50%;
  }
  .quarter{
    width: 25%;
  }
}

@media only screen and (min-width: 992px) {
    #cabecera{
    background-image: url(img/cabecera_1280.webp);
  }
  .half{
    width: 50%;
  }
  .quarter{
    width: 25%;
  }
}

@media only screen and (min-width: 1200px) {
    #cabecera{
    background-image: url(img/cabecera_1920.webp);
  }
} 
