/* Text Elements */

h1.heading-1 {
  margin-top: 10px;
  padding-left: 10px;
}

/* Layout Elements */

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

.container.gallery-column {
  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;
  -ms-flex-align: center;
  margin-right: auto;
  margin-left: auto;
  padding-right: 2px;
  padding-bottom: 0;
  padding-left: 2px;
  width: 100%;

  -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;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
}

.container.gallery-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-pack: justify;
  margin-right: auto;
  margin-left: auto;
  padding-top: 20px;
  padding-right: 5px;
  padding-left: 5px;

  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
          justify-content: space-between;
}

div.responsive-picture.gallery-pic {
  margin-top: 0;
  margin-bottom: 0;
  padding-right: 4px;
  padding-bottom: 8px;
  padding-left: 4px;
  max-width: 100%;
}

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

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

  /* Layout Elements */

  .container.comments {
    max-width: 1200px;
  }

  .container.gallery-column {
    margin-top: 0;
    padding-bottom: 0;
    width: 50%;
  }

  .container.gallery-wrapper {
    padding-top: 20px;
  }

  div.responsive-picture.gallery-pic {
    margin-top: 8px;
    padding-bottom: 0;
  }
}

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

  h1.heading-1 {
    margin-top: 5px;
    margin-right: auto;
    margin-left: auto;
    max-width: 1200px;
    font-size: 45px;
  }

  /* Layout Elements */

  .container.header {
    margin-right: auto;
    margin-left: auto;
    max-width: 1200px;
  }

  .container.comments {
    margin-right: auto;
    margin-left: auto;
    max-width: 1200px;
  }

  .container.gallery-column {
    margin-top: 0;
    padding-right: 2px;
    padding-left: 2px;
    width: 25%;
  }

  .container.gallery-wrapper {
    padding-bottom: 25px;
    max-width: 1200px;
  }

  div.responsive-picture.gallery-pic {
    margin-top: 6px;
    padding-right: 3px;
    padding-left: 3px;
  }
}