/*!
 * Theme Name: Boilerplate
 *
 * Theme URI: https://osynlig.nz/
 * Description: Lorem ipsum dolor sit amet.
 * Author: Osynlig New Zealand Limited
 * Version: 2.0
 *
 */
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Variables
    ## Variables from Spectre.css
# Normalize
# Typography
	## Headings
	## Copy
# Elements
	## Lists
	## Tables
# Forms
	## Buttons
	## Fields
# Navigation
	## Links
	## Menus
	## Next & Previous
# Accessibility
# Alignments
# Clearings
# Layout
# Widgets
# Content
	## Archives
	## Posts and pages
	## Comments
# Blocks
# Media
	## Captions
	## Galleries
# Utilites
	## King Mary outdated browser
	## Responsive breakpoints visualizer
# Mixins
	## Family.scss

--------------------------------------------------------------*/
/* Variables */
/* Mixins */
/*! Spectre.css v0.5.8 | MIT License | github.com/picturepan2/spectre */
/* Manually forked from Normalize.css */
/* normalize.css v5.0.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 on Windows Phone and in iOS.
 */
/* Document
   ========================================================================== */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

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

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
 * 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; }

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers. (removed)
 * 2. Correct the odd `em` font sizing in all browsers.
 */
/* Text-level semantics
   ========================================================================== */
/**
 * 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; }

/**
 * Modify default styling of address.
 */
address {
  font-style: normal; }

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. (removed)
 */
/**
 * 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; }

/**
 * 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: "SF Mono", "Segoe UI Mono", "Roboto Mono", Menlo, Courier, monospace;
  /* 1 (changed) */
  font-size: 1em;
  /* 2 */ }

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

/**
 * Add the correct background and color in IE 9-. (Removed)
 */
/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
  font-weight: 400;
  /* (added) */ }

/**
 * 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
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

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

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

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

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 (changed) */
  font-size: inherit;
  /* 1 (changed) */
  line-height: inherit;
  /* 1 (changed) */
  margin: 0;
  /* 2 */ }

/**
 * 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 (removed).
 */
/**
 * Change the border, margin, and padding in all browsers (opinionated) (changed).
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/**
 * 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 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * 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"] {
  -webkit-box-sizing: border-box;
          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 macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 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 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
  outline: none; }

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none; }

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 16px;
  line-height: 1.4;
  -webkit-tap-highlight-color: transparent; }

body {
  background: #fff;
  color: #3b4351;
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  font-size: 0.8rem;
  overflow-x: hidden;
  text-rendering: optimizeLegibility; }

a {
  color: #5755d9;
  outline: none;
  text-decoration: none; }
  a:focus {
    -webkit-box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
            box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2); }
  a:focus, a:hover, a:active, a.active {
    color: #302ecd;
    text-decoration: underline; }
  a:visited {
    color: #807fe2; }

/***
 See: https://medium.com/codyhouse/create-your-design-system-part-1-typography-7c630d9092bd
      https://gist.github.com/sebastiano-guerriero/2d05b319b9ae7618d99809797a67c0a0
 ***/
:root {
  /* set base values */
  --text-base-size: 16px;
  --text-scale-ratio: 1.2;
  /* scale base values */
  /* type scale */
  --text-xs: calc(1em / (var(--text-scale-ratio) * var(--text-scale-ratio)));
  --text-sm: calc(1em / var(--text-scale-ratio));
  --text-md: calc(1em * var(--text-scale-ratio));
  --text-lg: calc(1em * var(--text-scale-ratio) * var(--text-scale-ratio));
  --text-xl: calc(
    1em * var(--text-scale-ratio) * var(--text-scale-ratio) *
      var(--text-scale-ratio)
  );
  --text-xxl: calc(
    1em * var(--text-scale-ratio) * var(--text-scale-ratio) *
      var(--text-scale-ratio) * var(--text-scale-ratio)
  );
  --text-xxxl: calc(
    1em * var(--text-scale-ratio) * var(--text-scale-ratio) *
      var(--text-scale-ratio) * var(--text-scale-ratio) *
      var(--text-scale-ratio)
  );
  /* line-height */ }
  @media (min-width: 768px) {
    :root {
      --text-base-size: 20px;
      --text-scale-ratio: 1.25; } }

body {
  font-size: var(--text-base-size); }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: inherit;
  font-weight: 500;
  line-height: 1.4;
  margin-bottom: 0.5em;
  margin-top: 0; }

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-weight: 500; }

