/**
 * CONTENTS
 *
 * BASE
 * Box-sizing............Better default `box-sizing`.
 * Media.................WP specific img aligns and iframe styling.
 * Typography............@fontfaces, base text and vertical rhythem setup.
 *
 * COMPONENTS
 * Wrappers..............Wrapping and constraining elements.
 * Grid System...........Bootstrap based grid.
 * Clearfix..............Properly clear floats.
 *
 * Objects
 * Icons.................Icon Elements.
 * Buttons...............Button elements.
 * Tables................Table Styles.
 * Forms.................Form Elements.
 * Pagination............Pagination.
 *
 * UI
 * Page head.............The main page header.
 * Navigation............Navigation elements + Ubermenu.
 * Masthead..............Page title/image/slideshow header block.
 * Sidebar...............Sidebar elements.
 * Page footer...........The main page footer.
 *
 */




/*------------------------------------*\
    BASE
\*------------------------------------*/

/**
 * Box-sizing
 */

* {
    box-sizing: border-box;
}



/**
 * Media
 *
 * These selectors are hard cast because they are only used
 * by wordpress wyswyg when adding images to content
 */

 .wp-caption.alignright,
 .wp-caption.alignleft,
 .wp-caption.aligncenter {
    display: table;
 }

 .wp-caption.alignright,
 .wp-caption.alignleft,
 .wp-caption.alignnone,
 .wp-caption.aligncenter {
     margin: 0;
     width: auto !important; /* to overwrite inline widths */
 }
 
 img.alignright,
 .wp-caption.alignright,
 img.alignleft,
 .wp-caption.alignleft {
     height: auto;
     max-width: 50%;
 }
 
 img.alignnone,
 .wp-caption.alignnone img,
 img.aligncenter,
 .wp-caption.aligncenter img {
     height: auto;
     max-width: 100%;
 }
 
 img.alignnone,
 .wp-caption.alignnone,
 img.aligncenter,
 .wp-caption.aligncenter { margin: 0 0 22px 0; }
 
 img.alignright,
 .wp-caption.alignright {
     float: right;
     margin: 0 0 22px 30px;
 }
 
 img.alignleft,
 .wp-caption.alignleft {
     float: left;
     margin: 0 30px 22px 0;
 }
 
 img.aligncenter,
 .wp-caption.aligncenter img {
     display: block;
     margin-left: auto;
     margin-right: auto;
 }

 .wp-caption.aligncenter {
    margin-left: auto;
    margin-right: auto;
 }

 .wp-caption-text {
    caption-side: bottom;
    display: table-caption;
 }

iframe {
    max-width: 100%;
}

/* Fade-in for lazyloaded images */
.will-lazyload {
    opacity: 0;
    transition: opacity .25s linear;
}

.will-lazyload.lazyloaded {
    opacity: 1;
}



/**
  * Global & Variables
  */

/* Variable font below-- Save for Phase II */
/* @font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter-VariableFont_slnt,wght.ttf') format("truetype-variations");
    font-weight: 400 900;
} */

body {
    font-family: 'Inter', Tahoma, sans-serif;
    font-display: swap;
    /* Important for CWV - Implement into build template */
    font-size: 16px;
    --blue: #207de9;
    /* Primary Blue (Vivid blue) - Buttons, bgs */
    --blue-hover: #0c57ad;
    --green: #42D58C;
    --green-hover: #26B16D;
    --bg-blue: #F2F6FB;
    /* Light alice blue - section background */
    --webfx-blue: #4C74B9;
    /* Cobalt blue - WebFX logo, footer bg, subheadings, etc*/
    --border-color: #E3E3E3;
    --border: 1px solid var(--border-color);
    --body-text-color: #869298;
    --heading-text-color: #374046;
    --section-margins: 60px;
    --drop-shadow: 0px 1px 30px rgb(0 0 0 / 9%);
    --border-radius: 4px;
}

html,
body {
    min-height: 100vh;
    overflow-anchor: none;
    scroll-behavior: smooth;
}

