html {
  box-sizing: border-box; }

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

.grid {
  max-width: 68em;
  margin-left: auto;
  margin-right: auto; }
  .grid::after {
    clear: both;
    content: "";
    display: table; }
  .grid .column {
    margin-top: 2.3576515979%; }
    @media screen and (min-width: 960px) {
      .grid .column {
        float: left;
        display: block;
        margin-right: 2.3576515979%;
        width: 31.7615656014%; }
        .grid .column:last-child {
          margin-right: 0; }
        .grid .column:nth-child(3n+0) {
          margin-right: 0; } }
    @media screen and (max-width: 959px) {
      .grid .column {
        float: left;
        display: block;
        margin-right: 2.3576515979%;
        width: 48.821174201%; }
        .grid .column:last-child {
          margin-right: 0; }
        .grid .column:nth-child(2n+0) {
          margin-right: 0; } }
    @media screen and (max-width: 549px) {
      .grid .column {
        float: left;
        display: block;
        margin-right: 2.3576515979%;
        width: 100%; }
        .grid .column:last-child {
          margin-right: 0; } }
    .grid .column .column-inner {
      padding-top: 100%;
      position: relative;
      background-color: rgba(238, 238, 238, 0.1); }

.column-content {
  width: 100%;
  height: 100%;
  padding: 15px;
  position: absolute;
  top: 0;
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-transition: background 0.2s ease;
  -moz-transition: background 0.2s ease;
  transition: background 0.2s ease;
  overflow: hidden; }
  .column-content .column-title {
    position: absolute;
    top: 15px;
    right: -100%;
    transition: right 0.2s linear; }
  @media screen and (min-width: 960px) {
    .column-content:hover {
      background-size: auto 105%; }
      .column-content:hover .column-title {
        right: 0; } }
  @media screen and (max-width: 959px) {
    .column-content .column-title {
      right: 0; } }
  .column-content .column-title {
    margin: 0;
    padding: 5px;
    color: #eee;
    background-color: rgba(0, 0, 0, 0.7); }
