/*! normalize.css v4.2.0 | MIT License | github.com/necolas/normalize.css */
/**
 * * 1. Change the default font family in all browsers (opinionated).
 * * 2. Correct the line height in all browsers.
 * * 3. Prevent adjustments of font size after orientation changes in IE and iOS. */
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
}

/**
 * * Remove the margin in all browsers (opinionated). */
body {
  margin: 0;
}

/* HTML5 display definitions
 * * ========================================================================== */
/**
 * * Add the correct display in IE 9-.
 * * 1. Add the correct display in Edge, IE, and Firefox.
 * * 2. Add the correct display in IE. */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block;
}

/**
 * * Add the correct display in IE 9-. */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * * Add the correct display in iOS 4-7. */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * * Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress {
  vertical-align: baseline;
}

/**
 * * Add the correct display in IE 10-.
 * * 1. Add the correct display in IE. */
template,
[hidden] {
  display: none;
}

/* Links
 * * ========================================================================== */
/**
 * * 1. Remove the gray background on active links in IE 10.
 * * 2. Remove gaps in links underline in iOS 8+ and Safari 8+. */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * * Remove the outline on focused links when they are also active or hovered
 * * in all browsers (opinionated). */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
 * * ========================================================================== */
/**
 * * 1. Remove the bottom border in Firefox 39-.
 * * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * * Prevent the duplicate application of `bolder` by the next rule in Safari 6. */
b,
strong {
  font-weight: inherit;
}

/**
 * * Add the correct font weight in Chrome, Edge, and Safari. */
b,
strong {
  font-weight: bolder;
}

/**
 * * Add the correct font style in Android 4.3-. */
dfn {
  font-style: italic;
}

/**
 * * Correct the font size and margin on `h1` elements within `section` and
 * * `article` contexts in Chrome, Firefox, and Safari. */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * * Add the correct background and color in IE 9-. */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * * Add the correct font size in all browsers. */
small {
  font-size: 80%;
}

/**
 * * Prevent `sub` and `sup` elements from affecting the line height in
 * * all browsers. */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
 * * ========================================================================== */
/**
 * * Remove the border on images inside links in IE 10-. */
img {
  border-style: none;
}

/**
 * * Hide the overflow in IE. */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
 * * ========================================================================== */
/**
 * * 1. Correct the inheritance and scaling of font size in all browsers.
 * * 2. Correct the odd `em` font sizing in all browsers. */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * * Add the correct margin in IE 8. */
figure {
  margin: 1em 40px;
}

/**
 * * 1. Add the correct box sizing in Firefox.
 * * 2. Show the overflow in Edge and IE. */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/* Forms
 * * ========================================================================== */
/**
 * * 1. Change font properties to `inherit` in all browsers (opinionated).
 * * 2. Remove the margin in Firefox and Safari. */
button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * * Restore the font weight unset by the previous rule. */
optgroup {
  font-weight: bold;
}

/**
 * * Show the overflow in IE.
 * * 1. Show the overflow in Edge. */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * * 1. Remove the inheritance of text transform in Firefox. */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 * *    controls in Android 4.
 * * 2. Correct the inability to style clickable types in iOS and Safari. */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * * Remove the inner border and padding in Firefox. */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * * Restore the focus styles unset by the previous rule. */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * * Change the border, margin, and padding in all browsers (opinionated). */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * * 1. Correct the text wrapping in Edge and IE.
 * * 2. Correct the color inheritance from `fieldset` elements in IE.
 * * 3. Remove the padding so developers are not caught out when they zero out
 * *    `fieldset` elements in all browsers. */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * * Remove the default vertical scrollbar in IE. */
textarea {
  overflow: auto;
}

/**
 * * 1. Add the correct box sizing in IE 10-.
 * * 2. Remove the padding in IE 10-. */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * * Correct the cursor style of increment and decrement buttons in Chrome. */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * * 1. Correct the odd appearance in Chrome and Safari.
 * * 2. Correct the outline style in Safari. */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * * Remove the inner padding and cancel buttons in Chrome and Safari on OS X. */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * * Correct the text style of placeholders in Chrome, Edge, and Safari. */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * * 1. Correct the inability to style clickable types in iOS and Safari.
 * * 2. Change font properties to `inherit` in Safari. */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* */
/*--------------------------------------------------------------------
 * **
 * ** Media Queries
 * **
 * *-------------------------------------------------------------------- */
/*--------------------------------------------------------------------
 * **
 * ** Flexbox Grid
 * **
 * *-------------------------------------------------------------------- */
.container-fluid,
.container {
  margin-right: auto;
  margin-left: auto;
}

.container-fluid,
.container {
  padding-right: 2rem;
  padding-left: 2rem;
}

@media screen and (min-width: 73em) {

  .container-fluid,
  .container {
    padding: 0;
  }
}

.row {
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
}

.row.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.col.reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