@media (min-width: 1025px) {
    body {
        --section-margins: 136px;
    }
}

/* Mobile/Tablet Only */
@media (max-width: 1024px) {
    body {
        margin-top: 75px;
    }

    body.admin-bar .mobile-menu {
        top: 33px;
    }

    body.menu-is-active {
        position: fixed;
        height: 100vh;
        overflow-y: hidden;
    }
}

@media (max-width: 1024px) {
    body.admin-bar .mobile-menu {
        top: 46px;
    }
}

/**
  * Typography
  */

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5 {
    font-family: 'Inter', Tahoma, sans-serif;
    font-weight: 900;
    color: #374046;
    line-height: normal;
    letter-spacing: 0.1px;
}

h1,
.h1 {
    font-size: 26px;
    margin-top: 20px;
    margin-bottom: 15px;
}

h2,
.h2 {
    font-size: 26px;
    margin-top: 18px;
    margin-bottom: 12px;
}

h3,
.h3 {
    font-size: 24px;
    margin-top: 16px;
    margin-bottom: 10px;
}

h4,
.h4 {
    font-size: 20px;
    margin-top: 16px;
    margin-bottom: 10px;
}

h5,
.h5 {
    font-size: 18px;
    margin-top: 16px;
    margin-bottom: 10px;
}

@media (min-width: 768px) {

    h1,
    .h1 {
        font-size: 38px;
        margin-top: 32px;
        margin-bottom: 26px;
    }

    h2,
    .h2 {
        font-size: 38px;
        margin-top: 32px;
        margin-bottom: 26px;
    }

    h3,
    .h3 {
        font-size: 30px;
        margin-top: 32px;
        margin-bottom: 26px;
    }

    h4,
    .h4 {
        font-size: 24px;
        font-size: 20px;
        margin-top: 26px;
        margin-bottom: 26px;
    }

    h5,
    .h5 {
        font-size: 20px;
        font-size: 18px;
        margin-top: 26px;
        margin-bottom: 26px;
    }
}

@media (min-width: 1025px) {

    h1,
    .h1 {
        font-size: 50px;
        line-height: 1.16em;
    }

    h2,
    .h2 {
        font-size: 38px;
        line-height: 1.26em;
    }

    h3,
    .h3 {
        font-size: 30px;
        line-height: 1.25em;
    }

    h4,
    .h4 {
        font-size: 26px;
        line-height: 1.15em;
    }

    h5,
    .h5 {
        font-size: 20px;
        line-height: 1.3em
    }
}

.blog h1 {
    font-size: 29px;
}

@media (min-width: 768px) {
    .blog h1 {
        font-size: 42px;
    }
}

@media (min-width: 1025px) {
    .blog h1 {
        font-size: 50px;
    }
}

.subtitle {
    font-size: 16px;
    font-family: 'Inter', sans-serif;
    font-weight: 900;
    color: var(--webfx-blue);
}

p,
ul,
ol {
    color: var(--body-text-color);
    font-weight: 300;
    line-height: 1.375em;
    margin-top: 18px;
    margin-bottom: 18px;
}

@media (min-width: 768px) {

    p,
    ul,
    ol {
        margin-top: 26px;
        margin-bottom: 26px;
    }
}

ul,
ol {
    padding-left: 25px;
}

strong {
    color: #4d5a63;
}

.page-content ul,
.page-content ol {
    /* fix for bulleted lists not wrapping around images correctly in Wordpress */
    width: auto;
    overflow: hidden;
}

ul li {
    /* set up bullets as a :before or icon element, not as a background image */
    color: var(--body-text-color);
    margin-bottom: 14px;
}

hr {
    border-color: #E3E3E3;
}

a {
    word-break: break-word;
    /* force link text to overflow when too long for container */
    transition: all .3s ease;
    color: #4C74B9;
    text-decoration: underline;
    -webkit-text-decoration-color: #D2DCEE;
    text-decoration-color: #D2DCEE;
}

a:hover {
    -webkit-text-decoration-color: #829dce;
    text-decoration-color: #829dce;
}