h1,
.h1 {
  font-size: var(--text-xxl); }

h2,
.h2 {
  font-size: var(--text-xl); }

h3,
.h3 {
  font-size: var(--text-lg); }

h4,
.h4 {
  font-size: var(--text-md); }

h5,
.h5 {
  font-size: var(--text-sm); }

h6,
.h6 {
  font-size: var(--text-xs); }

p {
  margin: 0 0 1.2rem; }

a,
ins,
u {
  -webkit-text-decoration-skip: ink edges;
          text-decoration-skip: ink edges; }

abbr[title] {
  border-bottom: 0.05rem dotted;
  cursor: help;
  text-decoration: none; }

kbd {
  border-radius: 0.1rem;
  line-height: 1.25;
  padding: .1rem .2rem;
  background: #303742;
  color: #fff;
  font-size: 0.7rem; }

mark {
  background: #ffe9b3;
  color: #3b4351;
  border-bottom: 0.05rem solid #ffd367;
  border-radius: 0.1rem;
  padding: 0.05rem 0.1rem 0; }

blockquote {
  border-left: 0.1rem solid #dadee4;
  margin-left: 0;
  padding: 0.4rem 0.8rem; }
  blockquote p:last-child {
    margin-bottom: 0; }

ul,
ol {
  margin: 0.8rem 0 0.8rem 0.8rem;
  padding: 0; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin: 0.8rem 0 0.8rem 0.8rem; }
  ul li,
  ol li {
    margin-top: 0.4rem; }

ul {
  list-style: disc inside; }
  ul ul {
    list-style-type: circle; }

ol {
  list-style: decimal inside; }
  ol ol {
    list-style-type: lower-alpha; }

dl dt {
  font-weight: bold; }

dl dd {
  margin: 0.4rem 0 0.8rem 0; }

.btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #fff;
  border: 0.05rem solid #5755d9;
  border-radius: 0.1rem;
  color: #5755d9;
  cursor: pointer;
  display: inline-block;
  font-size: 0.8rem;
  height: 1.8rem;
  line-height: 1.2rem;
  outline: none;
  padding: 0.25rem 0.4rem;
  text-align: center;
  text-decoration: none;
  -webkit-transition: background .2s, border .2s, color .2s, -webkit-box-shadow .2s;
  transition: background .2s, border .2s, color .2s, -webkit-box-shadow .2s;
  -o-transition: background .2s, border .2s, box-shadow .2s, color .2s;
  transition: background .2s, border .2s, box-shadow .2s, color .2s;
  transition: background .2s, border .2s, box-shadow .2s, color .2s, -webkit-box-shadow .2s;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap; }
  .btn:focus {
    -webkit-box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
            box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2); }
  .btn:focus, .btn:hover {
    background: #f1f1fc;
    border-color: #4b48d6;
    text-decoration: none; }
  .btn:active, .btn.active {
    background: #4b48d6;
    border-color: #3634d2;
    color: #fff;
    text-decoration: none; }
    .btn:active.loading::after, .btn.active.loading::after {
      border-bottom-color: #fff;
      border-left-color: #fff; }
  .btn[disabled], .btn:disabled, .btn.disabled {
    cursor: default;
    opacity: .5;
    pointer-events: none; }
  .btn.btn-primary {
    background: #5755d9;
    border-color: #4b48d6;
    color: #fff; }
    .btn.btn-primary:focus, .btn.btn-primary:hover {
      background: #4240d4;
      border-color: #3634d2;
      color: #fff; }
    .btn.btn-primary:active, .btn.btn-primary.active {
      background: #3a38d2;
      border-color: #302ecd;
      color: #fff; }
    .btn.btn-primary.loading::after {
      border-bottom-color: #fff;
      border-left-color: #fff; }
  .btn.btn-success {
    background: #32b643;
    border-color: #2faa3f;
    color: #fff; }
    .btn.btn-success:focus {
      -webkit-box-shadow: 0 0 0 0.1rem rgba(50, 182, 67, 0.2);
              box-shadow: 0 0 0 0.1rem rgba(50, 182, 67, 0.2); }
    .btn.btn-success:focus, .btn.btn-success:hover {
      background: #30ae40;
      border-color: #2da23c;
      color: #fff; }
    .btn.btn-success:active, .btn.btn-success.active {
      background: #2a9a39;
      border-color: #278e34;
      color: #fff; }
    .btn.btn-success.loading::after {
      border-bottom-color: #fff;
      border-left-color: #fff; }
  .btn.btn-error {
    background: #e85600;
    border-color: #d95000;
    color: #fff; }
    .btn.btn-error:focus {
      -webkit-box-shadow: 0 0 0 0.1rem rgba(232, 86, 0, 0.2);
              box-shadow: 0 0 0 0.1rem rgba(232, 86, 0, 0.2); }
    .btn.btn-error:focus, .btn.btn-error:hover {
      background: #de5200;
      border-color: #cf4d00;
      color: #fff; }
    .btn.btn-error:active, .btn.btn-error.active {
      background: #c44900;
      border-color: #b54300;
      color: #fff; }
    .btn.btn-error.loading::after {
      border-bottom-color: #fff;
      border-left-color: #fff; }
  .btn.btn-link {
    background: transparent;
    border-color: transparent;
    color: #5755d9; }
    .btn.btn-link:focus, .btn.btn-link:hover, .btn.btn-link:active, .btn.btn-link.active {
      color: #302ecd; }
  .btn.btn-sm {
    font-size: 0.7rem;
    height: 1.4rem;
    padding: 0.05rem 0.3rem; }
  .btn.btn-lg {
    font-size: 0.9rem;
    height: 2rem;
    padding: 0.35rem 0.6rem; }
  .btn.btn-block {
    display: block;
    width: 100%; }
  .btn.btn-action {
    width: 1.8rem;
    padding-left: 0;
    padding-right: 0; }
    .btn.btn-action.btn-sm {
      width: 1.4rem; }
    .btn.btn-action.btn-lg {
      width: 2rem; }
  .btn.btn-clear {
    background: transparent;
    border: 0;
    color: currentColor;
    height: 1rem;
    line-height: 0.8rem;
    margin-left: 0.2rem;
    margin-right: -2px;
    opacity: 1;
    padding: 0.1rem;
    text-decoration: none;
    width: 1rem; }
    .btn.btn-clear:focus, .btn.btn-clear:hover {
      background: rgba(247, 248, 249, 0.5);
      opacity: .95; }
    .btn.btn-clear::before {
      content: "\2715"; }

.btn-group {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .btn-group .btn {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
    .btn-group .btn:first-child:not(:last-child) {
      border-bottom-right-radius: 0;
      border-top-right-radius: 0; }
    .btn-group .btn:not(:first-child):not(:last-child) {
      border-radius: 0;
      margin-left: -0.05rem; }
    .btn-group .btn:last-child:not(:first-child) {
      border-bottom-left-radius: 0;
      border-top-left-radius: 0;
      margin-left: -0.05rem; }
    .btn-group .btn:focus, .btn-group .btn:hover, .btn-group .btn:active, .btn-group .btn.active {
      z-index: 1; }
  .btn-group.btn-group-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .btn-group.btn-group-block .btn {
      -webkit-box-flex: 1;
          -ms-flex: 1 0 0px;
              flex: 1 0 0; }

.container {
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.4rem;
  padding-right: 0.4rem;
  width: 100%; }
  .container.grid-xl {
    max-width: 1212.8px; }
  .container.grid-lg {
    max-width: 1004.8px; }
  .container.grid-md {
    max-width: 780.8px; }
  .container.grid-sm {
    max-width: 588.8px; }
  .container.grid-xs {
    max-width: 588.8px; }

.show-xs,
.show-sm,
.show-md,
.show-lg,
.show-xl {
  display: none !important; }

.columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -0.4rem;
  margin-right: -0.4rem; }
  .columns.col-gapless {
    margin-left: 0;
    margin-right: 0; }
    .columns.col-gapless > .column {
      padding-left: 0;
      padding-right: 0; }
  .columns.col-oneline {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    overflow-x: auto; }

.column {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 100%;
  padding-left: 0.4rem;
  padding-right: 0.4rem; }
  .column.col-12, .column.col-11, .column.col-10, .column.col-9, .column.col-8, .column.col-7, .column.col-6, .column.col-5, .column.col-4, .column.col-3, .column.col-2, .column.col-1, .column.col-auto {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none; }

.col-12 {
  width: 100%; }

.col-11 {
  width: 91.66666667%; }

.col-10 {
  width: 83.33333333%; }

.col-9 {
  width: 75%; }

.col-8 {
  width: 66.66666667%; }

.col-7 {
  width: 58.33333333%; }

.col-6 {
  width: 50%; }

.col-5 {
  width: 41.66666667%; }

.col-4 {
  width: 33.33333333%; }

.col-3 {
  width: 25%; }

.col-2 {
  width: 16.66666667%; }

.col-1 {
  width: 8.33333333%; }

.col-auto {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  max-width: none;
  width: auto; }

.col-mx-auto {
  margin-left: auto;
  margin-right: auto; }

.col-ml-auto {
  margin-left: auto; }

.col-mr-auto {
  margin-right: auto; }

@media (max-width: 1200px) {
  .col-xl-12,
  .col-xl-11,
  .col-xl-10,
  .col-xl-9,
  .col-xl-8,
  .col-xl-7,
  .col-xl-6,
  .col-xl-5,
  .col-xl-4,
  .col-xl-3,
  .col-xl-2,
  .col-xl-1,
  .col-xl-auto {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none; }
  .col-xl-12 {
    width: 100%; }
  .col-xl-11 {
    width: 91.66666667%; }
  .col-xl-10 {
    width: 83.33333333%; }
  .col-xl-9 {
    width: 75%; }
  .col-xl-8 {
    width: 66.66666667%; }
  .col-xl-7 {
    width: 58.33333333%; }
  .col-xl-6 {
    width: 50%; }
  .col-xl-5 {
    width: 41.66666667%; }
  .col-xl-4 {
    width: 33.33333333%; }
  .col-xl-3 {
    width: 25%; }
  .col-xl-2 {
    width: 16.66666667%; }
  .col-xl-1 {
    width: 8.33333333%; }
  .col-xl-auto {
    width: auto; }
  .hide-xl {
    display: none !important; }
  .show-xl {
    display: block !important; } }

@media (max-width: 992px) {
  .col-lg-12,
  .col-lg-11,
  .col-lg-10,
  .col-lg-9,
  .col-lg-8,
  .col-lg-7,
  .col-lg-6,
  .col-lg-5,
  .col-lg-4,
  .col-lg-3,
  .col-lg-2,
  .col-lg-1,
  .col-lg-auto {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none; }
  .col-lg-12 {
    width: 100%; }
  .col-lg-11 {
    width: 91.66666667%; }
  .col-lg-10 {
    width: 83.33333333%; }
  .col-lg-9 {
    width: 75%; }
  .col-lg-8 {
    width: 66.66666667%; }
  .col-lg-7 {
    width: 58.33333333%; }
  .col-lg-6 {
    width: 50%; }
  .col-lg-5 {
    width: 41.66666667%; }
  .col-lg-4 {
    width: 33.33333333%; }
  .col-lg-3 {
    width: 25%; }
  .col-lg-2 {
    width: 16.66666667%; }
  .col-lg-1 {
    width: 8.33333333%; }
  .col-lg-auto {
    width: auto; }
  .hide-lg {
    display: none !important; }
  .show-lg {
    display: block !important; } }

@media (max-width: 768px) {
  .col-md-12,
  .col-md-11,
  .col-md-10,
  .col-md-9,
  .col-md-8,
  .col-md-7,
  .col-md-6,
  .col-md-5,
  .col-md-4,
  .col-md-3,
  .col-md-2,
  .col-md-1,
  .col-md-auto {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none; }
  .col-md-12 {
    width: 100%; }
  .col-md-11 {
    width: 91.66666667%; }
  .col-md-10 {
    width: 83.33333333%; }
  .col-md-9 {
    width: 75%; }
  .col-md-8 {
    width: 66.66666667%; }
  .col-md-7 {
    width: 58.33333333%; }
  .col-md-6 {
    width: 50%; }
  .col-md-5 {
    width: 41.66666667%; }
  .col-md-4 {
    width: 33.33333333%; }
  .col-md-3 {
    width: 25%; }
  .col-md-2 {
    width: 16.66666667%; }
  .col-md-1 {
    width: 8.33333333%; }
  .col-md-auto {
    width: auto; }
  .hide-md {
    display: none !important; }
  .show-md {
    display: block !important; } }

@media (max-width: 576px) {
  .col-sm-12,
  .col-sm-11,
  .col-sm-10,
  .col-sm-9,
  .col-sm-8,
  .col-sm-7,
  .col-sm-6,
  .col-sm-5,
  .col-sm-4,
  .col-sm-3,
  .col-sm-2,
  .col-sm-1,
  .col-sm-auto {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none; }
  .col-sm-12 {
    width: 100%; }
  .col-sm-11 {
    width: 91.66666667%; }
  .col-sm-10 {
    width: 83.33333333%; }
  .col-sm-9 {
    width: 75%; }
  .col-sm-8 {
    width: 66.66666667%; }
  .col-sm-7 {
    width: 58.33333333%; }
  .col-sm-6 {
    width: 50%; }
  .col-sm-5 {
    width: 41.66666667%; }
  .col-sm-4 {
    width: 33.33333333%; }
  .col-sm-3 {
    width: 25%; }
  .col-sm-2 {
    width: 16.66666667%; }
  .col-sm-1 {
    width: 8.33333333%; }
  .col-sm-auto {
    width: auto; }
  .hide-sm {
    display: none !important; }
  .show-sm {
    display: block !important; } }

@media (max-width: 576px) {
  .col-xs-12,
  .col-xs-11,
  .col-xs-10,
  .col-xs-9,
  .col-xs-8,
  .col-xs-7,
  .col-xs-6,
  .col-xs-5,
  .col-xs-4,
  .col-xs-3,
  .col-xs-2,
  .col-xs-1,
  .col-xs-auto {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none; }
  .col-xs-12 {
    width: 100%; }
  .col-xs-11 {
    width: 91.66666667%; }
  .col-xs-10 {
    width: 83.33333333%; }
  .col-xs-9 {
    width: 75%; }
  .col-xs-8 {
    width: 66.66666667%; }
  .col-xs-7 {
    width: 58.33333333%; }
  .col-xs-6 {
    width: 50%; }
  .col-xs-5 {
    width: 41.66666667%; }
  .col-xs-4 {
    width: 33.33333333%; }
  .col-xs-3 {
    width: 25%; }
  .col-xs-2 {
    width: 16.66666667%; }
  .col-xs-1 {
    width: 8.33333333%; }
  .col-xs-auto {
    width: auto; }
  .hide-xs {
    display: none !important; }
  .show-xs {
    display: block !important; } }

@media (max-width: 576px) {
  .d-flex.show-xs {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; } }

@media (max-width: 576px) {
  .d-flex.show-sm {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; } }

@media (max-width: 768px) {
  .d-flex.show-md {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; } }

@media (max-width: 992px) {
  .d-flex.show-lg {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; } }

@media (max-width: 1200px) {
  .d-flex.show-xl {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; } }

.navbar {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .navbar .navbar-section {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0; }
    .navbar .navbar-section:not(:first-child):last-child {
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
  .navbar .navbar-center {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .navbar .navbar-brand {
    font-size: 0.9rem;
    text-decoration: none; }

.dropdown {
  display: inline-block;
  position: relative; }
  .dropdown .menu {
    -webkit-animation: slide-down .15s ease 1;
            animation: slide-down .15s ease 1;
    display: none;
    left: 0;
    max-height: 50vh;
    overflow-y: auto;
    position: absolute;
    top: 100%; }
  .dropdown.dropdown-right .menu {
    left: auto;
    right: 0; }
  .dropdown.active .menu,
  .dropdown .dropdown-toggle:focus + .menu,
  .dropdown .menu:hover {
    display: block; }
  .dropdown .btn-group .dropdown-toggle:nth-last-child(2) {
    border-bottom-right-radius: 0.1rem;
    border-top-right-radius: 0.1rem; }

.menu {
  -webkit-box-shadow: 0 0.05rem 0.2rem rgba(48, 55, 66, 0.3);
          box-shadow: 0 0.05rem 0.2rem rgba(48, 55, 66, 0.3);
  background: #fff;
  border-radius: 0.1rem;
  list-style: none;
  margin: 0;
  min-width: 180px;
  padding: 0.4rem;
  -webkit-transform: translateY(0.2rem);
      -ms-transform: translateY(0.2rem);
          transform: translateY(0.2rem);
  z-index: 300; }
  .menu.menu-nav {
    background: transparent;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .menu .menu-item {
    margin-top: 0;
    padding: 0 0.4rem;
    position: relative;
    text-decoration: none; }
    .menu .menu-item > a {
      border-radius: 0.1rem;
      color: inherit;
      display: block;
      margin: 0 -0.4rem;
      padding: 0.2rem 0.4rem;
      text-decoration: none; }
      .menu .menu-item > a:focus, .menu .menu-item > a:hover {
        background: #f1f1fc;
        color: #5755d9; }
      .menu .menu-item > a:active, .menu .menu-item > a.active {
        background: #f1f1fc;
        color: #5755d9; }
    .menu .menu-item .form-checkbox,
    .menu .menu-item .form-radio,
    .menu .menu-item .form-switch {
      margin: 0.1rem 0; }
    .menu .menu-item + .menu-item {
      margin-top: 0.2rem; }
  .menu .menu-badge {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0; }
    .menu .menu-badge .label {
      margin-right: 0.4rem; }

.dropdown .menu.menu-horizontal {
  -webkit-transform: unset;
      -ms-transform: unset;
          transform: unset; }

.dropdown:focus .menu.menu-horizontal,
.dropdown:hover .menu.menu-horizontal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.navbar .nav {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }
  .navbar .nav li {
    margin-top: unset; }

@media (max-width: 576px) {
  .navbar .navbar-section[open] {
    display: block !important; } }

.navbar .navbar-section-primary {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2; }

.navbar .navbar-section-toggle {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  list-style: none;
  margin: 0.2rem 0; }
  .nav .nav-item a {
    color: #66758c;
    padding: 0.2rem 0.4rem;
    text-decoration: none; }
    .nav .nav-item a:focus, .nav .nav-item a:hover {
      color: #5755d9; }
  .nav .nav-item.active > a {
    color: #505c6e;
    font-weight: bold; }
    .nav .nav-item.active > a:focus, .nav .nav-item.active > a:hover {
      color: #5755d9; }
  .nav .nav {
    margin-bottom: 0.4rem;
    margin-left: 0.8rem; }

/* Temp */
/**
	Helper functions calculators and such
 */
/**
	Color contrast (diffs current color with this)

	Sends in dark green $color
	Returns $color-light-text
 */
/**
* Returns url for a random image from unsplash
* $size-x int = width
* $size-y int = height
* $random boolean = random image or not
*/
/** returns image relative to template **/
/**
	Helper functions calculators and such
 */
/**
	TODO - BREAKOUT ?!
 */
.text-primary {
  color: #5755d9; }

a.text-primary:focus, a.text-primary:hover {
  color: #4240d4; }

.text-secondary {
  color: #e5e5f9; }

a.text-secondary:focus, a.text-secondary:hover {
  color: #d1d0f4; }

.text-gray {
  color: #bcc3ce; }

a.text-gray:focus, a.text-gray:hover {
  color: #adb6c4; }

.text-light {
  color: #fff; }

a.text-light:focus, a.text-light:hover {
  color: #f2f2f2; }

.text-success {
  color: #32b643; }

a.text-success:focus, a.text-success:hover {
  color: #2da23c; }

.text-warning {
  color: #ffb700; }

a.text-warning:focus, a.text-warning:hover {
  color: #e6a500; }

.text-error {
  color: #e85600; }

a.text-error:focus, a.text-error:hover {
  color: #cf4d00; }

.bg-primary {
  background: #5755d9; }

.bg-secondary {
  background: #f1f1fc; }

.bg-dark {
  background: #303742; }

.bg-gray {
  background: #f7f8f9; }

.bg-success {
  background: #32b643; }

.bg-warning {
  background: #ffb700; }

.bg-error {
  background: #e85600; }

.no-margin {
  margin: 0; }

.no-padding {
  padding: 0; }

.text--center {
  text-align: center; }

.text--left {
  text-align: left; }

.text--right {
  text-align: right; }

.text--justify {
  text-align: justify; }

.text--lowercase {
  text-transform: lowercase; }

.text--uppercase {
  text-transform: uppercase; }

.text--capitalize {
  text-transform: capitalize; }

.text--normal {
  font-weight: normal; }

.text--bold {
  font-weight: bold; }

.text--italic {
  font-style: italic; }

.text--ellipsis {
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap; }

.text--clip {
  overflow: hidden;
  -o-text-overflow: clip;
     text-overflow: clip;
  white-space: nowrap; }

.text--break {
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
  word-break: break-word;
  word-wrap: break-word; }

.text--hide {
  background: transparent;
  border: 0;
  color: transparent;
  font: 0/0 a;
  text-shadow: none; }

.float--left {
  float: left; }

.float--right {
  float: right; }

/**
	redo these
 */
.mt--10 {
  margin-top: rem(10); }

.mt--5 {
  margin-top: rem(5); }

.mr--10 {
  margin-right: rem(10); }

.mr--5 {
  margin-right: rem(5); }

.mb--10 {
  margin-bottom: rem(10); }

.mb--5 {
  margin-bottom: rem(5); }

.ml--10 {
  margin-left: rem(10); }

.ml--5 {
  margin-left: rem(5); }

.pt--10 {
  padding-top: rem(10); }

.pt--5 {
  padding-top: rem(5); }

.pr--10 {
  padding-right: rem(10); }

.pr--5 {
  padding-right: rem(5); }

.pb--10 {
  padding-bottom: rem(10); }

.pb--5 {
  padding-bottom: rem(5); }

.pl--10 {
  padding-left: rem(10); }

.pl--5 {
  padding-left: rem(5); }

.clearfix::after {
  content: "";
  display: table;
  clear: both; }

.rel {
  position: relative; }

.abs {
  position: absolute; }

.fixed {
  position: fixed; }

.centered {
  display: block;
  float: none;
  margin-left: auto;
  margin-right: auto; }

.block {
  display: block; }

.inline {
  display: inline; }

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

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.inline-flex {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.hide {
  display: none !important; }

.visible {
  visibility: visible; }

.invisible {
  visibility: hidden; }

.hand {
  cursor: pointer; }

.shadow {
  -webkit-box-shadow: 0 0.1rem 0.4rem rgba(0, 0, 0, 0.3);
          box-shadow: 0 0.1rem 0.4rem rgba(0, 0, 0, 0.3); }

.light-shadow {
  -webkit-box-shadow: 0 0.1rem 0.2rem rgba(0, 0, 0, 0.15);
          box-shadow: 0 0.1rem 0.2rem rgba(0, 0, 0, 0.15); }

.rounded {
  border-radius: 0.1rem; }

.circle {
  border-radius: 50%; }

.caret {
  border-left: rem(4) solid transparent;
  border-right: rem(4) solid transparent;
  border-top: rem(4) solid currentColor;
  display: inline-block;
  height: 0;
  margin: 0 .2rem;
  vertical-align: middle;
  width: 0; }

.loading {
  color: transparent !important;
  min-height: 0.8rem;
  pointer-events: none;
  position: relative; }
  .loading::after {
    -webkit-animation: loading 500ms infinite linear;
            animation: loading 500ms infinite linear;
    border: 0.1rem solid #5755d9;
    border-radius: 50%;
    border-right-color: transparent;
    border-top-color: transparent;
    content: "";
    display: block;
    height: 0.8rem;
    left: 50%;
    margin-left: -0.4rem;
    margin-top: -0.4rem;
    position: absolute;
    top: 50%;
    width: 0.8rem;
    z-index: 1; }
  .loading--large {
    min-height: 2rem; }
    .loading--large::after {
      height: 1.6rem;
      margin-left: -0.8rem;
      margin-top: -0.8rem;
      width: 1.6rem; }

.divider,
.divider-vert {
  display: block;
  position: relative; }
  .divider[data-content]::after,
  .divider-vert[data-content]::after {
    background: #fff;
    color: #bcc3ce;
    content: attr(data-content);
    display: inline-block;
    font-size: 0.7rem;
    padding: 0 0.4rem;
    -webkit-transform: translateY(-0.65rem);
        -ms-transform: translateY(-0.65rem);
            transform: translateY(-0.65rem); }

.divider {
  border-top: 0.05rem solid #dadee4;
  height: 0.05rem;
  margin: 0.4rem 0; }
  .divider[data-content] {
    margin: 0.8rem 0; }

.divider-vert {
  display: block;
  padding: 0.8rem; }
  .divider-vert::before {
    border-left: 0.05rem solid #dadee4;
    bottom: 0.4rem;
    content: "";
    display: block;
    left: 50%;
    position: absolute;
    top: 0.4rem;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .divider-vert[data-content]::after {
    left: 50%;
    padding: 0.2rem 0;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

.d-block {
  display: block; }

.d-inline {
  display: inline; }

.d-inline-block {
  display: inline-block; }

.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.d-inline-flex {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.d-none,
.d-hide {
  display: none !important; }

.d-visible {
  visibility: visible; }

.d-invisible {
  visibility: hidden; }

.text-hide {
  background: transparent;
  border: 0;
  color: transparent;
  font-size: 0;
  line-height: 0;
  text-shadow: none; }

.text-assistive {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.m-0 {
  margin: 0; }

.mb-0 {
  margin-bottom: 0; }

.ml-0 {
  margin-left: 0; }

.mr-0 {
  margin-right: 0; }

.mt-0 {
  margin-top: 0; }

.mx-0 {
  margin-left: 0;
  margin-right: 0; }

.my-0 {
  margin-bottom: 0;
  margin-top: 0; }

.m-1 {
  margin: 0.2rem; }

.mb-1 {
  margin-bottom: 0.2rem; }

.ml-1 {
  margin-left: 0.2rem; }

.mr-1 {
  margin-right: 0.2rem; }

.mt-1 {
  margin-top: 0.2rem; }

.mx-1 {
  margin-left: 0.2rem;
  margin-right: 0.2rem; }

.my-1 {
  margin-bottom: 0.2rem;
  margin-top: 0.2rem; }

.m-2 {
  margin: 0.4rem; }

.mb-2 {
  margin-bottom: 0.4rem; }

.ml-2 {
  margin-left: 0.4rem; }

.mr-2 {
  margin-right: 0.4rem; }

.mt-2 {
  margin-top: 0.4rem; }

.mx-2 {
  margin-left: 0.4rem;
  margin-right: 0.4rem; }

.my-2 {
  margin-bottom: 0.4rem;
  margin-top: 0.4rem; }

.p-0 {
  padding: 0; }

.pb-0 {
  padding-bottom: 0; }

.pl-0 {
  padding-left: 0; }

.pr-0 {
  padding-right: 0; }

.pt-0 {
  padding-top: 0; }

.px-0 {
  padding-left: 0;
  padding-right: 0; }

.py-0 {
  padding-bottom: 0;
  padding-top: 0; }

.p-1 {
  padding: 0.2rem; }

.pb-1 {
  padding-bottom: 0.2rem; }

.pl-1 {
  padding-left: 0.2rem; }

.pr-1 {
  padding-right: 0.2rem; }

.pt-1 {
  padding-top: 0.2rem; }

.px-1 {
  padding-left: 0.2rem;
  padding-right: 0.2rem; }

.py-1 {
  padding-bottom: 0.2rem;
  padding-top: 0.2rem; }

.p-2 {
  padding: 0.4rem; }

.pb-2 {
  padding-bottom: 0.4rem; }

.pl-2 {
  padding-left: 0.4rem; }

.pr-2 {
  padding-right: 0.4rem; }

.pt-2 {
  padding-top: 0.4rem; }

.px-2 {
  padding-left: 0.4rem;
  padding-right: 0.4rem; }

.py-2 {
  padding-bottom: 0.4rem;
  padding-top: 0.4rem; }

.text-ellipsis {
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap; }

.text-clip {
  overflow: hidden;
  -o-text-overflow: clip;
     text-overflow: clip;
  white-space: nowrap; }

.text-break {
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
  word-break: break-word;
  word-wrap: break-word; }

/* Utilites */
.outdated-browser {
  display: none;
  text-align: center;
  background: #fec2c1;
  border-bottom: 1px solid #d86a73;
  margin: 0;
  padding: 1.5em;
  font-family: sans-serif;
  line-height: 1.3;
  color: #333;
  font-size: 0.9em; }
  .outdated-browser p {
    margin: 0; }
  .outdated-browser img {
    display: block;
    margin: 0 auto 1em; }
  .outdated-browser a {
    color: #333;
    font-weight: bold; }

.ie10 .outdated-browser,
.ie .outdated-browser {
  display: block; }

.screen {
  position: fixed;
  bottom: 1em;
  left: 0;
  right: 0;
  width: 15em;
  margin: auto;
  z-index: 9999; }
  .screen:before {
    -webkit-transition: background 0.2s ease-out;
    -o-transition: background 0.2s ease-out;
    transition: background 0.2s ease-out;
    display: block;
    padding: 0.5em;
    color: #fff; }
    @media (min-width: size-xs) {
      .screen:before {
        background: rgba(125, 0, 0, 0.8);
        content: "size-xs"; } }
    @media (min-width: size-sm) {
      .screen:before {
        background: rgba(125, 125, 0, 0.8);
        content: "size-sm"; } }
    @media (min-width: size-md) {
      .screen:before {
        background: rgba(125, 0, 125, 0.8);
        content: "size-md"; } }
    @media (min-width: size-lg) {
      .screen:before {
        background: rgba(0, 125, 125, 0.8);
        content: "size-lg"; } }
    @media (min-width: size-xl) {
      .screen:before {
        background: rgba(0, 125, 0, 0.8);
        content: "size-xl"; } }
    @media (min-width: size-2x) {
      .screen:before {
        background: rgba(0, 0, 125, 0.8);
        content: "size-2x"; } }
    @media (min-width: 1201px) {
      .screen:before {
        background: rgba(125, 0, 255, 0.8);
        content: "size-2x"; } }