.col-xs,
.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-offset-0,
.col-xs-offset-1,
.col-xs-offset-2,
.col-xs-offset-3,
.col-xs-offset-4,
.col-xs-offset-5,
.col-xs-offset-6,
.col-xs-offset-7,
.col-xs-offset-8,
.col-xs-offset-9,
.col-xs-offset-10,
.col-xs-offset-11,
.col-xs-offset-12 {
  box-sizing: border-box;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.col-xs {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  max-width: 100%;
}

.col-xs-1 {
  -ms-flex-preferred-size: 8.33333333%;
  flex-basis: 8.33333333%;
  max-width: 8.33333333%;
}

.col-xs-2 {
  -ms-flex-preferred-size: 16.66666667%;
  flex-basis: 16.66666667%;
  max-width: 16.66666667%;
}

.col-xs-3 {
  -ms-flex-preferred-size: 25%;
  flex-basis: 25%;
  max-width: 25%;
}

.col-xs-4 {
  -ms-flex-preferred-size: 33.33333333%;
  flex-basis: 33.33333333%;
  max-width: 33.33333333%;
}

.col-xs-5 {
  -ms-flex-preferred-size: 41.66666667%;
  flex-basis: 41.66666667%;
  max-width: 41.66666667%;
}

.col-xs-6 {
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  max-width: 50%;
}

.col-xs-7 {
  -ms-flex-preferred-size: 58.33333333%;
  flex-basis: 58.33333333%;
  max-width: 58.33333333%;
}

.col-xs-8 {
  -ms-flex-preferred-size: 66.66666667%;
  flex-basis: 66.66666667%;
  max-width: 66.66666667%;
}

.col-xs-9 {
  -ms-flex-preferred-size: 75%;
  flex-basis: 75%;
  max-width: 75%;
}

.col-xs-10 {
  -ms-flex-preferred-size: 83.33333333%;
  flex-basis: 83.33333333%;
  max-width: 83.33333333%;
}

.col-xs-11 {
  -ms-flex-preferred-size: 91.66666667%;
  flex-basis: 91.66666667%;
  max-width: 91.66666667%;
}

.col-xs-12 {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  max-width: 100%;
}

.col-xs-offset-0 {
  margin-left: 0;
}

.col-xs-offset-1 {
  margin-left: 8.33333333%;
}

.col-xs-offset-2 {
  margin-left: 16.66666667%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-4 {
  margin-left: 33.33333333%;
}

.col-xs-offset-5 {
  margin-left: 41.66666667%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-7 {
  margin-left: 58.33333333%;
}

.col-xs-offset-8 {
  margin-left: 66.66666667%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-10 {
  margin-left: 83.33333333%;
}

.col-xs-offset-11 {
  margin-left: 91.66666667%;
}

.start-xs {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  text-align: start;
}

.center-xs {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
}

.end-xs {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  text-align: end;
}

.top-xs {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.middle-xs {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.bottom-xs {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.around-xs {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.between-xs {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.first-xs {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
}

.last-xs {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

@media only screen and (min-width: 48em) {
  .container {
    width: 46rem;
  }

  .col-sm,
  .col-sm-1,
  .col-sm-2,
  .col-sm-3,
  .col-sm-4,
  .col-sm-5,
  .col-sm-6,
  .col-sm-7,
  .col-sm-8,
  .col-sm-9,
  .col-sm-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm-offset-0,
  .col-sm-offset-1,
  .col-sm-offset-2,
  .col-sm-offset-3,
  .col-sm-offset-4,
  .col-sm-offset-5,
  .col-sm-offset-6,
  .col-sm-offset-7,
  .col-sm-offset-8,
  .col-sm-offset-9,
  .col-sm-offset-10,
  .col-sm-offset-11,
  .col-sm-offset-12 {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .col-sm {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%;
  }

  .col-sm-1 {
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-sm-2 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-sm-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-sm-5 {
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-sm-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-sm-8 {
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-sm-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-sm-11 {
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-sm-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }

  .col-sm-offset-0 {
    margin-left: 0;
  }

  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-sm-offset-3 {
    margin-left: 25%;
  }

  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-sm-offset-6 {
    margin-left: 50%;
  }

  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-sm-offset-9 {
    margin-left: 75%;
  }

  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }

  .start-sm {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start;
  }

  .center-sm {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }

  .end-sm {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end;
  }

  .top-sm {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .middle-sm {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .bottom-sm {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }

  .around-sm {
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }

  .between-sm {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .first-sm {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
  }

  .last-sm {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}

@media only screen and (min-width: 64em) {
  .container {
    width: 65rem;
  }

  .col-md,
  .col-md-1,
  .col-md-2,
  .col-md-3,
  .col-md-4,
  .col-md-5,
  .col-md-6,
  .col-md-7,
  .col-md-8,
  .col-md-9,
  .col-md-10,
  .col-md-11,
  .col-md-12,
  .col-md-offset-0,
  .col-md-offset-1,
  .col-md-offset-2,
  .col-md-offset-3,
  .col-md-offset-4,
  .col-md-offset-5,
  .col-md-offset-6,
  .col-md-offset-7,
  .col-md-offset-8,
  .col-md-offset-9,
  .col-md-offset-10,
  .col-md-offset-11,
  .col-md-offset-12 {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .col-md {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%;
  }

  .col-md-1 {
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-md-2 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-md-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }

  .col-md-4 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-md-5 {
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-md-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }

  .col-md-7 {
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-md-8 {
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-md-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
  }

  .col-md-10 {
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-md-11 {
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-md-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }

  .col-md-offset-0 {
    margin-left: 0;
  }

  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-md-offset-3 {
    margin-left: 25%;
  }

  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-md-offset-6 {
    margin-left: 50%;
  }

  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-md-offset-9 {
    margin-left: 75%;
  }

  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }

  .start-md {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start;
  }

  .center-md {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }

  .end-md {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end;
  }

  .top-md {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .middle-md {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .bottom-md {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }

  .around-md {
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }

  .between-md {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .first-md {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
  }

  .last-md {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}

@media only screen and (min-width: 73em) {
  .container {
    width: 72rem;
    padding-left: inherit;
    padding-right: inherit;
  }

  .col-lg,
  .col-lg-1,
  .col-lg-2,
  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg-offset-0,
  .col-lg-offset-1,
  .col-lg-offset-2,
  .col-lg-offset-3,
  .col-lg-offset-4,
  .col-lg-offset-5,
  .col-lg-offset-6,
  .col-lg-offset-7,
  .col-lg-offset-8,
  .col-lg-offset-9,
  .col-lg-offset-10,
  .col-lg-offset-11,
  .col-lg-offset-12 {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .col-lg {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%;
  }

  .col-lg-1 {
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-lg-2 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-lg-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-lg-5 {
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-lg-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-lg-8 {
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-lg-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-lg-11 {
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-lg-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }

  .col-lg-offset-0 {
    margin-left: 0;
  }

  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-lg-offset-3 {
    margin-left: 25%;
  }

  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-lg-offset-6 {
    margin-left: 50%;
  }

  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-lg-offset-9 {
    margin-left: 75%;
  }

  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }

  .start-lg {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start;
  }

  .center-lg {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }

  .end-lg {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end;
  }

  .top-lg {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .middle-lg {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .bottom-lg {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }

  .around-lg {
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }

  .between-lg {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .first-lg {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
  }

  .last-lg {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}

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

body {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: hsl(0, 0%, 20%);
  background-color: #f2f2f2;
}

/*--------------------------------------------------------------------
 * **
 * ** Typography - Headings
 * **
 * *-------------------------------------------------------------------- */
.e-heading {
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  line-height: 1.25;
  margin-top: 0;
  margin-bottom: 16px;
  color: hsl(0, 0%, 20%);
}

.e-heading.-size-h1 {
  font-size: 36px;
}

.e-heading.-size-h2 {
  font-size: 32px;
}

.e-heading.-size-h3 {
  font-size: 28px;
}

.e-heading.-size-h4 {
  font-size: 24px;
}

.e-heading.-size-h5 {
  font-size: 20px;
}

.e-heading.-size-h6 {
  font-size: 18px;
}

.e-heading.-color-light {
  color: hsl(0, 0%, 100%);
}

/*--------------------------------------------------------------------
 * **
 * ** Typography - Body
 * **
 * *-------------------------------------------------------------------- */
.e-paragraph {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 16px;
  color: hsl(0, 0%, 50%);
}

.e-paragraph.-size-xl {
  font-size: 20px;
}

.e-paragraph.-size-l {
  font-size: 18px;
}

.e-paragraph.-size-s {
  font-size: 14px;
}

.e-paragraph.-size-xs {
  font-size: 12px;
}

.e-paragraph.-color-success {
  color: hsl(87, 58%, 40%);
}

.e-paragraph.-color-error {
  color: hsl(1, 61%, 44%);
}

strong {
  font-weight: 700;
}

em {
  font-style: italic;
}

/*--------------------------------------------------------------------
 * **
 * ** Typography - Links
 * **
 * *-------------------------------------------------------------------- */
.e-link {
  color: hsl(196, 90%, 31%);
  display: inline-block;
  position: relative;
  text-decoration: none;
  cursor: pointer;
}

.e-link:hover:after,
.e-link:active:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: hsl(196, 90%, 31%);
}

.e-link.-color-dark {
  color: hsl(0, 0%, 20%);
}

.e-link.-color-dark:hover {
  color: hsl(196, 90%, 31%);
}

.e-link.-color-dark:hover:after {
  background-color: hsl(196, 90%, 31%);
}

.e-link.-color-dark:active {
  color: hsl(196, 89%, 26%);
}

.e-link.-color-dark:active:after {
  background-color: hsl(196, 89%, 26%);
}

.e-link.-color-light {
  color: hsl(0, 0%, 100%);
}

.e-link.-color-light:hover:after {
  background-color: hsl(0, 0%, 100%);
}

.e-link.-color-light:active {
  color: hsl(0, 0%, 50%);
}

.e-link.-color-light:active:after {
  background-color: hsl(0, 0%, 50%);
}

.e-link.-weight-bold {
  font-weight: 700;
  font-size: 20px;
  border-bottom: none;
  color: hsl(0, 0%, 20%);
}

.e-link.-weight-bold:hover {
  color: hsl(0, 0%, 50%);
}

.e-link.-weight-bold:after {
  background-color: transparent;
}

/*--------------------------------------------------------------------
 * **
 * ** Modules
 * **
 * *-------------------------------------------------------------------- */
.e-btn {
  display: inline-block;
  border: none;
  border-radius: 2px;
  padding: 8px 32px;
  box-shadow: 1px 1px 3px -1px hsl(0, 0%, 90%);
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}

.e-btn:hover {
  text-decoration: none;
  outline: none;
}

.e-btn.-color-primary {
  color: hsl(0, 0%, 100%);
  background-color: hsl(87, 58%, 40%);
}

.e-btn.-color-primary:hover {
  background-color: hsl(87, 58%, 45%);
}

.e-btn.-color-primary:active {
  background-color: hsl(87, 58%, 35%);
}

.e-btn.-color-secondary {
  background-color: hsl(0, 0%, 100%);
  border: 1px solid hsl(0, 0%, 90%);
  color: hsl(0, 0%, 40%);
}

.e-btn.-color-secondary:hover {
  border-color: hsl(0, 0%, 80%);
}

.e-btn.-color-secondary:active {
  box-shadow: inset 1px 1px 2px 0px hsl(0, 0%, 90%);
  border-color: hsl(0, 0%, 90%);
}

.e-btn.-color-tertiary {
  background-color: hsl(0, 0%, 50%);
  color: hsl(0, 0%, 100%);
}

.e-btn.-color-tertiary:hover {
  background-color: hsl(0, 0%, 60%);
}

.e-btn.-color-tertiary:active {
  background-color: hsl(0, 0%, 40%);
}

.e-btn.-color-quaternary {
  background-color: hsl(0, 0%, 80%);
}

.e-btn.-color-quaternary:hover {
  background-color: hsl(0, 0%, 90%);
}

.e-btn.-color-quaternary:active {
  background-color: hsl(0, 0%, 70%);
}

.e-btn.-size-s {
  padding: 8px 24px;
  font-size: 14px;
}

.e-btn.-size-l {
  padding: 16px calc(16px);
  font-size: 18px;
}

@media screen and (min-width: 48em) {
  .e-btn.-size-l {
    padding: 16px calc(16px + 32px);
  }
}

.e-btn.-size-square {
  padding: 8px 16px;
  text-align: center;
}

.e-btn.-fixed-width {
  padding: 16px;
  font-size: 18px;
  width: 100%;
}

@media screen and (min-width: 48em) {
  .e-btn.-fixed-width {
    padding: 16px;
    width: 50%;
  }
}

@media only screen and (min-width: 64em) {
  .e-btn.-fixed-width {
    padding: 16px;
    width: 40%;
  }
}

@media screen and (min-width: 73em) {
  .e-btn.-fixed-width {
    padding: 16px calc(16px + 32px);
    width: 80%;
  }
}

/*--------------------------------------------------------------------
 * **
 * ** Helpers
 * ** Classes prefixed with h-*
 * **
 * *-------------------------------------------------------------------- */
.e-margin-b0 {
  margin-bottom: 0;
}

.e-margin-bxs {
  margin-bottom: 4px;
}

.e-margin-bs {
  margin-bottom: 8px;
}

.e-margin-bm {
  margin-bottom: 16px;
}

.e-margin-ts {
  margin-top: 8px;
}

.e-margin-tm {
  margin-top: 16px;
}

.e-margin-rxs {
  margin-right: 4px;
}

.e-margin-lxs {
  margin-left: 4px;
}

.e-padding-am {
  padding: 16px;
}

.e-padding-lm {
  padding-left: 16px;
}

.e-padding-rm {
  padding-right: 16px;
}

.e-padding-bm {
  padding-bottom: 16px;
}

.e-radius-top {
  border-radius: 4px 4px 0 0;
}

.e-radius-all {
  border-radius: 4px;
}

.e-display-ib {
  display: inline-block;
}

.e-display-b {
  display: block;
}

.e-float-r {
  float: right;
}

.e-float-l {
  float: left;
}

.e-cf:after {
  content: " ";
  display: block;
  clear: both;
}

/*--------------------------------------------------------------------
 * **
 * ** Modified Modules
 * **
 * *-------------------------------------------------------------------- */
.h-text-align-center {
  text-align: center;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
}

body {
  background: hsl(0, 0%, 100%);
}

.e-paragraph.-color-dark {
  color: hsl(0, 0%, 30%);
}

.e-link.-weight-bold {
  font-weight: 500;
  font-size: 16px;
  border-bottom: none;
  color: hsl(0, 0%, 20%);
}

.e-link.-color-dark:hover {
  color: hsl(0, 0%, 40%);
}

.e-link.-color-dark:hover:after {
  background-color: hsl(196, 90%, 31%);
  height: 1px;
}

/*--------------------------------------------------------------------
 * **
 * ** Animations
 * **
 * *-------------------------------------------------------------------- */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 30%, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInUp {
  animation-name: fadeInUp;
  animation-duration: 1.35s;
  animation-fill-mode: both;
}

@keyframes strokeIn {
  from {
    transform: scale3d(0, 1, 1);
  }

  to {
    transform: scale3d(1, 1, 1);
  }
}

@keyframes strokeOut {
  from {
    transform: scale3d(1, 1, 1);
  }

  to {
    transform: scale3d(0, 1, 1);
  }
}

.stroke__left-in::after {
  width: 100%;
  border-bottom: solid 3px hsl(86, 47%, 48%);
  transform-origin: left;
  animation: strokeIn 0.35s;
}

.stroke__right-in::after {
  width: 100%;
  border-bottom: solid 3px hsl(86, 47%, 48%);
  transform-origin: right;
  animation: strokeIn 0.35s;
}

/*--------------------------------------------------------------------
 * **
 * ** Header
 * **
 * *-------------------------------------------------------------------- */
.site-header {
  background: hsl(0, 0%, 100%);
  padding: 20px 0;
}

.site-header__logo {
  width: 105px;
}

.site-header__logo.-margin-top__mq-small {
  margin-top: 32px;
}

@media screen and (min-width: 73em) {
  .site-header__logo.-margin-top__mq-small {
    margin-top: 0;
  }
}

/*--------------------------------------------------------------------
 * **
 * ** page-nav & Sticky
 * **
 * *-------------------------------------------------------------------- */
.stuck {
  position: fixed !important;
  top: 0;
}

.page-nav {
  display: none;
}

@media screen and (min-width: 48em) {
  .page-nav {
    width: 100%;
    display: flex;
    margin-top: 48px;
    color: hsl(0, 0%, 50%);
  }
}

@media screen and (min-width: 73em) {
  .page-nav {
    margin: 0;
    position: absolute;
    z-index: 2;
    bottom: 32px;
  }
}

.page-nav.stuck {
  bottom: auto;
  background: hsl(0, 0%, 100%);
  border-bottom: 1px solid hsl(0, 0%, 90%);
  box-shadow: 0 0 10px -2px hsl(0, 0%, 80%);
  z-index: 5;
  margin-top: 0;
}

.page-nav__container {
  margin: 0 auto;
}

.stuck .page-nav__container {
  width: 72rem;
}

/*--------------------------------------------------------------------
 * **
 * ** Nav & Sticky
 * **
 * *-------------------------------------------------------------------- */
.nav {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 16px;
  font-weight: 500;
}

.nav.-size-compact {
  font-size: 16px;
}

.nav__item-button {
  display: none;
  margin: 8px;
  font-weight: 400;
}

@media screen and (min-width: 48em) {
  .nav__item-button {
    display: block;
    position: relative;
  }
}

.nav__item {
  position: relative;
}

.nav__item.is-active-sticky.is-active:after,
.nav__item:hover:after {
  width: 100%;
  border-bottom: solid 3px hsl(86, 47%, 48%);
}

.nav__item:not(:first-child) {
  margin-left: 32px;
}

.nav__item.-weight-regular {
  font-weight: 400;
}

.nav__item.-display-sticky {
  display: none;
}

.nav__item:not(.-display-sticky):after {
  width: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  white-space: nowrap;
}

.nav__item:hover .nav__item-link {
  color: hsl(0, 0%, 40%);
}

.nav__item-link {
  display: block;
  color: hsl(0, 0%, 20%);
  text-decoration: none;
  transition: padding 0.15s ease-out;
}

.stuck .nav__item {
  padding: 0;
}

.stuck .nav__item.-display-sticky {
  display: block;
  padding: 22px 0;
}

.stuck .nav__item-link {
  padding: 30px 0;
}

/*--------------------------------------------------------------------
 * **
 * ** Headings section title
 * **
 * *-------------------------------------------------------------------- */
.heading {
  font-size: 40px;
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 900;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom: 16px;
  color: hsl(0, 0%, 10%);
}

@media screen and (min-width: 48em) {
  .heading {
    font-size: 56px;
  }
}

.heading__subtitle {
  font-size: 20px;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  line-height: 1.75;
  margin-top: 0;
  margin-bottom: 16px;
  color: hsl(0, 0%, 50%);
}

@media screen and (min-width: 48em) {
  .heading__subtitle {
    font-size: 22px;
  }
}

/*--------------------------------------------------------------------
 * **
 * ** feature
 * **
 * *-------------------------------------------------------------------- */
.feature-callout {
  position: relative;
  padding: 2rem 0 4rem;
  background: hsl(0, 0%, 98%);
}

@media screen and (min-width: 73em) {
  .feature-callout {
    height: 689px;
    padding: inherit;
    background: inherit;
  }
}

.feature-callout__background {
  display: none;
  background: url("/assets/pages/landing/author_feature-fcf6f912.jpg");
  background-color: hsl(0, 0%, 100%);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
}

@media screen and (min-width: 73em) {
  .feature-callout__background {
    display: block;
    position: absolute;
    background-position: right;
    height: 689px;
  }
}

.feature-callout__content {
  position: relative;
  background: hsl(0, 0%, 98%);
  margin-top: 1rem;
}

@media screen and (min-width: 48em) {
  .feature-callout__content {
    margin-top: inherit;
    background: inherit;
    margin-top: inherit;
  }
}

@media screen and (min-width: 73em) {
  .feature-callout__content {
    top: 97px;
  }
}

.feature-callout__span {
  color: hsl(86, 47%, 48%);
}

.feature-callout__subtitle {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  line-height: 1.25;
  margin-top: 0;
  margin-bottom: 16px;
  color: hsl(0, 0%, 30%);
  font-size: 24px;
}

.feature-callout__cta {
  margin-top: 32px;
  text-align: center;
}

@media screen and (min-width: 48em) {
  .feature-callout__cta {
    text-align: inherit;
  }
}

/*--------------------------------------------------------------------
 * **
 * ** showcase
 * **
 * *-------------------------------------------------------------------- */
.showcase {
  background: hsl(0, 0%, 98%);
  padding: 75px 0 0;
}

@media screen and (min-width: 48em) {
  .showcase {
    padding: 75px 0;
  }
}

@media screen and (min-width: 73em) {
  .showcase {
    padding: 115px 0;
  }
}

@media screen and (min-width: 73em) {
  .showcase.-padding-small {
    padding: 110px 0;
  }
}

@media screen and (min-width: 73em) {
  .showcase.-padding-large {
    padding: 166px 0;
  }
}

.showcase__container {
  margin-top: 40px;
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
}

.showcase__container.-justify-center {
  justify-content: center;
}

@media screen and (min-width: 48em) {
  .showcase__container.-justify-center {
    justify-content: flex-start;
  }
}

@media screen and (min-width: 73em) {
  .showcase__container {
    display: block;
    margin-top: 0;
  }
}

@media screen and (min-width: 73em) {
  .showcase__container {
    margin-top: -140px;
  }

  .showcase__container.-position-small {
    margin-top: -125px;
  }

  .showcase__container.-position-large {
    margin-top: -201px;
  }
}

.showcase__divider {
  width: 140px;
  height: 0;
  border: 4px solid hsl(86, 47%, 48%);
  float: left;
  margin-bottom: 42px;
}

.showcase__item {
  display: none;
  margin-bottom: 10px;
  box-shadow: 0 0 10px hsl(0, 0%, 60%);
  background: hsl(0, 0%, 60%);
}

@media screen and (min-width: 73em) {
  .showcase__item {
    display: block;
    position: absolute;
    opacity: 0;
  }
}

.showcase__item.-display-all-sizes {
  display: block;
}

.showcase__item.-dimension-sstyles {
  width: 100%;
  height: 256px;
  top: 0;
  right: 0;
  background: url("/assets/pages/landing/showcase/sevenstyles-d209cffd.jpg");
  background-position: 50% 0;
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-sstyles {
    width: 576px;
  }
}

.showcase__item.-dimension-enfold {
  width: calc(50% - 5px);
  height: 159px;
  top: 274px;
  right: 296px;
  background: url("/assets/pages/landing/showcase/enfold_kreisi-efbb9618.jpg");
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-enfold {
    width: 280px;
  }
}

.showcase__item.-dimension-romavrs {
  width: calc(50% - 5px);
  height: 224px;
  top: 274px;
  right: 0;
  background: url("/assets/pages/landing/showcase/romavrs-1c58197c.jpg");
  background-size: 280px 224px;
  background-position: 50% 0;
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-romavrs {
    width: 280px;
  }
}

.showcase__item.-dimension-be {
  width: calc(50% - 5px);
  height: 216px;
  top: -65px;
  background: url("/assets/pages/landing/showcase/be-6bc721e2.jpg");
  background-size: 280px 216px;
  position: relative;
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-be {
    position: absolute;
    width: 280px;
    right: 296px;
    top: 451px;
  }
}

.showcase__item.-dimension-wpbakery {
  width: calc(50% - 50px);
  height: 152px;
  top: 516px;
  right: 0;
  background: url("/assets/pages/landing/showcase/wp_bakery-0eb76c90.jpg") no-repeat center center;
  background-size: cover;
  margin-left: 20px;
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-wp_bakery {
    width: 280px;
  }
}

.showcase__item.-dimension-salient {
  width: 100%;
  height: 383px;
  top: 0;
  left: 0;
  background: url("/assets/pages/landing/quality/salient2-a1e32d1b.jpg");
}

@media screen and (min-width: 48em) {
  .showcase__item.-dimension-salient {
    max-width: 560px;
  }
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-salient {
    width: 280px;
    height: 248px;
    background-size: 280px 248px;
  }
}

.showcase__item.-dimension-andreialex {
  width: calc(50% - 5px);
  height: 131px;
  top: 0;
  left: 296px;
  background: url("/assets/pages/landing/quality/andreialex-2b5474f7.jpg");
  background-size: 100% 131px;
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-andreialex {
    width: 280px;
    height: 224px;
    background-size: 280px 224px;
  }
}

.showcase__item.-dimension-eugene {
  width: calc(50% - 5px);
  height: 172px;
  top: 266px;
  left: 0;
  background: url("/assets/pages/landing/quality/eugene-design-0f5b2404.jpg");
  background-size: 100% 172px;
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-eugene {
    width: 280px;
    height: 216px;
    background-size: 280px 216px;
  }
}

.showcase__item.-dimension-unost2 {
  width: calc(50% - 5px);
  height: 166px;
  top: -14px;
  background: url("/assets/pages/landing/quality/unost2-56ad8828.jpg");
  background-size: 100% 100%;
  position: relative;
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-unost2 {
    width: 280px;
    height: 216px;
    background-size: 280px 216px;
    top: 240px;
    left: 296px;
  }
}

.showcase__item.-dimension-impreza {
  width: calc(50% - 5px);
  height: 134px;
  top: 496px;
  left: 0;
  background: url("/assets/pages/landing/quality/impreza-999eaa15.jpg");
  background-size: 100% 134px;
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-impreza {
    width: 280px;
    height: 176px;
    background-size: 280px 176px;
  }
}

.showcase__item.-dimension-motionpatriot {
  width: calc(50% - 5px);
  height: 150px;
  top: -20px;
  position: relative;
  background: url("/assets/pages/landing/quality/motionpatriot-fd0f062a.jpg");
  background-size: 100% 150px;
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-motionpatriot {
    width: 280px;
    height: 200px;
    top: 472px;
    left: 296px;
    background-size: 280px 200px;
    position: absolute;
  }
}

.showcase__item.-dimension-tommus {
  width: 280px;
  height: 384px;
  top: 0;
  right: 296px;
  background: url("/assets/pages/landing/authors/tommusrhodus-d955bd6f.jpg");
  background-size: 280px 384px;
}

.showcase__item.-dimension-dtbaker {
  width: 100%;
  height: 248px;
  top: 0;
  right: 0;
  background: url("/assets/pages/landing/authors/dtbaker-36c5bfa5.jpg");
  background-size: cover;
}

@media screen and (min-width: 48em) {
  .showcase__item.-dimension-dtbaker {
    width: 460px;
    height: 447px;
    background-size: 460px 447px;
  }
}

@media screen and (min-width: 73em) {
  .showcase__item.-dimension-dtbaker {
    width: 280px;
    height: 272px;
    background-size: 280px 272px;
  }
}

.showcase__item.-dimension-mvp {
  width: 280px;
  height: 384px;
  top: 290px;
  right: 0;
  background: url("/assets/pages/landing/authors/mvp-01fcd9b7.jpg");
  background-size: 280px 384px;
}

.showcase__item.-dimension-yourinspiration {
  width: 280px;
  height: 272px;
  top: 402px;
  right: 296px;
  background: url("/assets/pages/landing/authors/yourinspiration-bf00a210.jpg");
  background-size: 280px 272px;
}

/*--------------------------------------------------------------------
 * **
 * ** Section
 * **
 * *-------------------------------------------------------------------- */
.section {
  padding: 85px 0;
  background: hsl(0, 0%, 100%);
}

@media screen and (min-width: 73em) {
  .section {
    padding: 165px 0;
  }
}

.section.-padding-small {
  padding: 70px 0;
}

@media screen and (min-width: 73em) {
  .section.-padding-small {
    padding: 140px 0;
  }
}

.section__title {
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 32px;
  font-weight: 900;
  line-height: 1.25;
  margin-top: 0;
  margin-bottom: 32px;
  color: hsl(0, 0%, 10%);
}

@media screen and (min-width: 48em) {
  .section__title {
    font-size: 48px;
    margin-bottom: 32px;
  }
}

.section__title.-spacing-small {
  margin-bottom: 24px;
}

/*--------------------------------------------------------------------
 * **
 * ** CTA Section
 * **
 * *-------------------------------------------------------------------- */
.cta-section {
  padding: 110px 0;
  background-color: hsl(0, 0%, 30%);
  margin-top: 75px;
  position: relative;
}

@media screen and (min-width: 73em) {
  .cta-section {
    margin-top: 150px;
  }
}

.cta-section:before {
  content: "";
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid hsl(0, 0%, 100%);
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 0;
  left: calc(50% - 30px);
}

.cta-section__title {
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 32px;
  font-weight: 900;
  line-height: 1.25;
  margin-top: 0;
  margin-bottom: 16px;
  color: hsl(0, 0%, 100%);
}

@media screen and (min-width: 73em) {
  .cta-section__title {
    font-size: 40px;
  }
}

.cta-section__subtitle {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 24px;
  font-weight: 400;
  color: hsl(0, 0%, 100%);
  text-align: center;
  margin-bottom: 60px;
}

.cta-section__subtitle-container {
  text-align: center;
}

@media screen and (min-width: 73em) {
  .cta-section__subtitle-container {
    padding: 0 33px;
  }
}

/*--------------------------------------------------------------------
 * **
 * ** Detail
 * **
 * *-------------------------------------------------------------------- */
.detail {
  margin-top: 20px;
  padding: 0 10px;
  text-align: center;
}

@media screen and (min-width: 73em) {
  .detail {
    margin: 0;
  }
}

.detail__icon {
  max-width: 190px;
  margin: 0 auto 39px;
  display: block;
}

.detail__title {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  line-height: 1.25;
  margin-top: 0;
  margin-bottom: 32px;
  color: hsl(0, 0%, 20%);
  font-size: 24px;
}

/*--------------------------------------------------------------------
 * **
 * ** Footer
 * **
 * *-------------------------------------------------------------------- */
.footer {
  padding: 70px 0;
  background: hsl(0, 0%, 100%);
}

.footer__dl {
  margin: 0;
}

.footer__dt {
  margin-bottom: 16px;
  font-weight: 500;
  font-size: 16px;
  text-transform: uppercase;
}

.footer__dd {
  margin-left: 0;
  margin-bottom: 8px;
}

.footer__link {
  color: hsl(0, 0%, 50%);
  text-decoration: none;
  position: relative;
}

.footer__link:hover:after,
.footer__link:active:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: hsl(196, 90%, 31%);
}

.footer__brand {
  position: relative;
  height: 100%;
}

.footer__social-links {
  margin-top: 32px;
}

@media screen and (min-width: 48em) {
  .footer__social-links {
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    margin-top: 0;
  }
}

.footer__social-image {
  width: 36px;
  height: 36px;
  margin-right: 12px;
}

.site-footer {
  height: 125px;
  margin-top: 32px;
  padding: 26px 0 0;
  border-top: 2px solid hsl(0, 0%, 90%);
  text-align: center;
}

.site-footer__nav-item {
  display: inline-block;
  margin: 0 13px;
}

.site-footer__nav-link {
  color: hsl(0, 0%, 50%);
  text-decoration: none;
  position: relative;
}

.site-footer__nav-link:hover:after,
.site-footer__nav-link:active:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: hsl(196, 90%, 31%);
}

.site-footer__legal {
  font-size: 14px;
  opacity: 0.5;
}

/*--------------------------------------------------------------------
 * **
 * ** Tabs
 * **
 * *-------------------------------------------------------------------- */
.tabs {
  list-style: none;
  position: relative;
  padding: 0;
  text-align: left;
}

@media screen and (min-width: 48em) {
  .tabs {
    margin: 40px 0 0 10px;
    display: flex;
    flex-wrap: wrap;
  }
}

@media screen and (min-width: 73em) {
  .tabs {
    display: block;
    padding: 0 40px;
  }
}

.tabs li {
  display: block;
}

@media screen and (min-width: 48em) {
  .tabs li {
    width: 50%;
    padding: 0 20px;
  }
}

@media screen and (min-width: 73em) {
  .tabs li {
    float: left;
    width: auto;
    padding: 0;
  }
}

.tabs input[type=radio] {
  position: absolute;
  height: 0;
  width: 0;
  visibility: hidden;
}

.tabs label {
  display: none;
  padding: 10px 5px;
  cursor: pointer;
  position: relative;
  top: 4px;
  color: hsl(0, 0%, 50%);
  font-weight: 500;
}

@media screen and (min-width: 73em) {
  .tabs label {
    display: block;
    padding: 15px 28px 20px;
  }
}

.tabs label:hover {
  color: hsl(0, 0%, 0%);
  background: hsl(0, 0%, 98%);
}

.tabs .tab-content {
  z-index: 1;
  display: block;
  overflow: hidden;
  border-top: 1px solid hsl(0, 0%, 90%);
  padding: 1rem 0 1.5rem;
}

@media screen and (min-width: 48em) {
  .tabs .tab-content {
    left: 0;
    padding: 25px 0;
  }
}

@media screen and (min-width: 73em) {
  .tabs .tab-content {
    display: none;
    position: absolute;
    padding: 65px 25px 0;
  }
}

.tabs [id^=tab]:checked+label {
  top: 0;
  color: hsl(0, 0%, 0%);
  border-bottom: 3px solid hsl(86, 47%, 48%);
}

@media screen and (min-width: 48em) {
  .tabs [id^=tab]:checked+label {
    padding-top: 17px;
  }
}

.tabs [id^=tab]:checked~[id^=tab-content] {
  display: block;
  height: 100%;
}

@media screen and (min-width: 73em) {
  .tabs [id^=tab]:checked~[id^=tab-content] {
    height: auto;
  }
}

@media screen and (min-width: 73em) {
  .tab-container {
    margin-bottom: 235px;
  }
}

/*--------------------------------------------------------------------
 * **
 * ** Tab Image
 * **
 * *-------------------------------------------------------------------- */
.tab-image__cc {
  width: 230px;
  height: 58px;
  margin-top: 20px;
}

.tab-image__vh {
  width: 230px;
  height: 58px;
  margin-top: 20px;
}

.tab-image__aj {
  width: 230px;
  height: 58px;
  margin-top: 20px;
}

.tab-image__tf {
  width: 230px;
  height: 58px;
  margin-top: 20px;
}

.tab-image__gr {
  width: 230px;
  height: 58px;
  margin-top: 20px;
}

.tab-image__pd {
  width: 230px;
  height: 58px;
  margin-top: 20px;
}

.tab-image__3d {
  width: 230px;
  height: 58px;
  margin-top: 20px;
}

/* */