blockquote:not(.paragraph-callout) {
    border: 1px solid var(--border-color);
    border-radius: 4px;
    margin-right: 0;
    margin-left: 0;
    padding: 20px;
    font-weight: 900;
    color: var(--webfx-blue);
    text-align: center;
    margin-top: 18px;
    margin-bottom: 18px;
}

blockquote:not(.paragraph-callout) p {
    font-weight: 900;
    color: var(--webfx-blue);
    text-align: center;
}

.paragraph-callout {
    background: var(--bg-blue);
    padding: 20px;
    border-radius: 4px;
    text-align: center;
    margin: 0;
    margin-top: 18px;
    margin-bottom: 18px;
}

@media (min-width: 768px) {
    blockquote:not(.paragraph-callout) {
        padding-left: 80px;
        padding-right: 80px;
        padding-top: 20px;
        padding-bottom: 20px;
        margin-top: 26px;
        margin-bottom: 26px;
    }

    .paragraph-callout {
        padding: 30px 50px;
        margin-top: 26px;
        margin-bottom: 26px;
    }
}

@media (min-width: 1025px) {}


/**
  * Background Colors
  */

.white-bg {
    background-color: #fff;
}

.blue-bg {
    background-color: var(--bg-blue);
}


/*------------------------------------*\
     COMPONENTS
 \*------------------------------------*/


/**
  * Wrappers
  */

.container,
.container-fluid {
    margin-right: auto;
    margin-left: auto;
    padding-left: 22px;
    padding-right: 22px;
}

@media (min-width: 768px) {

    .container,
    .container-fluid {
        margin-right: auto;
        margin-left: auto;
        padding-left: 65px;
        padding-right: 65px;
    }
}

@media (min-width: 1025px) {

    .container,
    .container-fluid {
        margin-right: auto;
        margin-left: auto;
        padding-left: 22px;
        padding-right: 22px;
    }
}

.container {
    max-width: 1366px;
    width: 100%;
}

.section-margins {
    margin-top: var(--section-margins);
    margin-bottom: var(--section-margins);
}

/* Used for sections with colored backgrounds */
.section-padding {
    padding-top: var(--section-margins);
    padding-bottom: var(--section-margins);
}

/**
  * Grid System
  *
  * Bootstrap v3.3.1 (http://getbootstrap.com)
  * Copyright 2011-2014 Twitter, Inc.
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
  * --------------------------------------------------------------------------
  * Base setup 20px gutters
  *
  * Phones         - xxs - <  600px    ** Default **
  * Small Tablets  - xs - >=  600px
  * Tablets        - sm - >= 768px
  * Desktop        - md - >= 1025px
  * Large Desktop  - lg - >= 1200px
  * --------------------------------------------------------------------------
  * Learn more here: http://getbootstrap.com/css/#grid
  * -------------------------------------------------------------------------- */

.row {
    margin-left: -16px;
    margin-right: -16px;
}

.flex-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

@media (min-width: 1025px) {
    .flex-row {
        flex-wrap: nowrap;
    }

}


[class*="col-"] {
    position: relative;
    min-height: 1px;
    padding-left: 16px;
    padding-right: 16px;
}

/* Extra Extra small devices (devices, less than 600px) */
[class*="col-xxs-"] {
    float: left;
}

.col-xxs-12 {
    width: 100%;
}

.col-xxs-11 {
    width: 91.66666667%;
}

.col-xxs-10 {
    width: 83.33333333%;
}

.col-xxs-9 {
    width: 75%;
}

.col-xxs-8 {
    width: 66.66666667%;
}

.col-xxs-7 {
    width: 58.33333333%;
}

.col-xxs-6 {
    width: 50%;
}

.col-xxs-5 {
    width: 41.66666667%;
}

.col-xxs-4 {
    width: 33.33333333%;
}

.col-xxs-3 {
    width: 25%;
}

.col-xxs-2 {
    width: 16.66666667%;
}

.col-xxs-1 {
    width: 8.33333333%;
}

