html, body { height: 100%; background: #f2f2f2; } *, *:before, *:after { box-sizing: border-box; } /* Controls ---------------------------------------------------------------------- */ .controls { padding: 1rem; background: #333; font-size: 0.1px; } .control { position: relative; display: inline-block; width: 2.7rem; height: 2.7rem; background: #444; cursor: pointer; font-size: 0.1px; color: white; transition: background 150ms; } .control:hover { background: #3f3f3f; } .control[data-sort]:after { content: ''; position: absolute; width: 10px; height: 10px; border-top: 2px solid; border-left: 2px solid; top: calc(50% - 6px); left: calc(50% - 6px); transform: translateY(1px) rotate(45deg); } .control[data-sort*=":desc"]:after { transform: translateY(-4px) rotate(-135deg); } .mixitup-control-active { background: #393939; } .mixitup-control-active[data-filter]:after { background: transparent; } .control:first-of-type { border-radius: 3px 0 0 3px; } .control:last-of-type { border-radius: 0 3px 3px 0; } /* Container ---------------------------------------------------------------------- */ .container { padding: 1rem; 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-radius: 2px; margin-bottom: 1rem; position: relative; font-family: 'helvetica-neue', arial, sans-serif; } .mix:before { content: ''; display: inline-block; padding-top: 56.25%; } .mix[data-published-date]:after { position: absolute; content: attr(data-published-date); font-size: 1rem; font-weight: bold; color: #aaa; padding: 1rem; width: 100%; top: 0; left: 0; } /* Grid Breakpoints ---------------------------------------------------------------------- */ /* 2 Columns */ .mix, .gap { width: calc(100%/2 - (((2 - 1) * 1rem) / 2)); } /* 3 Columns */ @media screen and (min-width: 541px) { .mix, .gap { width: calc(100%/3 - (((3 - 1) * 1rem) / 3)); } } /* 4 Columns */ @media screen and (min-width: 961px) { .mix, .gap { width: calc(100%/4 - (((4 - 1) * 1rem) / 4)); } } /* 5 Columns */ @media screen and (min-width: 1281px) { .mix, .gap { width: calc(100%/5 - (((5 - 1) * 1rem) / 5)); } }