/* Text Elements */

h1.heading-1 {
  margin-bottom: 1rem;
  font-size: 26px;
}

p.paragraph span.paragraph-text-1 {
  font-weight: 600;
}

/* Layout Elements */

body.body-1 {
  background-color: #ddd;
}

.container-grid.gallery {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 20px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 10px;
  padding-bottom: 10px;
  width: 90%;

  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.container-grid.outer-container {
  margin-right: auto;
  margin-left: auto;
  padding: 10px;
}

.container-grid.gallery-item {
  margin-right: 7px;
  margin-bottom: 10px;
  margin-left: 7px;
}

div.responsive-picture.gallery-img {
  max-width: none;
  height: 100%;
}

div.responsive-picture.gallery-img > picture {
  height: 100%;
}

div.responsive-picture.gallery-img > picture > img {
  -o-object-fit: cover;
     object-fit: cover;
}

.container-grid.header {
  margin: 20px auto 10px;
  padding: 10px;
  width: 90%;
}

@supports (display: grid) {
  /* Layout Elements */

  body.body-1 {
    background-color: #ddd;
  }
}

@media screen and (min-width: 36rem) {
  /* Text Elements */

  h1.heading-1 {
    font-size: 30px;
  }

  .container-grid.gallery {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-pack: justify;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
            justify-content: space-between;
  }

  .container-grid.gallery-item {
    width: 47%;
    height: auto;
  }
}

@media screen and (min-width: 48rem) {
  /* Text Elements */

  h1.heading-1 {
    font-size: 34px;
  }

  p.paragraph.comments {
    margin-right: auto;
    margin-left: auto;
    width: auto;
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
  }

  .container-grid.gallery {
    width: 80%;
  }

  .container-grid.header {
    width: 80%;
  }

  @supports (display: grid) {
      .container-grid.gallery {
      display: grid;
      padding-right: 10px;
      padding-left: 10px;

      grid-row-gap: 10px;
      grid-column-gap: 10px;
      grid-template-columns: repeat(8 , 1fr);
      grid-template-rows: repeat(11 , 5vh);
    }

    .container-grid.gallery-item {
      margin-right: 0;
      margin-bottom: 0;
      margin-left: 0;
      width: auto;
    }

    .container-grid.gallery-item.item6 {
      grid-area: 1/1/3/3;
    }

    div.responsive-picture.gallery-img {
      grid-area: auto /auto/ auto /auto;
    }

    .container-grid.gallery-item.item1 {
      grid-area: 1/3/3/5;
    }

    .container-grid.gallery-item.item9 {
      grid-area: 1/5/6/9;
    }

    .container-grid.gallery-item.item11 {
      grid-area: 3/1/6/5;
    }

    .container-grid.gallery-item.item2 {
      grid-area: 6/1/9/5;
    }

    .container-grid.gallery-item.item8 {
      grid-area: 6/5/8/7;
    }

    .container-grid.gallery-item.item10 {
      grid-area: 6/7/8/9;
    }

    .container-grid.gallery-item.item12 {
      grid-area: 8/5/10/7;
    }

    .container-grid.gallery-item.item3 {
      grid-area: 8/7/10/9;
    }

    .container-grid.gallery-item.item4 {
      grid-area: 9/1/12/3;
    }

    .container-grid.gallery-item.item7 {
      grid-area: 9/3/12/5;
    }

    .container-grid.gallery-item.item5 {
      grid-area: 10/5/12/9;
    }
  }
}

@media screen and (min-width: 62rem) {
  .container-grid.gallery-item {
    width: 31.5%;
  }

  @supports (display: grid) {
      .container-grid.gallery {
      -ms-flex-align: start;

      -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
              align-content: flex-start;
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
         -moz-box-align: start;
              align-items: flex-start;
      justify-items: auto;
      grid-template-rows: repeat(11 , 7vh);
    }

    .container-grid.gallery-item.item9 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item6 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item1 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item11 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item2 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item4 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item7 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item5 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item12 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item8 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item10 {
      width: 100%;
      height: 100%;
    }

    .container-grid.gallery-item.item3 {
      width: 100%;
      height: 100%;
    }
  }
}

@media screen and (min-width: 75rem) {
  /* Text Elements */

  h1.heading-1 {
    font-size: 40px;
  }

  p.paragraph.comments {
    width: auto;
  }

  .container-grid.gallery-item {
    width: 23.5%;
  }

  .container-grid.header {
    width: 80%;
  }

  @supports (display: grid) {
      /* Layout Elements */

    body.body-1 {
      background-color: #ddd;
    }

    .container-grid.gallery {
      padding-right: 10px;
      padding-left: 10px;

      grid-template-rows: repeat(9 , 10vh);
      grid-template-columns: repeat(10 , 1fr);
    }

    .container-grid.outer-container {
      background-color: transparent;
    }

    .container-grid.gallery-item.item6 {
      grid-area: 1/1/3/4;
    }

    .container-grid.gallery-item.item1 {
      grid-area: 1/6/3/8;
    }

    .container-grid.gallery-item.item11 {
      grid-area: 3/1/6/4;
    }

    .container-grid.gallery-item.item9 {
      grid-area: 3/4/7/8;
    }

    .container-grid.gallery-item.item10 {
      grid-area: 1/4/3/6;
    }

    .container-grid.gallery-item.item8 {
      grid-area: 1/8/3/11;
    }

    .container-grid.gallery-item.item2 {
      grid-area: 3/8/5/11;
    }

    .container-grid.gallery-item.item4 {
      grid-area: 5/8/8/11;
    }

    .container-grid.gallery-item.item5 {
      grid-area: 6/1/8/4;
    }

    .container-grid.gallery-item.item7 {
      grid-area: 7/4/10/8;
    }

    .container-grid.gallery-item.item12 {
      grid-area: 8/1/10/4;
    }

    .container-grid.gallery-item.item3 {
      grid-area: 8/8/10/11;
    }
  }
}