/* ============================================================
  Resets/normalizing files.
  ============================================================ */
/* ============================================================
  Preprocessors, fonts, variables.
  These ITCSS naming conventions and structure are inspired by Lindsay Grizzard's article on Medium: https://medium.com/gusto-design/creating-the-perfect-css-system-fa38f5bcdd9e
  ============================================================ */
/* ============================================================
  Vendor-specific styles.
  ============================================================ */
/* ============================================================
  Breakpoints
  ============================================================ */
/* ============================================================
  Colors
  ============================================================ */
/* ============================================================
  Styles for fonts/typefaces.
  ============================================================ */
/* ============================================================
  Placeholders for repeat styles.
  ============================================================ */
.layout-container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 1em 2em;
}
@media (min-width: 888px) {
  .layout-container {
    padding: 0 2em;
  }
}
@media (min-width: 1025px) {
  .layout-container {
    padding: 2em;
  }
}
@media (min-width: 1280px) {
  .layout-container {
    padding: 2em 5em;
  }
}
@media (min-width: 1440px) {
  .layout-container {
    padding: 2em 6.25em;
  }
}

.layout-container-wide {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 2em;
}
@media (min-width: 1025px) {
  .layout-container-wide {
    padding: 2em;
  }
}

.nomargin {
  margin: 0 !important;
}

.nopadding {
  padding: 0 !important;
}

.nospacing {
  margin: 0 !important;
  padding: 0 !important;
}

/* ============================================================
  Styles for layout structure, including a column system!
  ============================================================ */
.not-found .layout-container,
.not-found .layout-container-wide {
  margin: 0 3em;
}
.layout-container .content-top,
.layout-container-wide .content-top {
  margin: 0 0 1.5em;
  position: relative;
}
.layout-container .layout-content,
.layout-container-wide .layout-content {
  overflow-x: hidden;
}
@media (min-width: 768px) {
  .layout-container .layout-content.left-sidebar,
.layout-container-wide .layout-content.left-sidebar {
    margin: 0 0 0 1em;
  }
}
@media (min-width: 1025px) {
  .layout-container .layout-content.left-sidebar,
.layout-container-wide .layout-content.left-sidebar {
    max-width: 800px;
    margin: 0 0 0 1.5em;
  }
}
@media (min-width: 1280px) {
  .layout-container .layout-content.left-sidebar,
.layout-container-wide .layout-content.left-sidebar {
    margin: 0 0 0 2.5em;
  }
}
.layout-container .layout-content.right-sidebar,
.layout-container-wide .layout-content.right-sidebar {
  overflow: visible;
}
@media (min-width: 768px) {
  .layout-container .layout-content.right-sidebar,
.layout-container-wide .layout-content.right-sidebar {
    margin: 0 1em 0 0;
  }
}
@media (min-width: 1025px) {
  .layout-container .layout-content.right-sidebar,
.layout-container-wide .layout-content.right-sidebar {
    max-width: 800px;
    margin: 0 1.5em 0 0;
  }
}
@media (min-width: 1280px) {
  .layout-container .layout-content.right-sidebar,
.layout-container-wide .layout-content.right-sidebar {
    margin: 0 2.5em 0 0;
  }
}

.row {
  display: flex;
  flex-direction: column;
}
@media (min-width: 888px) {
  .row {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .row.no-justify {
    justify-content: flex-start;
  }
}
.row .col {
  flex: 1;
}
.row .col.percent-25 {
  width: 100%;
  order: 1;
}
@media (min-width: 888px) {
  .row .col.percent-25 {
    flex: 0 0 auto;
    width: calc(50% - 2em);
    margin: 0 1em 2em 1em;
  }
}
@media (min-width: 1025px) {
  .row .col.percent-25 {
    flex: 0 0 auto;
    order: 0;
    width: calc(25% - 0.75em);
    min-width: 23%;
    margin: 0 2em 1em 0;
  }
}
@media (min-width: 1280px) {
  .row .col.percent-25 {
    flex: 0 0 auto;
    width: calc(23% - 0.75em);
    min-width: 20%;
    margin: 0 3em 0 0;
  }
  .row .col.percent-25:nth-child(4n) {
    margin: 0;
  }
}
@media (min-width: 888px) {
  .row .col.percent-25.layout-sidebar-second {
    margin: 0 0 0 2em;
  }
}
@media (min-width: 1280px) {
  .row .col.percent-25.layout-sidebar-second {
    margin: 0 0 0 3em;
  }
}
.row .col.percent-33 {
  order: 1;
}
@media (min-width: 888px) {
  .row .col.percent-33 {
    flex: 0 0 auto;
    order: 0;
    width: calc(33% - 1em);
    margin: 0 1.5em 0 0;
    min-width: 30%;
  }
  .row .col.percent-33:nth-child(3n) {
    margin: 0;
  }
}
.row .col.percent-50 {
  flex: 0 0 auto;
  order: 1;
  width: 100%;
}
@media (min-width: 888px) {
  .row .col.percent-50 {
    flex: 0 0 auto;
    width: calc(50% - 1em);
    margin: 0 2em 0 0;
  }
  .row .col.percent-50:nth-child(2n) {
    margin: 0;
  }
}

.half {
  width: 50%;
  margin: 0 auto;
}

.unpublished main {
  background: rgba(207, 20, 43, 0.1);
}

/* ============================================================
  Reset styles.
  ============================================================ */
* {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  overflow-x: auto;
}

body {
  margin: 0;
  padding: 0;
  font-size: 1em;
  font-family: "Proxima N W01 Reg", sans-serif;
  color: #515456;
  overflow-y: auto;
}

button {
  border: 0;
  cursor: pointer;
  background: transparent;
  font-family: "Proxima N W01 Bold", sans-serif;
  font-size: 1em;
}

ul,
ol {
  margin: 0;
  padding: 0;
}
ul li,
ol li {
  list-style: none;
}

iframe {
  width: 100%;
}

b,
strong {
  font-family: "Proxima N W01 Bold", sans-serif;
}
/*# sourceMappingURL=generic.css.map */
