/*
  This is the main CSS entry point for the PostCSS pipeline.
  All other stylesheets are imported from here.
*/

/* Fonts, Theme, Base, and Grid */

/* FONT WEIGHT 300 - LIGHT */

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT-Light.woff2") format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 300;
    font-stretch: normal;
}

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT-Light.woff2") format("woff2");
    font-display: swap;
    font-style: italic;
    font-weight: 300;
    font-stretch: normal;
}

/* FONT WEIGHT 400 - BOOK */

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT-Book.woff2") format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal;
}

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT-Book.woff2") format("woff2");
    font-display: swap;
    font-style: italic;
    font-weight: 400;
    font-stretch: normal;
}

/* FONT WEIGHT 500 - MEDIUM / DEFAULT */

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT.woff2") format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 500;
    font-stretch: normal;
}

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT.woff2") format("woff2");
    font-display: swap;
    font-style: italic;
    font-weight: 500;
    font-stretch: normal;
}

/* FONT WEIGHT 600 - HEAVY */

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaPTWebHeavy.woff2") format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 600;
    font-stretch: normal;
}

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT-Heavy.woff2") format("woff2");
    font-display: swap;
    font-style: italic;
    font-weight: 600;
    font-stretch: normal;
}

/* FONT WEIGHT 700 - BOLD */

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT-Bold.woff2") format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 700;
    font-stretch: normal;
}

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT-Bold.woff2") format("woff2");
    font-display: swap;
    font-style: italic;
    font-weight: 700;
    font-stretch: normal;
}

/* FONT WEIGHT 800 - EXTRA-BOLD */

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT-ExtraBold.woff2") format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 800;
    font-stretch: normal;
}

@font-face {
    font-family: "futura";
    src: url("../assets/fonts/FuturaLT-ExtraBold.woff2") format("woff2");
    font-display: swap;
    font-style: italic;
    font-weight: 800;
    font-stretch: normal;
}

:root {
    /* Theme Colors (only to be used by other variables within this :root declaration) */
    --original-link-blue: #2A52B7;
    --new-yellow: #e3ff33;
    --new-dark-bluish: #2d5371;
    --new-gray: #464A53;
    --new-dark-gray: #21242b;
    --new-black: #17191d;

    /* OLD */
    --main-accent: #ff8433;
    --main-black: #17191e;
    --main-black-transparent: #17191ef2;
    --main-white: #ffffff;
    --main-link-color: #2A52B7;
    --main-bg-color: #d6d6d7;
    --sec-bg-color: #9b9b9c;

    /* Header & Nav */
    --header-bg-color: var(--new-dark-bluish);
    --header-logo-color: var(--main-white);
    --nav-links-color: var(--main-white);
    --nav-links-hover-bg: var(--main-white);
    --nav-links-hover-color: var(--new-dark-bluish);
    --header-secondary-color-1: var(--new-dark-bluish);
    --header-secondary-color-2: var(--new-dark-bluish);
    --header-menu-button-color: var(--main-white);

    /* Headings */
    --h1-color: var(--new-dark-bluish);
    --h2-color: var(--new-dark-bluish);
    --h3-color: var(--new-dark-bluish);
    --h4-color: var(--new-dark-bluish);
    --h5-color: var(--new-dark-bluish);
    --h6-color: var(--new-dark-bluish);

    /* Buttons */
    --main-btn-icon-color: var(--main-white);
    --main-btn-text-color: var(--main-white);
    --main-btn-bg-color: var(--new-dark-bluish);

    /* Body */
    --body-color: var(--new-gray);

    /* Accent Stripe */
    --accent-stripe-bg: var(--main-white);
    --accent-stripe-text: var(--new-dark-bluish);

    /* Footer */
    --footer-bg-color: var(--new-dark-bluish);
    --footer-text-color: var(--main-white);
    --footer-logo-color: var(--main-white);

}

/* Screen reader only - visually hidden but accessible to screen readers */

.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

:root {
    --section-padding: 40px;
    --p-text-size: 19px;
    --p-line-height: 1.6;
    --gutter-base: 15px;
    --header-height-main: 56px;
    --header-height-secondary: 26px;
}

html,
body {
    margin: 0;
    font-family: futura, sans-serif;
    color: var(--body-color);

    * {
        box-sizing: border-box;
    }

    a {
        color: var(--main-link-color);

        &:hover {
            color: var(--main-accent);
            text-decoration: underline;
        }

        &:active {
            color: var(--main-black);
        }
    }
}

.subtitle {
    text-transform: uppercase;
    font-size: 13.5px;
    margin-top: 1px;

    &.bold {
        margin-top: 0;
        font-size: 15px;
        font-weight: 600;
    }
}

section {
    position: relative;
    padding: var(--section-padding) var(--gutter-base);
    background-color: transparent;

    &:nth-child(odd) {
        background-color: var(--main-bg-color);
    }

    .invert-rows & {
        &:nth-child(odd) {
            background-color: var(--main-white);
        }

        &:nth-child(even) {
            background-color: var(--main-bg-color);
        }
    }
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
    margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    width: 100%;
}

h1,
.h1 {
    display: inline-block;
    font-size: 32px;
    width: auto;
    color: var(--h1-color);
    position: relative;

    &:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;

    }
}

h2,
.h2 {
    font-size: 27px;
    color: var(--h2-color);
}

h3,
.h3 {
    font-size: 23px;
    color: var(--h3-color);
}

h4,
.h4 {
    color: var(--h4-color);
}

h5,
.h5 {
    color: var(--h5-color);
}

h6,
.h6 {
    color: var(--h6-color);
    font-size: calc(var(--p-text-size) + 2px);
    font-weight: 600;
}

strong {
    font-weight: 600;
}

p,
.p,
ul {
    margin: 10px 0;
}

.btn {
    margin: 15px 0;
}

p,
.p {
    font-size: var(--p-text-size);
    line-height: var(--p-line-height);
    display: inline-block;
    width: 100%;
    line-height: 1.6;

    strong {
        font-size: calc(var(--p-text-size) + 2px);
    }


    &:last-child {
        margin-bottom: 0;
    }
}

.p>p {
    margin-top: 0;
}

.statement,
.statement.p,
.statement p,
.statement .p {
    font-size: calc(var(--p-text-size) + 2px)
}

.list {
    &.bullet-list {
        padding: 0 22px;
        line-height: 1.5;

        li {
            margin: 8px 0;
        }
    }
}