.col-xxs-pull-12 {
    right: 100%;
}

.col-xxs-pull-11 {
    right: 91.66666667%;
}

.col-xxs-pull-10 {
    right: 83.33333333%;
}

.col-xxs-pull-9 {
    right: 75%;
}

.col-xxs-pull-8 {
    right: 66.66666667%;
}

.col-xxs-pull-7 {
    right: 58.33333333%;
}

.col-xxs-pull-6 {
    right: 50%;
}

.col-xxs-pull-5 {
    right: 41.66666667%;
}

.col-xxs-pull-4 {
    right: 33.33333333%;
}

.col-xxs-pull-3 {
    right: 25%;
}

.col-xxs-pull-2 {
    right: 16.66666667%;
}

.col-xxs-pull-1 {
    right: 8.33333333%;
}

.col-xxs-pull-0 {
    right: auto;
}

.col-xxs-push-12 {
    left: 100%;
}

.col-xxs-push-11 {
    left: 91.66666667%;
}

.col-xxs-push-10 {
    left: 83.33333333%;
}

.col-xxs-push-9 {
    left: 75%;
}

.col-xxs-push-8 {
    left: 66.66666667%;
}

.col-xxs-push-7 {
    left: 58.33333333%;
}

.col-xxs-push-6 {
    left: 50%;
}

.col-xxs-push-5 {
    left: 41.66666667%;
}

.col-xxs-push-4 {
    left: 33.33333333%;
}

.col-xxs-push-3 {
    left: 25%;
}

.col-xxs-push-2 {
    left: 16.66666667%;
}

.col-xxs-push-1 {
    left: 8.33333333%;
}

.col-xxs-push-0 {
    left: auto;
}

.col-xxs-offset-12 {
    margin-left: 100%;
}

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

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

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

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

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

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

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

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

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

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

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

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

