/****** reglas generales ******/

* {
    box-sizing: border-box;
}

body {
    font-family: "trebuchet ms", arial, helvetica, sans-serif;
    background-color: gray;
}

a {
    text-decoration: none;
    color: #ddd;
}

a:hover {
    color: white;
}

.contenedor {
    font-size: 2em;
    width: 90vw;
    height: 90vh;
    margin: auto;
    background-color: white;
    padding: 0.5em;
}

.elemento {
    padding: 0.5em;
    color: white;
    text-shadow: 3px 3px 2px rgba(0, 0, 0, 0.5);
}

.item1 {
    background-color: #99D1D1;
}

.item2 {
    background-color: #4DAEAE;
    font-size: 1.2em;
}

.item3 {
    background-color: #008B8B;
    font-size: 0.8em;
}

.item4 {
    background-color: #006161;
    font-size: 1.4em;
}

.item5 {
    background-color: #003838;
    font-size: 0.7em;
}

.item6 {
    background-color: #000E0E;
    font-size: 1.6em;
}


/****** reglas para flexbox ******
  (fue aplicado "autoprefixer") /


/* caja contenedora */

.contenedor {
    /* caja contenedora flexible */
    
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    
    
    /* "permiso" para que los elementos de la caja flexibles
        vayan a la siguinte línea, si no caben */
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}


/* elementos de la caja contenedora */

.elemento {
    /* tamaño de los elementos con relación al eje principal (horizontal) */
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    /* permitirles crecer para que "llenen" la caja contenedora  */
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    /* los elementos también son "cajas flexibles"
       para poder centrar su contenido */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /* centrado según el eje principal (horizontal) */
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    /* centrado según el eje secundario (vertical) */
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}