/* Helper Classes */

.align-left {
    text-align: left;
}

.align-right {
    text-align: right;
}

.align-center {
    text-align: center;
}

.no-padding {
    padding: 0;

    &.btn {
        padding: 0;
    }
}

.no-padding-t {
    padding-top: 0;

    &.btn {
        padding-top: 0;
    }
}

.no-padding-b {
    padding-bottom: 0;

    &.btn {
        padding-bottom: 0;
    }
}

.no-padding-l {
    padding-left: 0;

    &.btn {
        padding-left: 0;
        ;
    }
}

.no-padding-r {
    padding-right: 0;

    &.btn {
        padding-right: 0;
        ;
    }
}

.no-padding-v {
    padding-top: 0;
    padding-bottom: 0;

    &.btn {
        padding-top: 0;
        padding-bottom: 0;
    }
}

.no-padding-h {
    padding-left: 0;
    padding-right: 0;

    &.btn {
        padding-left: 0;
        padding-right: 0;
    }
}

.no-margin {
    margin: 0;

    &.btn {
        margin: 0;
    }
}

.no-margin-top {
    margin-top: 0;

    &.btn {
        margin-top: 0;
    }
}

.no-margin-bottom {
    margin-bottom: 0;

    &.btn {
        margin-bottom: 0;
    }
}

.spacer {
    height: var(--gutter-base);
}

.spacer-x2 {
    height: calc(var(--gutter-base) * 2);
}

.spacer-none {
    height: 0;
}

@media (min-width: 576px) {
    .align-left-sm {
        text-align: left;
    }

    .align-right-sm {
        text-align: right;
    }

    .align-center-sm {
        text-align: center;
    }

    .no-padding-sm {
        padding: 0;

        &.btn {
            padding: 0;
        }
    }

    .no-padding-t-sm {
        padding-top: 0;

        &.btn {
            padding-top: 0;
        }
    }

    .no-padding-b-sm {
        padding-bottom: 0;

        &.btn {
            padding-bottom: 0;
        }
    }

    .no-padding-l-sm {
        padding-left: 0;

        &.btn {
            padding-left: 0;
            ;
        }
    }

    .no-padding-r-sm {
        padding-right: 0;

        &.btn {
            padding-right: 0;
            ;
        }
    }

    .no-padding-v-sm {
        padding-top: 0;
        padding-bottom: 0;

        &.btn {
            padding-top: 0;
            padding-bottom: 0;
        }
    }

    .no-padding-h-sm {
        padding-left: 0;
        padding-right: 0;

        &.btn {
            padding-left: 0;
            padding-right: 0;
        }
    }

    .no-margin-sm {
        margin: 0;

        &.btn {
            margin: 0;
        }
    }

    .no-margin-top-sm {
        margin-top: 0;

        &.btn {
            margin-top: 0;
        }
    }

    .no-margin-bottom-sm {
        margin-bottom: 0;

        &.btn {
            margin-bottom: 0;
        }
    }

    .spacer-sm {
        height: var(--gutter-base);
    }

    .spacer-x2-sm {
        height: calc(var(--gutter-base) * 2);
    }

    .spacer-none-sm {
        height: 0;
    }
}

@media (min-width: 768px) {
    .align-left-md {
        text-align: left;
    }

    .align-right-md {
        text-align: right;
    }

    .align-center-md {
        text-align: center;
    }

    .no-padding-md {
        padding: 0;

        &.btn {
            padding: 0;
        }
    }

    .no-padding-t-md {
        padding-top: 0;

        &.btn {
            padding-top: 0;
        }
    }

    .no-padding-b-md {
        padding-bottom: 0;

        &.btn {
            padding-bottom: 0;
        }
    }

    .no-padding-l-md {
        padding-left: 0;

        &.btn {
            padding-left: 0;
            ;
        }
    }

    .no-padding-r-md {
        padding-right: 0;

        &.btn {
            padding-right: 0;
            ;
        }
    }

    .no-padding-v-md {
        padding-top: 0;
        padding-bottom: 0;

        &.btn {
            padding-top: 0;
            padding-bottom: 0;
        }
    }

    .no-padding-h-md {
        padding-left: 0;
        padding-right: 0;

        &.btn {
            padding-left: 0;
            padding-right: 0;
        }
    }

    .no-margin-md {
        margin: 0;

        &.btn {
            margin: 0;
        }
    }

    .no-margin-top-md {
        margin-top: 0;

        &.btn {
            margin-top: 0;
        }
    }

    .no-margin-bottom-md {
        margin-bottom: 0;

        &.btn {
            margin-bottom: 0;
        }
    }

    .spacer-md {
        height: var(--gutter-base);
    }

    .spacer-x2-md {
        height: calc(var(--gutter-base) * 2);
    }

    .spacer-none-md {
        height: 0;
    }
}

@media (min-width: 992px) {
    .align-left-lg {
        text-align: left;
    }

    .align-right-lg {
        text-align: right;
    }

    .align-center-lg {
        text-align: center;
    }

    .no-padding-l-lg {
        padding-left: 0;

        &.btn {
            padding-left: 0;
            ;
        }
    }

    .no-padding-r-lg {
        padding-right: 0;

        &.btn {
            padding-right: 0;
            ;
        }
    }

    .no-padding-v-lg {
        padding-top: 0;
        padding-bottom: 0;

        &.btn {
            padding-top: 0;
            padding-bottom: 0;
        }
    }

    .no-padding-h-lg {
        padding-left: 0;
        padding-right: 0;

        &.btn {
            padding-left: 0;
            padding-right: 0;
        }
    }

    .no-padding-lg {
        padding: 0;

        &.btn {
            padding: 0;
        }
    }

    .no-padding-t-lg {
        padding-top: 0;

        &.btn {
            padding-top: 0;
        }
    }

    .no-padding-b-lg {
        padding-bottom: 0;

        &.btn {
            padding-bottom: 0;
        }
    }

    .no-padding-l-lg {
        padding-left: 0;

        &.btn {
            padding-left: 0;
            ;
        }
    }

    .no-padding-r-lg {
        padding-right: 0;

        &.btn {
            padding-right: 0;
            ;
        }
    }

    .no-padding-v-lg {
        padding-top: 0;
        padding-bottom: 0;

        &.btn {
            padding-top: 0;
            padding-bottom: 0;
        }
    }

    .no-padding-h-lg {
        padding-left: 0;
        padding-right: 0;

        &.btn {
            padding-left: 0;
            padding-right: 0;
        }
    }

    .no-margin-lg {
        margin: 0;

        &.btn {
            margin: 0;
        }
    }

    .no-margin-top-lg {
        margin-top: 0;

        &.btn {
            margin-top: 0;
        }
    }

    .no-margin-bottom-lg {
        margin-bottom: 0;

        &.btn {
            margin-bottom: 0;
        }
    }

    .spacer-lg {
        height: var(--gutter-base);
    }

    .spacer-x2-lg {
        height: calc(var(--gutter-base) * 2);
    }

    .spacer-none-lg {
        height: 0;
    }
}