/* Extra small devices (phones, 600px and up) */
@media (min-width: 600px) {
    [class*="col-xs-"] {
        float: left;
    }

    .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-pull-12 {
        right: 100%;
    }

    .col-xs-pull-11 {
        right: 91.66666667%;
    }

    .col-xs-pull-10 {
        right: 83.33333333%;
    }

    .col-xs-pull-9 {
        right: 75%;
    }

    .col-xs-pull-8 {
        right: 66.66666667%;
    }

    .col-xs-pull-7 {
        right: 58.33333333%;
    }

    .col-xs-pull-6 {
        right: 50%;
    }

    .col-xs-pull-5 {
        right: 41.66666667%;
    }

    .col-xs-pull-4 {
        right: 33.33333333%;
    }

    .col-xs-pull-3 {
        right: 25%;
    }

    .col-xs-pull-2 {
        right: 16.66666667%;
    }

    .col-xs-pull-1 {
        right: 8.33333333%;
    }

    .col-xs-pull-0 {
        right: auto;
    }

    .col-xs-push-12 {
        left: 100%;
    }

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

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

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

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

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

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

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

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

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

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

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

    .col-xs-push-0 {
        left: auto;
    }

    .col-xs-offset-12 {
        margin-left: 100%;
    }

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

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

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

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

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

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

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

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

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

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

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

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

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
    [class*="col-sm-"] {
        float: left;
    }

    .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-pull-12 {
        right: 100%;
    }

    .col-sm-pull-11 {
        right: 91.66666667%;
    }

    .col-sm-pull-10 {
        right: 83.33333333%;
    }

    .col-sm-pull-9 {
        right: 75%;
    }

    .col-sm-pull-8 {
        right: 66.66666667%;
    }

    .col-sm-pull-7 {
        right: 58.33333333%;
    }

    .col-sm-pull-6 {
        right: 50%;
    }

    .col-sm-pull-5 {
        right: 41.66666667%;
    }

    .col-sm-pull-4 {
        right: 33.33333333%;
    }

    .col-sm-pull-3 {
        right: 25%;
    }

    .col-sm-pull-2 {
        right: 16.66666667%;
    }

    .col-sm-pull-1 {
        right: 8.33333333%;
    }

    .col-sm-pull-0 {
        right: auto;
    }

    .col-sm-push-12 {
        left: 100%;
    }

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

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

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

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

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

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

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

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

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

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

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

    .col-sm-push-0 {
        left: auto;
    }

    .col-sm-offset-12 {
        margin-left: 100%;
    }

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

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

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

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

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

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

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

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

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

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

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

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

/* Medium devices (desktops, 1025px and up) */
@media (min-width: 1025px) {
    [class*="col-md-"] {
        float: left;
    }

    .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-pull-12 {
        right: 100%;
    }

    .col-md-pull-11 {
        right: 91.66666667%;
    }

    .col-md-pull-10 {
        right: 83.33333333%;
    }

    .col-md-pull-9 {
        right: 75%;
    }

    .col-md-pull-8 {
        right: 66.66666667%;
    }

    .col-md-pull-7 {
        right: 58.33333333%;
    }

    .col-md-pull-6 {
        right: 50%;
    }

    .col-md-pull-5 {
        right: 41.66666667%;
    }

    .col-md-pull-4 {
        right: 33.33333333%;
    }

    .col-md-pull-3 {
        right: 25%;
    }

    .col-md-pull-2 {
        right: 16.66666667%;
    }

    .col-md-pull-1 {
        right: 8.33333333%;
    }

    .col-md-pull-0 {
        right: auto;
    }

    .col-md-push-12 {
        left: 100%;
    }

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

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

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

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

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

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

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

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

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

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

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

    .col-md-push-0 {
        left: auto;
    }

    .col-md-offset-12 {
        margin-left: 100%;
    }

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

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

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

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

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

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

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

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

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

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

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

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

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    [class*="col-lg-"] {
        float: left;
    }

    .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-pull-12 {
        right: 100%;
    }

    .col-lg-pull-11 {
        right: 91.66666667%;
    }

    .col-lg-pull-10 {
        right: 83.33333333%;
    }

    .col-lg-pull-9 {
        right: 75%;
    }

    .col-lg-pull-8 {
        right: 66.66666667%;
    }

    .col-lg-pull-7 {
        right: 58.33333333%;
    }

    .col-lg-pull-6 {
        right: 50%;
    }

    .col-lg-pull-5 {
        right: 41.66666667%;
    }

    .col-lg-pull-4 {
        right: 33.33333333%;
    }

    .col-lg-pull-3 {
        right: 25%;
    }

    .col-lg-pull-2 {
        right: 16.66666667%;
    }

    .col-lg-pull-1 {
        right: 8.33333333%;
    }

    .col-lg-pull-0 {
        right: auto;
    }

    .col-lg-push-12 {
        left: 100%;
    }

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

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

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

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

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

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

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

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

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

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

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

    .col-lg-push-0 {
        left: auto;
    }

    .col-lg-offset-12 {
        margin-left: 100%;
    }

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

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

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

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

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

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

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

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

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

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

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

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



/**
  * Clearfix
  * Apply clearing without adding additional markup
  */

.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after {
    content: " ";
    display: table;
}

.clearfix:after,
.container:after,
.container-fluid:after,
.row:after {
    clear: both;
}


/*--------------------------------------------------------------*\
     OBJECTS
     Objects are independent generic stylibf classes or UI peices.
     All styles for objects should be self contained.
 
     e.g. an object shouldn't rely on trump helpers to apply padding etc.
 \*--------------------------------------------------------------*/


/**
  * Buttons
  */

.btn,
.btn-secondary,
[type="submit"] {
    display: inline-block;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    border-radius: 4px;
    text-decoration: none;
    padding: 16px 32px;
    transition: all .3s ease;
    text-align: center;
    line-height: 22px;
}

.btn,
[type="submit"] {
    background-color: var(--blue);
}

.btn:hover,
[type="submit"]:hover {
    background-color: var(--blue-hover);
}

.btn-secondary {
    background-color: var(--green);
}

.btn-secondary:hover {
    background-color: var(--green-hover);
}

.btn-tertiary,
.read-more {
    color: var(--blue);
    text-decoration: underline;
    text-transform: uppercase;
    -webkit-text-decoration-color: #8FBDF4;
    text-decoration-color: #8FBDF4;
    display: inline-block;
    margin-right: 20px;
    position: relative;
}

.btn-tertiary:hover,
.read-more:hover {
    -webkit-text-decoration-color: var(--blue);
    text-decoration-color: var(--blue);
}

.btn-tertiary:after {
    content: "\e906";
    position: absolute;
    font-family: 'cwv-icons' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-left: 9px;
    top: 4px;
    font-size: .85em;
}

.btn-block {
    display: block;
    width: 100%;
}

.btn+.btn,
.btn+.btn-secondary,
.btn+.btn-tertiary,
.btn-secondary+.btn-secondary,
.btn-secondary+.btn,
.btn-secondary+.btn-tertiary,
.btn-tertiary+.btn,
.btn-tertiary+.btn-secondary,
.btn-tertiary+.btn-tertiary {
    margin-top: 5px;
    /* Add margin-top when 2 buttons are next to each other */
}

@media (min-width: 600px) {

    .btn+.btn,
    .btn+.btn-secondary,
    .btn+.btn-tertiary,
    .btn-secondary+.btn-secondary,
    .btn-secondary+.btn,
    .btn-secondary+.btn-tertiary,
    .btn-tertiary+.btn,
    .btn-tertiary+.btn-secondary,
    .btn-tertiary+.btn-tertiary {
        margin-top: 0;
        margin-left: 18px;
    }

}



/**
  * Icons
  */

@font-face {
    font-family: 'cwv-icons';
    src: url('../icomoon/fonts/cwv-icons.eot?vklr1h');
    src: url('../icomoon/fonts/cwv-icons.eot?vklr1h#iefix') format('embedded-opentype'),
        url('../icomoon/fonts/cwv-icons.ttf?vklr1h') format('truetype'),
        url('../icomoon/fonts/cwv-icons.woff?vklr1h') format('woff'),
        url('../icomoon/fonts/cwv-icons.svg?vklr1h#cwv-icons') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

[class^="icon-"]:not(.icon--expand):not(.icon--collapse),
[class*=" icon-"]:not(.icon--expand):not(.icon--collapse) {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'cwv-icons' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-angle-down:before {
    content: "\e900";
}

.icon-angle-left:before {
    content: "\e901";
}

.icon-angle-right:before {
    content: "\e902";
}

.icon-angle-up:before {
    content: "\e903";
}

.icon-arrow-down:before {
    content: "\e904";
}

.icon-arrow-left:before {
    content: "\e905";
}

.icon-arrow-right:before {
    content: "\e906";
}

.icon-arrow-up:before {
    content: "\e907";
}

.icon-bill-pay:before {
    content: "\e908";
}

.icon-chevron-down:before {
    content: "\e909";
}

.icon-chevron-left:before {
    content: "\e90a";
}

.icon-chevron-right:before {
    content: "\e90b";
}

.icon-chevron-up:before {
    content: "\e90c";
}

.icon-email:before {
    content: "\e90d";
}

.icon-error:before {
    content: "\e90e";
}

.icon-facebook:before {
    content: "\e90f";
}

.icon-instagram:before {
    content: "\e910";
}

.icon-leaf-point:before {
    content: "\e911";
}

.icon-link:before {
    content: "\e912";
}

.icon-linkedin:before {
    content: "\e913";
}

.icon-location:before {
    content: "\e914";
}

.icon-menu:before {
    content: "\e915";
}

.icon-minus:before {
    content: "\e916";
}

.icon-mobile-phone:before {
    content: "\e917";
}

.icon-play:before {
    content: "\e918";
}

.icon-plus:before {
    content: "\e919";
}

.icon-search:before {
    content: "\e91a";
}

.icon-twitter:before {
    content: "\e91b";
}

.icon-user:before {
    content: "\e91c";
}

.icon-video:before {
    content: "\e91d";
}

.icon-youtube:before {
    content: "\e91e";
}



/**
  * Forms
  */

label {
    display: block;
    margin-bottom: 6px;
}

select {
    border-radius: 4px;
    border: 1px solid #E3E3E3;
    width: 100%;
    padding: 13px;
}

textarea {
    min-height: 164px;
    border-radius: 4px;
    border: 1px solid #E3E3E3;
    width: 100%;
    padding: 13px;
}


/* Removes default webkit form styling */
input:not([type="radio"]):not([type="checkbox"]),
button,
textarea {
    -webkit-appearance: none;
}

input:focus,
textarea:focus,
select:focus {
    outline: none;
    /* Removes blue border on focus */
    border: 1px solid var(--blue);
}

/* Remove blue outline on focus */
button:focus {
    outline-color: #f5f5f5;
}

/* Remove focus styles for mouse users */
button:focus:not(:focus-visible) {
    outline: none;
    border: 0;
}

/* default text input style */
[type="text"],
[type="date"],
[type="datetime"],
[type="datetime-local"],
[type="email"],
[type="month"],
[type="number"],
[type="password"],
[type="search"],
[type="tel"],
[type="url"],
[type="week"],
[type="date"] {
    border-radius: 4px;
    border: 1px solid #E3E3E3;
    width: 100%;
    padding: 13px;
}

.field-wrapper {
    margin-bottom: 20px;
}

.text-field {
    margin-right: 0;
    max-width: 100%;
    flex: 0 0 100%;
    margin-bottom: 10px;
    height: 54px;
}

.get-started-btn {
    width: 100%;
    margin-bottom: 20px;
}

@media (min-width: 768px) {
    .text-field {
        max-width: 55%;
        margin-right: 0;
        flex: 0 0 55%;
        margin-bottom: 0;
        border-top-left-radius: 4px;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 4px;
    }

    .get-started-btn {
        width: auto;
        margin-bottom: 0px;
        border-top-left-radius: 0;
        border-top-right-radius: 4px;
        border-bottom-right-radius: 4px;
        border-bottom-left-radius: 0;
    }
}

/* Removes inconsistent padding from Firefox buttons */
button::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border: none;
    padding: 0;
}

[type="text"]:focus,
[type="date"]:focus,
[type="datetime"]:focus,
[type="datetime-local"]:focus,
[type="email"]:focus,
[type="month"]:focus,
[type="number"]:focus,
[type="password"]:focus,
[type="search"]:focus,
[type="tel"]:focus,
[type="url"]:focus,
[type="week"]:focus,
[type="date"]:focus,
textarea:focus {
    border: 1px solid var(--blue);
}

[type="submit"] {
    border: 0;
    width: 100%;
}

[type="submit"]:focus {
    border: 0;
}

/* Placeholder */
::-webkit-input-placeholder {
    color: #8B8B8B;
}

::-moz-placeholder {
    color: #8B8B8B;
}

:-ms-input-placeholder {
    color: #8B8B8B;
}

::-ms-input-placeholder {
    color: #8B8B8B;
}

::placeholder {
    color: #8B8B8B;
}

@media (min-width: 768px) {
    [type="submit"] {
        width: auto;
    }
}

@media (min-width: 1025px) {
    .field-wrapper {
        margin-bottom: 32px;
    }
}

/**
  * Pagination
  */

.wp-pagenavi {
    margin-top: 50px;
}

.wp-pagenavi .pages {
    border: 0;
    margin-left: 0;
    padding-left: 0;
}

.wp-pagenavi span.current,
.wp-pagenavi .page,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
    border: 1px solid #ddd;
    display: inline-block;
    padding: 6px 11px;
}

.wp-pagenavi span.current {
    background-color: #ddd;
    border-color: #ddd;
}

@media (min-width: 1025px) {

    .wp-pagenavi {
        margin-top: 70px;
    }

}

/* --------------------------------------------------*\
     UI
     UI peices are site specific non generic styles.
     eg: header, footer, sidebar, page specific styles
 \* -----------------------------------------------------*/





/**
  * Sidebar
  */

/* Blog Sidebar */

.blog .page-sidebar .widget {
    margin-bottom: 50px;
}



/**
  * Page-footer
  */

.page-footer {}




/* Promotions Styling */
@media(min-width: 480px) {

    .promotions-bar__text {
        font-size: 14px;
    }

}

@media(min-width: 768px) {

    .promotions-bar {
        padding: 5px 25px;
    }

    .promotions-bar__text {
        padding: 7px 20px;
        font-size: 16px;
    }

    .promotions-bar__text {
        width: 100%;
    }

}


/* 404 Styling */
.imgbtns-404 {
   margin-bottom: 15px;
}

.links-404 {
    display: block;
    clear: both;
}

.search-404 {
    margin-bottom: 16px;
}

.search-404 form {
    position: relative;
    float: none;
    display: flex;
    align-items: center;
}

.search-404 form label {
    position: absolute;
    left: 13px;
    margin-bottom: 0;
}

.search-404 [type="text"] {
    padding-left: 36px;
}

.search-404 button {
    width: 100px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    padding: 0;
    border: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 0;
}

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

.imgbtns__item {
    margin-top: 26px;
    background-color: #fff;
    border-radius: 8px;
    border: 1px solid #e9e9e9;
    box-shadow: 0 1px 30px 0 rgb(0 0 0 / 10%);
    overflow: hidden;
    transition: 0.5s ease;
    color: #414141;
    text-decoration: none;
    width: 100%;
    height: 100%;
    display: flex;
    will-change: transform;
    -webkit-transform: scale( 1 ) translateZ( 0 );
            transform: scale( 1 ) translateZ( 0 );
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
}

.imgbtns__item__img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
}

.imgbtns__item-wrapper {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    width: 100%;
}

.imgbtns__item__img-container {
    background-color: #f5f5f5;
    height: auto;
    width: 40%;
}

.imgbtns__card-content {
    padding: 20px;
    display: block;
    width: 60%;
}

.imgbtns__item__headline {
    font-size: 18px;
    margin-top: 0;
    margin-bottom: 20px;
}

@media (min-width: 768px) {
    .imgbtns-404 {
        margin-bottom: 50px;
    }

    .imgbtns__item {
        height: auto;
    }

    .imgbtns__item:hover {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
        box-shadow: 0 1px 30px 0 rgb(0 0 0 / 30%);
    }

    .imgbtns__item__img-container {
        height: 207px;
        width: 100%;
    }

    .imgbtns__card-content {
        width: 100%;
    }

    .search-404 {
        margin-bottom: 0;
    }
}

@media (min-width: 1200px) {
    .imgbtns__item {
        margin-top: 16px;
    }
}



/*------------------------------------*\
Flex Display
\*------------------------------------*/
.eqhwrap,
.valign-middle,
[class*="flexbox-"] {
    display: -moz-flex;
    display: flex;
}

/**
* Vertical align middle
*/
.valign-middle {
    height: 100%;
    align-items: center;
}

.valign-middle-item {
    flex-grow: 1;
}

.eqhwrap {
    flex-wrap: wrap;
}

/*
* Display
*/
[class*="flexbox-"] {
    -ms-box-orient: horizontal;
    flex-flow: row wrap;
}

.flexbox-justify {
    justify-content: space-between;
}

.flexbox-right {
    justify-content: flex-end;
}

.flexbox-left {
    justify-content: flex-start;
}

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

.flexgrow-item,
.flexgrow li {
    flex-grow: 1;
}

.flexbox-not>div,
.flexbox-not>li {
    float: left;
}

/*
* Overwrite Display flex
*/
@media (max-width: 1199px) {
    .disblock-md-down {
        display: block;
    }
}

@media (max-width: 1024px) {
    .disblock-sm-down {
        display: block;
    }
}

@media (max-width: 767px) {
    .disblock-xs-down {
        display: block;
    }
}

@media (max-width: 599px) {
    .disblock-xxs {
        display: block;
    }
}