html,
body {
    height: 100%;
    background: #f2f2f2;
}

*,
*:before,
*:after {
    box-sizing: border-box;
}

/* Controls
---------------------------------------------------------------------- */

.controls {
    padding: 16px;
    background: #333;
    font-size: 0.1px;
}

.control {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding: 10px;
    font-size: 15px;
    height: 35px;
    min-width: 25px;
    background: #444;
    cursor: pointer;
    color: white;
    font-weight: 800;
    transition: background 150ms;
}

.control:hover {
    background: #3f3f3f;
}

.control[data-sort*=":desc"]:after {
    transform:  translateY(-4px) rotate(-135deg);
}

.mixitup-control-active {
    background: #393939;
}

.control[data-filter="all"] {
    background: #fff;
}

.control[data-filter=".green"] {
    background: #91e6c7;
}

.control[data-filter=".blue"] {
    background: #5ecdde;
}

.control[data-filter=".pink"] {
    background: #d595aa;
}

.control[data-filter="none"] {
    background: #2f2f2f;
}

/* Container
---------------------------------------------------------------------- */

.container {
    padding: 16px;
    text-align: justify;
    font-size: 0.1px;
}

.container:after {
    content: '';
    display: inline-block;
    width: 100%;
}

/* Target Elements
---------------------------------------------------------------------- */

.mix,
.gap {
    display: inline-block;
    vertical-align: top;
}

.mix {
    background: #fff;
    border-top: 8px solid transparent;
    border-radius: 2px;
    margin-bottom: 1.25%;
    position: relative;
}

.mix:before {
    content: '';
    display: inline-block;
    padding-top: 56.25%;
}

.mix.green {
    border-top-color: #91e6c7;
}

.mix.pink {
    border-top-color: #d595aa;
}

.mix.blue {
    border-top-color: #5ecdde;
}

.mix,
.gap {
    width: 24%;
}