@media (min-width: 1200px) {
    .align-left-xl {
        text-align: left;
    }

    .align-right-xl {
        text-align: right;
    }

    .align-center-xl {
        text-align: center;
    }

    .no-padding-xl {
        padding: 0;

        &.btn {
            padding: 0;
        }
    }

    .no-padding-t-xl {
        padding-top: 0;

        &.btn {
            padding-top: 0;
        }
    }

    .no-padding-b-xl {
        padding-bottom: 0;

        &.btn {
            padding-bottom: 0;
        }
    }

    .no-padding-l-xl {
        padding-left: 0;

        &.btn {
            padding-left: 0;
            ;
        }
    }

    .no-padding-r-xl {
        padding-right: 0;

        &.btn {
            padding-right: 0;
            ;
        }
    }

    .no-padding-v-xl {
        padding-top: 0;
        padding-bottom: 0;

        &.btn {
            padding-top: 0;
            padding-bottom: 0;
        }
    }

    .no-padding-h-xl {
        padding-left: 0;
        padding-right: 0;

        &.btn {
            padding-left: 0;
            padding-right: 0;
        }
    }

    .no-margin-xl {
        margin: 0;

        &.btn {
            margin: 0;
        }
    }

    .no-margin-top-xl {
        margin-top: 0;

        &.btn {
            margin-top: 0;
        }
    }

    .no-margin-bottom-xl {
        margin-bottom: 0;

        &.btn {
            margin-bottom: 0;
        }
    }

    .spacer-xl {
        height: var(--gutter-base);
    }

    .spacer-x2-xl {
        height: calc(var(--gutter-base) * 2);
    }

    .spacer-none-xl {
        height: 0;
    }
}

@media (min-width: 1400px) {
    .align-left-xxl {
        text-align: left;
    }

    .align-right-xxl {
        text-align: right;
    }

    .align-center-xxl {
        text-align: center;
    }

    .no-padding-xxl {
        padding: 0;

        &.btn {
            padding: 0;
        }
    }

    .no-padding-t-xxl {
        padding-top: 0;

        &.btn {
            padding-top: 0;
        }
    }

    .no-padding-b-xxl {
        padding-bottom: 0;

        &.btn {
            padding-bottom: 0;
        }
    }

    .no-padding-l-xxl {
        padding-left: 0;

        &.btn {
            padding-left: 0;
            ;
        }
    }

    .no-padding-r-xxl {
        padding-right: 0;

        &.btn {
            padding-right: 0;
            ;
        }
    }

    .no-padding-v-xxl {
        padding-top: 0;
        padding-bottom: 0;

        &.btn {
            padding-top: 0;
            padding-bottom: 0;
        }
    }

    .no-padding-h-xxl {
        padding-left: 0;
        padding-right: 0;

        &.btn {
            padding-left: 0;
            padding-right: 0;
        }
    }

    .no-margin-xxl {
        margin: 0;

        &.btn {
            margin: 0;
        }
    }

    .no-margin-top-xxl {
        margin-top: 0;

        &.btn {
            margin-top: 0;
        }
    }

    .no-margin-bottom-xxl {
        margin-bottom: 0;

        &.btn {
            margin-bottom: 0;
        }
    }

    .spacer-xxl {
        height: var(--gutter-base);
    }

    .spacer-x2-xxl {
        height: calc(var(--gutter-base) * 2);
    }

    .spacer-none-xxl {
        height: 0;
    }
}

.section-padding {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
}

.section-padding-top {
    padding-top: var(--section-padding);
}

.section-padding-bottom {
    padding-bottom: var(--section-padding);
}

.section-padding-v {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
}

.section-padding-h {
    padding-left: var(--gutter-base);
    padding-right: var(--gutter-base);
}

.row-reverse {
    flex-direction: row-reverse;
}

.display-block {
    display: block;
}

.display-inline-block {
    display: inline-block;
}

.display-inline {
    display: inline;
}

.display-none {
    display: none;
}

.divider-col {
    &:after {
        display: block;
        content: '';
        height: 1px;
        width: 100%;
        border-bottom: 1px solid rgba(255, 255, 255, 0.075);
        margin: 20px 0;
    }

    @media(min-width: 768px) {
        &:after {
            position: absolute;
            height: 100%;
            width: 1px;
            border-bottom: none;
            border-left: 1px solid rgba(255, 255, 255, 0.075);
            left: calc(50% + 1px);
            margin: 0;
        }
    }
}

.pos-abs {
    position: absolute;
}

.pos-rel {
    position: relative;
}

.pos-fix {
    position: fixed;
}

.height-100 {
    height: 100%;
}

.height-auto {
    height: auto;
}

.height-unset {
    height: unset;
}

/* Offscreen class for skip-to-content link for screen reader */

.offscreen {
    position: absolute;
    bottom: calc(100% + 10px);
}

img {
    width: 100%;
    height: auto;
}

.main-form {
    label {
        display: inline-block;
        margin-top: 10px;
        font-size: var(--p-text-size);
    }

    input[type=text],
    textarea {
        width: 100%;
        padding: 15px;
        border: none;

        +label {
            margin: 0;
            font-size: 14px;
        }
    }

    .required {
        color: #cb2828;
    }
}

.margin-bottom-15 {
    margin-bottom: 15px;
}

/*!
 * Bootstrap Grid Only (grid and responsive utilities extracted from Bootstrap 4.1.3)
 * GitHub: https://github.com/dmhendricks/bootstrap-grid-css
 * Bootstrap License: MIT (https://github.com/twbs/bootstrap/blob/v4-dev/LICENSE)
 * Credits: Twitter, Inc. & The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
 */

