.main,
aside,
.content-area {
  padding-top: 2rem;
  background: #f1f3f4;
}

.site-content {
  
}

div#primary {
  position: relative;
}

section {
  padding: 1.75rem 0;
}

article {
  padding: 0rem 0 2rem 0rem;
}


.container-fluid,
.page-template-page-wide .container {
  padding: 0 5vw !important;
  max-width: 100%;
}

.container-wide {
  max-width: calc(1400px + 10vw);
  padding: 0 2vw !important;

}

.offset-1,
.offset-2 {
  margin-left: 0;
}

.flex {
  display: flex;
  flex-wrap: wrap;
}

.flex_center {
  align-items: center;
}

.flex-2,
.flex-3,
.flex-4 {
  width: 100%;
  margin: 0;
}

.flex-6 {
  width: calc(50% - 0.7rem);
  margin-right: 0.7rem;
  box-sizing: border-box;
}

.flex-6:nth-child(2n) {
  margin-right: 0;
}

.flex-6.image {
  width: calc(100% - 0.7rem);
  margin-right: 0.7rem;
}

@media screen and (min-width:22.5em) {
  .flex-3 {
    width: calc(50% - 0.7rem);
    margin-right: 0.7rem;
    box-sizing: border-box;
  }

  .flex-3:nth-child(3n) {
    margin-right: 0.7rem;
  }

  .flex-3:nth-child(2n) {
    margin-right: 0.7rem;
  }

  .flex-4 {
    width: calc(50% - 0.7rem);
    margin-right: 0.7rem;
    box-sizing: border-box;
  }

  .flex-4:nth-child(4n) {
    margin-right: 0;
  }

}

@media screen and (min-width:37.5em) {
  .container-fluid {
    padding: 0 5% !important;
  }

  .offset-1 {
    margin-left: 8.333333%;
  }

  .offset-2 {
    margin-left: 16.666667%
  }

  .flex-2 {
    width: calc(50% - 0.7rem);
    margin-right: 0.7rem;
    box-sizing: border-box;
  }

  .flex-2:nth-child(2n) {
    margin-right: 0;
  }

  .flex-3 {
    width: calc(33% - 0.7rem);
    margin-right: 0.7rem;
    box-sizing: border-box;
  }

  .flex-3:nth-child(3n) {
    margin-right: 0;
  }

  .flex-4 {
    width: calc(25% - 0.7rem);
    margin-right: 0.7rem;
    box-sizing: border-box;
  }

  .flex-4:nth-child(4n) {
    margin-right: 0;
  }

  .flex-6 {
    width: calc(16.667% - 0.7rem);
    margin-right: 0.7rem;
    box-sizing: border-box;
  }

  .flex-6:nth-child(6n) {
    margin-right: 0;
  }

  .flex-6.image {
    width: calc(33.33% - 0.7rem);
    margin-right: 0.7rem;
  }

  .flex-6 {
    width: calc(33% - 0.7rem);
    margin-right: 0.7rem;
    box-sizing: border-box;
  }

  .flex-6:nth-child(3n) {
    margin-right: 0.7rem;
  }

  .flex-6:nth-child(2n) {
    margin-right: 0.7rem;
  }

}

@media screen and (min-width:57.5em) {
  .flex-6 {
    width: calc(16.667% - 0.7rem);
    margin-right: 0.7rem;
    box-sizing: border-box;
  }

  .flex-6:nth-child(6n) {
    margin-right: 0;
  }

  .flex-6.image {
    width: calc(33.33% - 0.7rem);
    margin-right: 0.7rem;
  }

}

@media screen and (max-width:57.5em) {
  .mob-hide {
    display: none;
  }

}