@-ms-viewport {
  width: device-width;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -ms-overflow-style: scrollbar;
}

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.hidden-xs-up {
  display: none !important;
}

@media (max-width: 575.98px) {
  .hidden-xs-down {
    display: none !important;
  }
}

@media (min-width: 576px) {
  .hidden-sm-up {
    display: none !important;
  }
}

@media (max-width: 767.98px) {
  .hidden-sm-down {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .hidden-md-up {
    display: none !important;
  }
}

@media (max-width: 991.98px) {
  .hidden-md-down {
    display: none !important;
  }
}

@media (min-width: 992px) {
  .hidden-lg-up {
    display: none !important;
  }
}

@media (max-width: 1199.98px) {
  .hidden-lg-down {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hidden-xl-up {
    display: none !important;
  }
}

.hidden-xl-down {
  display: none !important;
}

.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

.container-fluid {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

.row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.no-gutters>.col,
.no-gutters>[class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col,
.col-auto,
.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,
.col-sm-auto,
.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,
.col-md-auto,
.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,
.col-lg-auto,
.col-xl-1,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  -webkit-flex-basis: 0;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 100%;
}

.col-auto {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 8.3333333333%;
  -ms-flex: 0 0 8.3333333333%;
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}

.col-2 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 16.6666666667%;
  -ms-flex: 0 0 16.6666666667%;
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-3 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 25%;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 33.3333333333%;
  -ms-flex: 0 0 33.3333333333%;
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.col-5 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 41.6666666667%;
  -ms-flex: 0 0 41.6666666667%;
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}

.col-6 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 50%;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 58.3333333333%;
  -ms-flex: 0 0 58.3333333333%;
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}

.col-8 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 66.6666666667%;
  -ms-flex: 0 0 66.6666666667%;
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}

.col-9 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 75%;
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 83.3333333333%;
  -ms-flex: 0 0 83.3333333333%;
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}

.col-11 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 91.6666666667%;
  -ms-flex: 0 0 91.6666666667%;
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}

.col-12 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
  -ms-flex-order: -1;
  order: -1;
}

.order-last {
  -webkit-box-ordinal-group: 14;
  -webkit-order: 13;
  -ms-flex-order: 13;
  order: 13;
}

.order-0 {
  -webkit-box-ordinal-group: 1;
  -webkit-order: 0;
  -ms-flex-order: 0;
  order: 0;
}

.order-1 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}

.order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
}

.order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
}

.order-4 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
  -ms-flex-order: 4;
  order: 4;
}

.order-5 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
  -ms-flex-order: 5;
  order: 5;
}

.order-6 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
  -ms-flex-order: 6;
  order: 6;
}

.order-7 {
  -webkit-box-ordinal-group: 8;
  -webkit-order: 7;
  -ms-flex-order: 7;
  order: 7;
}

.order-8 {
  -webkit-box-ordinal-group: 9;
  -webkit-order: 8;
  -ms-flex-order: 8;
  order: 8;
}

.order-9 {
  -webkit-box-ordinal-group: 10;
  -webkit-order: 9;
  -ms-flex-order: 9;
  order: 9;
}

.order-10 {
  -webkit-box-ordinal-group: 11;
  -webkit-order: 10;
  -ms-flex-order: 10;
  order: 10;
}

.order-11 {
  -webkit-box-ordinal-group: 12;
  -webkit-order: 11;
  -ms-flex-order: 11;
  order: 11;
}

.order-12 {
  -webkit-box-ordinal-group: 13;
  -webkit-order: 12;
  -ms-flex-order: 12;
  order: 12;
}

.offset-1 {
  margin-left: 8.3333333333%;
}

.offset-2 {
  margin-left: 16.6666666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.3333333333%;
}

.offset-5 {
  margin-left: 41.6666666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.3333333333%;
}

.offset-8 {
  margin-left: 66.6666666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.3333333333%;
}

.offset-11 {
  margin-left: 91.6666666667%;
}

@media (min-width: 576px) {
  .col-sm {
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }

  .col-sm-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-sm-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.3333333333%;
    -ms-flex: 0 0 8.3333333333%;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-sm-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.6666666667%;
    -ms-flex: 0 0 16.6666666667%;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-sm-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.3333333333%;
    -ms-flex: 0 0 33.3333333333%;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-sm-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.6666666667%;
    -ms-flex: 0 0 41.6666666667%;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-sm-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.3333333333%;
    -ms-flex: 0 0 58.3333333333%;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-sm-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.6666666667%;
    -ms-flex: 0 0 66.6666666667%;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-sm-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.3333333333%;
    -ms-flex: 0 0 83.3333333333%;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-sm-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.6666666667%;
    -ms-flex: 0 0 91.6666666667%;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-sm-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }

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

  .order-sm-last {
    -webkit-box-ordinal-group: 14;
    -webkit-order: 13;
    -ms-flex-order: 13;
    order: 13;
  }

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

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

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

  .order-sm-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
  }

  .order-sm-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
    -ms-flex-order: 4;
    order: 4;
  }

  .order-sm-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
    -ms-flex-order: 5;
    order: 5;
  }

  .order-sm-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
    -ms-flex-order: 6;
    order: 6;
  }

  .order-sm-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
    -ms-flex-order: 7;
    order: 7;
  }

  .order-sm-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
    -ms-flex-order: 8;
    order: 8;
  }

  .order-sm-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
    -ms-flex-order: 9;
    order: 9;
  }

  .order-sm-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
    -ms-flex-order: 10;
    order: 10;
  }

  .order-sm-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
    -ms-flex-order: 11;
    order: 11;
  }

  .order-sm-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
    -ms-flex-order: 12;
    order: 12;
  }

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

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

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

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

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

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

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

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

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

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

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

  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
}

@media (min-width: 768px) {
  .col-md {
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }

  .col-md-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-md-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.3333333333%;
    -ms-flex: 0 0 8.3333333333%;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-md-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.6666666667%;
    -ms-flex: 0 0 16.6666666667%;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-md-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-md-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.3333333333%;
    -ms-flex: 0 0 33.3333333333%;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-md-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.6666666667%;
    -ms-flex: 0 0 41.6666666667%;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-md-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-md-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.3333333333%;
    -ms-flex: 0 0 58.3333333333%;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-md-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.6666666667%;
    -ms-flex: 0 0 66.6666666667%;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-md-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-md-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.3333333333%;
    -ms-flex: 0 0 83.3333333333%;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-md-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.6666666667%;
    -ms-flex: 0 0 91.6666666667%;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-md-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }

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

  .order-md-last {
    -webkit-box-ordinal-group: 14;
    -webkit-order: 13;
    -ms-flex-order: 13;
    order: 13;
  }

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

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

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

  .order-md-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
  }

  .order-md-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
    -ms-flex-order: 4;
    order: 4;
  }

  .order-md-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
    -ms-flex-order: 5;
    order: 5;
  }

  .order-md-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
    -ms-flex-order: 6;
    order: 6;
  }

  .order-md-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
    -ms-flex-order: 7;
    order: 7;
  }

  .order-md-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
    -ms-flex-order: 8;
    order: 8;
  }

  .order-md-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
    -ms-flex-order: 9;
    order: 9;
  }

  .order-md-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
    -ms-flex-order: 10;
    order: 10;
  }

  .order-md-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
    -ms-flex-order: 11;
    order: 11;
  }

  .order-md-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
    -ms-flex-order: 12;
    order: 12;
  }

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

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

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

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

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

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

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

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

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

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

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

  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
}

@media (min-width: 992px) {
  .col-lg {
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }

  .col-lg-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-lg-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.3333333333%;
    -ms-flex: 0 0 8.3333333333%;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-lg-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.6666666667%;
    -ms-flex: 0 0 16.6666666667%;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-lg-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.3333333333%;
    -ms-flex: 0 0 33.3333333333%;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-lg-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.6666666667%;
    -ms-flex: 0 0 41.6666666667%;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-lg-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.3333333333%;
    -ms-flex: 0 0 58.3333333333%;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-lg-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.6666666667%;
    -ms-flex: 0 0 66.6666666667%;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-lg-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.3333333333%;
    -ms-flex: 0 0 83.3333333333%;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-lg-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.6666666667%;
    -ms-flex: 0 0 91.6666666667%;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-lg-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }

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

  .order-lg-last {
    -webkit-box-ordinal-group: 14;
    -webkit-order: 13;
    -ms-flex-order: 13;
    order: 13;
  }

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

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

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

  .order-lg-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
  }

  .order-lg-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
    -ms-flex-order: 4;
    order: 4;
  }

  .order-lg-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
    -ms-flex-order: 5;
    order: 5;
  }

  .order-lg-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
    -ms-flex-order: 6;
    order: 6;
  }

  .order-lg-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
    -ms-flex-order: 7;
    order: 7;
  }

  .order-lg-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
    -ms-flex-order: 8;
    order: 8;
  }

  .order-lg-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
    -ms-flex-order: 9;
    order: 9;
  }

  .order-lg-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
    -ms-flex-order: 10;
    order: 10;
  }

  .order-lg-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
    -ms-flex-order: 11;
    order: 11;
  }

  .order-lg-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
    -ms-flex-order: 12;
    order: 12;
  }

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

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

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

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

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

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

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

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

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

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

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

  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }

  .col-xl-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-xl-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.3333333333%;
    -ms-flex: 0 0 8.3333333333%;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-xl-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.6666666667%;
    -ms-flex: 0 0 16.6666666667%;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xl-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-xl-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.3333333333%;
    -ms-flex: 0 0 33.3333333333%;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-xl-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.6666666667%;
    -ms-flex: 0 0 41.6666666667%;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-xl-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-xl-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.3333333333%;
    -ms-flex: 0 0 58.3333333333%;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-xl-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.6666666667%;
    -ms-flex: 0 0 66.6666666667%;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-xl-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-xl-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.3333333333%;
    -ms-flex: 0 0 83.3333333333%;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-xl-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.6666666667%;
    -ms-flex: 0 0 91.6666666667%;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-xl-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }

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

  .order-xl-last {
    -webkit-box-ordinal-group: 14;
    -webkit-order: 13;
    -ms-flex-order: 13;
    order: 13;
  }

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

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

  .order-xl-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
  }

  .order-xl-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
  }

  .order-xl-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
    -ms-flex-order: 4;
    order: 4;
  }

  .order-xl-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
    -ms-flex-order: 5;
    order: 5;
  }

  .order-xl-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
    -ms-flex-order: 6;
    order: 6;
  }

  .order-xl-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
    -ms-flex-order: 7;
    order: 7;
  }

  .order-xl-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
    -ms-flex-order: 8;
    order: 8;
  }

  .order-xl-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
    -ms-flex-order: 9;
    order: 9;
  }

  .order-xl-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
    -ms-flex-order: 10;
    order: 10;
  }

  .order-xl-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
    -ms-flex-order: 11;
    order: 11;
  }

  .order-xl-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
    -ms-flex-order: 12;
    order: 12;
  }

  .offset-xl-0 {
    margin-left: 0;
  }

  .offset-xl-1 {
    margin-left: 8.3333333333%;
  }

  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }

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

  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }

  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }

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

  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }

  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }

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

  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }

  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

/* Contains any bootstrap/grid additions and changes */

.container-sm {
    width: 100%;
    height: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .container-sm {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container-sm {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container-sm {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container-sm {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
    .container-sm {
        max-width: 1320px;
    }
}

.container-md {
    width: 100%;
    height: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 768px) {
    .container-md {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container-md {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container-md {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
    .container-md {
        max-width: 1320px;
    }
}

.container-lg {
    width: 100%;
    height: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 992px) {
    .container-lg {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container-lg {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
    .container-lg {
        max-width: 1320px;
    }
}

.container-xl {
    width: 100%;
    height: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 1200px) {
    .container-xl {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
    .container-xl {
        max-width: 1320px;
    }
}

.container-xxl {
    width: 100%;
    height: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 1400px) {
    .container-xxl {
        max-width: 1320px;
    }
}

/* Xxl screen size  */

@media (min-width: 1400px) {
    .hidden-xxl-up {
        display: none !important;
    }

    .container {
        max-width: 1320px;
    }

    .col-xxl {
        -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%
    }

    .col-xxl-auto {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 100%
    }

    .col-xxl-1 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 8.3333333333%;
        -ms-flex: 0 0 8.3333333333%;
        flex: 0 0 8.3333333333%;
        max-width: 8.3333333333%
    }

    .col-xxl-2 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 16.6666666667%;
        -ms-flex: 0 0 16.6666666667%;
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%
    }

    .col-xxl-3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-xxl-4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 33.3333333333%;
        -ms-flex: 0 0 33.3333333333%;
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%
    }

    .col-xxl-5 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 41.6666666667%;
        -ms-flex: 0 0 41.6666666667%;
        flex: 0 0 41.6666666667%;
        max-width: 41.6666666667%
    }

    .col-xxl-6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-xxl-7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 58.3333333333%;
        -ms-flex: 0 0 58.3333333333%;
        flex: 0 0 58.3333333333%;
        max-width: 58.3333333333%
    }

    .col-xxl-8 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 66.6666666667%;
        -ms-flex: 0 0 66.6666666667%;
        flex: 0 0 66.6666666667%;
        max-width: 66.6666666667%
    }

    .col-xxl-9 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 75%;
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-xxl-10 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 83.3333333333%;
        -ms-flex: 0 0 83.3333333333%;
        flex: 0 0 83.3333333333%;
        max-width: 83.3333333333%
    }

    .col-xxl-11 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 91.6666666667%;
        -ms-flex: 0 0 91.6666666667%;
        flex: 0 0 91.6666666667%;
        max-width: 91.6666666667%
    }

    .col-xxl-12 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }

    .order-xxl-first {
        -webkit-box-ordinal-group: 0;
        -webkit-order: -1;
        -ms-flex-order: -1;
        order: -1
    }

    .order-xxl-last {
        -webkit-box-ordinal-group: 14;
        -webkit-order: 13;
        -ms-flex-order: 13;
        order: 13
    }

    .order-xxl-0 {
        -webkit-box-ordinal-group: 1;
        -webkit-order: 0;
        -ms-flex-order: 0;
        order: 0
    }

    .order-xxl-1 {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1
    }

    .order-xxl-2 {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2
    }

    .order-xxl-3 {
        -webkit-box-ordinal-group: 4;
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3
    }

    .order-xxl-4 {
        -webkit-box-ordinal-group: 5;
        -webkit-order: 4;
        -ms-flex-order: 4;
        order: 4
    }

    .order-xxl-5 {
        -webkit-box-ordinal-group: 6;
        -webkit-order: 5;
        -ms-flex-order: 5;
        order: 5
    }

    .order-xxl-6 {
        -webkit-box-ordinal-group: 7;
        -webkit-order: 6;
        -ms-flex-order: 6;
        order: 6
    }

    .order-xxl-7 {
        -webkit-box-ordinal-group: 8;
        -webkit-order: 7;
        -ms-flex-order: 7;
        order: 7
    }

    .order-xxl-8 {
        -webkit-box-ordinal-group: 9;
        -webkit-order: 8;
        -ms-flex-order: 8;
        order: 8
    }

    .order-xxl-9 {
        -webkit-box-ordinal-group: 10;
        -webkit-order: 9;
        -ms-flex-order: 9;
        order: 9
    }

    .order-xxl-10 {
        -webkit-box-ordinal-group: 11;
        -webkit-order: 10;
        -ms-flex-order: 10;
        order: 10
    }

    .order-xxl-11 {
        -webkit-box-ordinal-group: 12;
        -webkit-order: 11;
        -ms-flex-order: 11;
        order: 11
    }

    .order-xxl-12 {
        -webkit-box-ordinal-group: 13;
        -webkit-order: 12;
        -ms-flex-order: 12;
        order: 12
    }

    .offset-xxl-0 {
        margin-left: 0
    }

    .offset-xxl-1 {
        margin-left: 8.3333333333%
    }

    .offset-xxl-2 {
        margin-left: 16.6666666667%
    }

    .offset-xxl-3 {
        margin-left: 25%
    }

    .offset-xxl-4 {
        margin-left: 33.3333333333%
    }

    .offset-xxl-5 {
        margin-left: 41.6666666667%
    }

    .offset-xxl-6 {
        margin-left: 50%
    }

    .offset-xxl-7 {
        margin-left: 58.3333333333%
    }

    .offset-xxl-8 {
        margin-left: 66.6666666667%
    }

    .offset-xxl-9 {
        margin-left: 75%
    }

    .offset-xxl-10 {
        margin-left: 83.3333333333%
    }

    .offset-xxl-11 {
        margin-left: 91.6666666667%
    }
}

/* Components */

.header {
    .nav-container {
        position: relative;
    }

    &.main {
        position: fixed;
        z-index: 3;
        top: 0;
        left: 0;
        width: 100%;
        background-color: var(--header-bg-color);
        height: var(--header-height-main);

        .container,
        .row {
            height: 100%;
        }

        a.logo {
            position: relative;
            display: inline-block;
            width: calc(100% - 55px);
            height: 100%;
            max-width: 420px;
            color: var(--header-logo-color);

            svg {
                position: absolute;
                top: 50%;
                transform: translateY(-50%);
            }
        }

        nav.header-links {
            text-align: right;
            height: 100%;
            margin-right: -8px;

            a {
                display: inline-block;
                height: 100%;
                padding: 17px 10px;
                line-height: 1.3;
                font-family: 'futura';
                font-weight: 600;
                font-size: 17px;
                text-transform: uppercase;
                text-decoration: none;
                color: var(--nav-links-color);

                &:hover,
                &:focus {
                    background-color: var(--nav-links-hover-bg);
                    color: var(--nav-links-hover-color);
                }
            }

            @media (max-width: 991.8px) {
                position: fixed;
                top: var(--header-height-main);
                left: 100%;
                width: 260px;
                height: calc(100% - var(--header-height-main));
                z-index: 2;
                background: var(--main-white);
                transition: all 150ms ease-in-out;

                &.open {
                    left: calc(100% - 260px);
                }

                a {
                    text-align: left;
                    display: block;
                    height: auto;
                    width: 100%;
                    padding: 15px 20px;
                    color: var(--nav-links-hover-color);

                    &:hover,
                    &:focus {
                        background-color: var(--main-bg-color);
                        border-left: 4px solid var(--header-bg-color);
                        padding-left: 16px;
                    }
                }

            }

            @media (max-width: 575.8px) {
                &.open {
                    left: 0;
                    width: 100%;
                }
            }

            @media (min-width: 992px) {
                position: absolute;
                top: 50%;
                right: 8px;
                transform: translateY(-50%);

                a {
                    padding-right: 10px;
                }
            }
        }
    }

    &.secondary {
        position: relative;
        margin-top: var(--header-height-main);
        height: var(--header-height-secondary);
        width: 100%;
        color: var(--header-secondary-color-1);
        background-color: rgb(234, 234, 235);
        padding-top: 3px;
        margin-top: 56px;

        .row *:nth-child(2) {
            color: var(--header-secondary-color-2);
        }
    }
}

footer {
    background-color: var(--footer-bg-color);
    padding: var(--section-padding) 15px;

    p, a {
        font-size: 18px;
        color: var(--footer-text-color);
    }

    svg {
        float: left;
        color: var(--footer-logo-color);
        width: 30%;

        @media (min-width: 768px) {
            display: block;
            width: 150px;
        }
    }

    svg:nth-child(2) {
        float: left;
        width: calc(70% - 20px);
        margin-left: 20px;

        @media (min-width: 768px) {
            width: calc(100% + 30px);
            margin-top: 20px;
            margin-left: 0;

        }

    }

    .footer-links {
        position: static;
        left: 0;
        transform: none;
        text-wrap: nowrap;


        /* @media(min-width: 768px) {
            position: absolute;
            width: fit-content;
            left: 50%;
            transform: translateX(-50%);
        } */

        a {
            color: var(--footer-text-color);
            display: block;
            margin-bottom: 15px;

            &:not(:hover) {
                text-decoration: none;
            }
        }
    }
}

.btn {
    --btn-padding-v: 12px;
    --btn-padding-h: calc(var(--btn-padding-v) * 2);
    
    position: relative;
    display: inline-block;
    background-color: var(--sec-bg-color);
    border: none;
    padding: var(--btn-padding-v) var(--btn-padding-h);
    color: var(--main-black);
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;

    &.btn-primary {
        color: var(--main-btn-text-color);
        background-color: var(--main-btn-bg-color);
    }

    &.btn-action {
        padding-right: calc(var(--btn-padding-v) * 4);

        svg {
            position: absolute;
            top: 50%;
            right: calc(var(--btn-padding-v) * 2);
            transform: translateY(-50%);
            width: 10px;
            height: 20px;
            stroke-width: 5px;
            color: var(--main-btn-icon-color);
            stroke: var(--main-btn-icon-color);
        }
    }

    &.btn-cta {
        padding-left: calc(var(--btn-padding-v) * 5);
        font-size: 22px;

        svg {
            position: absolute;
            width: 30px;
            height: auto;
            top: 50%;
            left: 18px;
            transform: translateY(-50%);
            color: var(--main-btn-icon-color);
        }
    }

    &.btn-image {
        background: none;
        padding: 0;
    }
}

.menu-button {
    cursor: pointer;
    position: absolute;
    top: 50%;
    right: 15px;
    width: 40px;
    height: 40px;
    transform: translateY(-50%);
    border: none;
    background: none;
    padding: 0 1px;
    cursor: pointer;

    .menu-line {
        display: block;
        height: 2px;
        background: var(--header-menu-button-color);
        width: 100%;
        margin: 7px 0;
        opacity: 1;
        transition: all 150ms ease;
    }

    &.close {
        top: 30px;
        z-index: 2;
        margin-top: -3px;

        .menu-line {
            margin: -1px 0;

            &:first-child {
                opacity: 0;
            }

            &:nth-child(2) {
                transform: rotate(45deg);
            }

            &:nth-child(3) {
                transform: rotate(-45deg);
            }
        }
    }
}

.carousel-section {
    background-color: var(--main-bg-color);

    .carousel {
        position: relative;
        margin: auto;
        overflow: hidden;
        padding: 0;
        height: 320px;

        @media (min-width: 576px) {
            height: 430px;
        }
    }

    h1 {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 2;
        color: var(--main-white);
        text-shadow: 2px 2px 13px var(--main-black);
        width: auto;
    }

    .slides {
        position: relative;
        height: 100%;
        width: 100%;
    }

    .slide {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
        display: flex;
        align-items: center;
        justify-content: center;

        &.is-active {
            opacity: 1;
            visibility: visible;
            z-index: 1;
        }

        picture, img {
            height: 100%;
            width: auto;

            @media (min-width: 768px) {
                width: 100%;
                height: auto;
                min-height: 100%;
                min-width: 100%;
                transform: none;
            }
        }
    }


    button {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 60px;
        height: 100%;
        background-color: transparent;
        border: none;
        cursor: pointer;
        color: white;
        z-index: 2;

        &.prev {
            left: 0;
        }

        &.next {
            right: 0;
        }

        svg {
            fill: var(--main-white);
            width: 16px;
            height: auto;
        }

        &:hover,
        &:focus {

            &.prev {
                background: linear-gradient(90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
            }
    
            &.next {
                background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
            }

            svg {
                fill: var(--main-black);
            }
        }

        &:active {
            svg {
                fill: var(--main-accent);
            }
        }
    }

    .dots-container {
        position: absolute;
        bottom: 10px;
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        z-index: 2;
    }

    .dot {
        position: relative;
        display: inline-block;
        cursor: pointer;
        height: 12px;
        width: 12px;
        min-width: 12px;
        margin: 0 3px;
        padding: 0;
        background-color: var(--main-white);
        border: 2px solid var(--main-black);
        border-radius: 50%;
        font-size: 0;
        line-height: 0;
        vertical-align: top;
        box-sizing: border-box;

        &:focus,
        &:hover {
            outline: 2px solid var(--main-accent);
        }

        &.active {
            background-color: var(--main-black);
        }
    }
}

.gallery-list {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.gallery-item {
    display: flex;
    --margin-bottom-fix: -6px;
    flex-basis: calc(33.333% - 6.66px);
    /* margin-bottom: var(--margin-bottom-fix); */
    position: relative;
    overflow: hidden;
    background-color: var(--main-black);
    aspect-ratio: 1/1;

    @media (max-width: 991.8px) {
        flex-basis: calc(50% - 5px);
    }

    @media (max-width: 575.8px) {
        flex-basis: 100%;
    }

    a {
        display: inline-block;
        width: 100%;
        height: 100%;
    }

    button {
        display: inline-block;
        width: 100%;
        height: 100%;
        background: none;
        border: none;
        padding: 0;
        margin: 0;
        cursor: pointer;
    }

    .gallery-item-thumbnail {
        aspect-ratio: 1 / 1;
        object-fit: cover;
    }

    .header-container {
        position: absolute;
        z-index: 1;
        left: -100%;
        bottom: 0;
        width: 100%;
        height: 60px;
        transition: all 200ms ease;
    }

    .heading-bg {
        --degreesSkewed: 20deg;
        position: relative;
        display: block;
        height: 60px;
        left: -25px;
        background: var(--main-black);
        padding: var(--gutter-base);
        text-align: left;
        transform: skewX(var(--degreesSkewed));
    }

    .gallery-item-thumbnail-title {
        position: absolute;
        color: var(--main-white);
        margin-left: var(--gutter-base);
        width: auto;
        z-index: 1;
        left: 10px;
        text-align: left;
        font-weight: 600;
        top: 50%;
        transform: translateY(-50%);
    }

    .gallery-item-image-title {
        position: absolute;
        top: 0;
        background: rgba(0, 0, 0, 0.6);
        padding: 8px 10px 10px 10px;
        color: white;
        font-weight: 500;
        letter-spacing: 3px;
    }

    &:hover {
        .gallery-item-thumbnail {
            opacity: 0.9;
        }

        .header-container {
            left: 0;
        }
    }

    &.active {
        .header-container {
            left: -100% !important;
        }
    }
}

.gallery-modal {
    &:not(.open) {
        display: none;
    }

    &.gallery-modal.open {
        position: fixed;
        z-index: 2;
        top: 0;
        left: 0;
        width: 100%;
        margin-top: 56px;
        height: calc(100% - 56px);
        background-color: var(--main-black-transparent);

        .gallery-images {
            position: relative;
            width: 100%;
            height: 100%;
        }

        .gallery-image {
            position: absolute;
            height: 100%;
            transition: all 250ms ease;
            width: calc(100% - 80px);
            
            img {
                position: absolute;
                width: calc(100% - 30px);
                height: auto;
                left: 50%;
                top: 50%;
                transform: translate(-50%, -50%);
                margin-left: 25px;
                max-width: calc(100% - 20px);
                height: calc(100% - 80px);
                width: auto;
                object-fit: contain;
            }

            &:not(.active) {
                opacity: 0;
            }

            &.active {
                opacity: 1;
            }
        }

    }

    .menu-line {
        background: var(--main-white);
    }
}

button.gallery-btn {
    position: absolute;
    z-index: 1;
    top: 50%;
    transform: translateY(-50%);
    width: 60px;
    height: 100%;
    background-color: transparent;
    border: none;
    cursor: pointer;
    color: white;

    &.prev {
        left: 0;
    }

    &.next {
        right: 0;
    }

    svg {
        fill: var(--main-white);
        width: 16px;
        height: auto;
    }

    &:hover,
    &:focus {
        color: var(--main-accent);

        &.prev {
            background: linear-gradient(90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
        }

        &.next {
            background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
        }

        svg {
            fill: var(--main-black);
        }
    }

    &:active {
        svg {
            fill: var(--main-accent);
        }
    }
}

section.accent-stripe {
    &, &:nth-child(odd), &:nth-child(even) {
        background-color: var(--accent-stripe-bg);
        color: var(--accent-stripe-text);
    }
}

ul.image-list {
    width: calc(100% + 28px);
    list-style: none;
    padding: 0;
    margin: 10px 0 0 0;

    li {
        display: inline-block;
        vertical-align: top;
        height: 54px;
        margin: 0 14px;

        &.mohawk {
            position: relative;
            width: 113px;
        }

        &.tarkett {
            width: 116px;
            padding-top: 13px;
        }

        &.forbo {
            width: 79px;
            padding-top: 9px;
        }

        &.armstrong {
            width: 229px;
            padding-top: 16px;
        }

        &.nora {
            width: 84px;
            padding-top: 13px;
        }

        &.mannington {
            width: 179px;
            padding-top: 13px;
        }

        &.daltile {
            width: 111px;
            padding-top: 11px;
        }
    }
}

ul.image-list {
    li {
        &.mohawk {
            position: relative;
            width: 113px;
        }

        &.tarkett {
            width: 116px;
            padding-top: 13px;
        }

        &.forbo {
            width: 79px;
            padding-top: 9px;
        }

        &.armstrong {
            width: 229px;
            padding-top: 16px;
        }

        &.nora {
            width: 84px;
            padding-top: 13px;
        }

        &.mannington {
            width: 179px;
            padding-top: 13px;
        }

        &.daltile {
            width: 111px;
            padding-top: 11px;
        }
    }
}

.info-box {
    img {
        aspect-ratio: 4/3;
        object-fit: cover;
        margin-bottom: 15px;
    }
}

.info-section {
    img.main-image {
        aspect-ratio: 4/3;
        object-fit: cover;
        margin-bottom: 15px;
    }
}

ul.link-list {
    width: calc(100% + 28px);
    list-style: none;
    padding: 0;
    margin: 10px 0 0 -14px;

    li {
        display: inline-block;
        vertical-align: middle;
        margin: 0 14px;

        a {
            display: inline-block;

        }
    }
}

ul.link-list.client-list {
    /* Mobile and tablet margin spacing */
    margin-top: 20px;
    margin-bottom: 20px;
}

ul.link-list.client-list li {
    width: 130px;
    min-height: 156px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: top;
}

ul.link-list.client-list li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.map-column {
    iframe {
        width: 100%;
        height: 250px;
        border: 1px solid #cacaca;
    }
}

/* Special Overrides */

/* This CSS is to house all special cases */

section.striking {
    overflow: hidden;

    .image-box {
        position: relative;
        height: 100%;
        background-image: url(../media/images/sriking-floor.webp);
        background-size: cover;
        left: 2000%;
        transition: all 400ms ease;

        &:after {
            content: '';
            position: absolute;
            z-index: -1;
            top: 0;
            left: -24px;
            width: 2000%;
            height: 0;
            border-left: 130px solid transparent;
            border-right: 0 solid transparent;
            border-top: 494px solid var(--main-bg-color);
        }

        &.scrolled {
            left: 0;
        }

        @media (max-width: 767.8px) {
            background: none !important;

            &:after {
                left: -46px;
                border-top: none;
                border-bottom: 494px solid var(--main-bg-color);
            }
        }
    }

    .angle-column {
        @media (max-width: 767px) {
            position: absolute;
            transform: scaleY(-1);
            bottom: 0;
            left: calc(100% - 120px);
        }
    }
}

.about-page-moore-logo {
    width: 350px;
    margin-left: -10px;
    color: var(--new-dark-gray);
}
