:root {
    --gray--mid: #505d7c;
    --gray--light: #f0f5fb;
    --blue: #24678d;
    --purple: #455eee;
    --red: #ff5d5d;
    --orange: #ff9d00;
    --black: var(--navy);
    --pink: #da2f6d;
    --blue-dark: #2a5085;
    --blue-light: #2090ff;
    --green: #0ca;
    --navy: #182944;
    --green-light: #c4e7e3;
    --highlight: var(--blue-light);
    --color-utility--danger: var(--red);
    --color-utility--danger--pale: rgba(255, 93, 93, 0.15);
    --color-utility--warning: var(--orange);
    --color-utility--warning--pale: rgba(255, 157, 0, 0.15);
    --color-utility--success: var(--green);
    --color-utility--success--pale: rgba(0, 204, 170, 0.15);
    --color-utility--neutral: var(--blue);
    --color-utility--neutral--pale: rgba(36, 103, 141, 0.15)
}

* {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

body, html {
    margin: 0
}

body {
    overflow-x: hidden
}

section {
    position: relative
}

.page-wrapper {
    overflow-x: hidden
}

.container--xl {
    margin: 0 auto;
    max-width: 100em;
    width: 85%
}

.container--large {
    margin: 0 auto;
    max-width: 90em;
    width: 85%
}

@media screen and (min-width: 48em) {
    .container--large {
        width: 80%
    }
}

@media screen and (min-width: 110em) {
    .container--large {
        width: 80%
    }
}

.container--medium {
    margin: 0 auto;
    max-width: 71.25em;
    width: 85%
}

@media screen and (min-width: 48em) {
    .container--medium {
        width: 80%
    }
}

@media screen and (min-width: 100em) {
    .container--medium {
        width: 70%
    }
}

.container--small {
    margin: 0 auto;
    max-width: 62.5em;
    width: 85%
}

@media screen and (min-width: 48em) {
    .container--small {
        width: 70%
    }
}

@media screen and (min-width: 110em) {
    .container--small {
        width: 50%
    }
}

.container--xsmall {
    margin: 0 auto;
    max-width: 50em;
    width: 85%
}

@media screen and (min-width: 48em) {
    .container--xsmall {
        width: 60%
    }
}

@media screen and (min-width: 110em) {
    .container--xsmall {
        width: 50%;
        width: 40%
    }
}

.page-section {
    padding: 3rem 0
}

@media screen and (min-width: 48em) {
    .page-section {
        padding: 4.5rem 0
    }
}

.page-section.callout {
    background: url(../img/liquid.jpg) no-repeat 50%;
    background-size: cover;
    position: relative
}

.page-section.callout .highlight--text, .page-section.callout .page-section__subtitle, .page-section.callout .page-section__title, .page-section.callout h1, .page-section.callout h2, .page-section.callout h3, .page-section.callout h4, .page-section.callout h5, .page-section.callout h6, .page-section.callout ol li, .page-section.callout p, .page-section.callout ul li {
    color: #fff !important
}

.page-section.callout [class*=container--] {
    position: relative;
    z-index: 10
}

.page-section.callout:before {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .25);
    z-index: 5
}

.section-spacer {
    padding: 3rem 0
}

@media screen and (min-width: 48em) {
    .section-spacer {
        padding: 4.5rem 0
    }
}

iframe, img {
    max-width: 100%
}

img:not([src]) {
    visibility: hidden
}

[data-src], [data-srcset] {
    display: block;
    min-height: 1px
}

[data-src].loading, [data-srcset].loading {
    opacity: 0;
    transition: opacity .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

[data-src].loaded, [data-srcset].loaded {
    opacity: 1;
    transition: opacity .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.embed__container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%
}

.embed__container embed, .embed__container iframe, .embed__container object {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

[src*=".svg"] {
    max-height: 100%
}

.dated-browser-note {
    background: var(--color-utility--danger);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    color: #fff;
    font-weight: 700;
    padding: 1rem;
    z-index: 9999;
    text-align: center;
    display: block;
    margin: 0
}

.dated-browser-note a {
    color: inherit
}

.full-width {
    width: 100% !important
}

.sticky {
    position: sticky;
    top: 0
}

.hide-overflow {
    overflow: hidden
}

.text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

.reset--padding--top {
    padding-top: 0 !important
}

.reset--padding--bottom {
    padding-bottom: 0 !important
}

.reset--padding {
    padding: 0 !important
}

.reset--margin--top {
    margin-top: 0 !important
}

.reset--margin--bottom {
    margin-bottom: 0 !important
}

.reset--margin {
    margin: 0 !important
}

.ul-reset {
    list-style: none;
    padding: 0;
    margin: 0
}

.ul-inline > li {
    display: inline-block;
    vertical-align: middle
}

.bg-size--cover {
    background-size: cover
}

.bg-size--contain {
    background-size: contain
}

.bg-pos--center {
    background-position: 50%
}

[class*=flex--] {
    display: flex
}

.flex--row {
    flex-flow: row wrap
}

.flex--column {
    flex-flow: column wrap
}

.flex--justify-between {
    justify-content: space-between
}

.flex--align-start {
    align-items: flex-start
}

.flex--align-middle {
    align-items: center
}

.flex--align-end {
    align-items: flex-end
}

.filter--gray {
    filter: grayscale(1)
}

.filter--blur {
    filter: blur(3px)
}

.filter--blur-strong {
    filter: blur(20px)
}

.block-space {
    padding: 1.5rem 0
}

@media screen and (min-width: 48em) {
    .block-space {
        padding: 1rem
    }
}

@media screen and (min-width: 110em) {
    .block-space {
        padding: 0 3rem
    }
}

.block-space--small {
    padding: 1rem 0
}

@media screen and (min-width: 48em) {
    .block-space--small {
        padding: 1rem
    }
}

.relative {
    position: relative
}

.has-shadow {
    box-shadow: 0 10px 40px 0 rgba(24, 41, 68, .18)
}

.bg--gray-light {
    background-color: var(--gray--light)
}

.bg--waves {
    background: #fff url(../img/waves-light-fade.jpg) no-repeat center 3rem
}

.fade-divider {
    position: relative
}

.fade-divider hr {
    border-color: #d8dde2 !important
}

.fade-divider:after {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    content: "";
    background: linear-gradient(90deg, var(--gray--light), transparent, var(--gray--light))
}

.flex-grid {
    display: flex;
    flex-wrap: wrap
}

.flex-grid.top {
    align-items: flex-start
}

.flex-grid.middle {
    align-items: center
}

.flex-grid.bottom {
    align-items: flex-end
}

.box {
    flex: 0 0 100%;
    min-width: 0
}

.box.top {
    align-items: flex-start
}

.box.middle {
    align-items: center
}

.box.bottom {
    align-items: flex-end
}

.box.fit {
    flex: 1
}

.small-1of1, .small-full {
    flex: 0 0 100%
}

.small-1of2 {
    flex: 0 0 50%
}

.small-1of3 {
    flex: 0 0 33.33333%
}

.small-2of3 {
    flex: 0 0 66.66667%
}

.small-1of4 {
    flex: 0 0 25%
}

.small-2of4 {
    flex: 0 0 50%
}

.small-3of4 {
    flex: 0 0 75%
}

.small-1of5 {
    flex: 0 0 20%
}

.small-2of5 {
    flex: 0 0 40%
}

.small-3of5 {
    flex: 0 0 60%
}

.small-4of5 {
    flex: 0 0 80%
}

.small-1of6 {
    flex: 0 0 16.66667%
}

.small-2of6 {
    flex: 0 0 33.33333%
}

.small-3of6 {
    flex: 0 0 50%
}

.small-4of6 {
    flex: 0 0 66.66667%
}

.small-5of6 {
    flex: 0 0 83.33333%
}

.small-1of7 {
    flex: 0 0 14.28571%
}

.small-2of7 {
    flex: 0 0 28.57143%
}

.small-3of7 {
    flex: 0 0 42.85714%
}

.small-4of7 {
    flex: 0 0 57.14286%
}

.small-5of7 {
    flex: 0 0 71.42857%
}

.small-6of7 {
    flex: 0 0 85.71429%
}

.small-1of8 {
    flex: 0 0 12.5%
}

.small-2of8 {
    flex: 0 0 25%
}

.small-3of8 {
    flex: 0 0 37.5%
}

.small-4of8 {
    flex: 0 0 50%
}

.small-5of8 {
    flex: 0 0 62.5%
}

.small-6of8 {
    flex: 0 0 75%
}

.small-7of8 {
    flex: 0 0 87.5%
}

.small-1of9 {
    flex: 0 0 11.11111%
}

.small-2of9 {
    flex: 0 0 22.22222%
}

.small-3of9 {
    flex: 0 0 33.33333%
}

.small-4of9 {
    flex: 0 0 44.44444%
}

.small-5of9 {
    flex: 0 0 55.55556%
}

.small-6of9 {
    flex: 0 0 66.66667%
}

.small-7of9 {
    flex: 0 0 77.77778%
}

.small-8of9 {
    flex: 0 0 88.88889%
}

.small-1of10 {
    flex: 0 0 10%
}

.small-2of10 {
    flex: 0 0 20%
}

.small-3of10 {
    flex: 0 0 30%
}

.small-4of10 {
    flex: 0 0 40%
}

.small-5of10 {
    flex: 0 0 50%
}

.small-6of10 {
    flex: 0 0 60%
}

.small-7of10 {
    flex: 0 0 70%
}

.small-8of10 {
    flex: 0 0 80%
}

.small-9of10 {
    flex: 0 0 90%
}

.small-1of11 {
    flex: 0 0 9.09091%
}

.small-2of11 {
    flex: 0 0 18.18182%
}

.small-3of11 {
    flex: 0 0 27.27273%
}

.small-4of11 {
    flex: 0 0 36.36364%
}

.small-5of11 {
    flex: 0 0 45.45455%
}

.small-6of11 {
    flex: 0 0 54.54545%
}

.small-7of11 {
    flex: 0 0 63.63636%
}

.small-8of11 {
    flex: 0 0 72.72727%
}

.small-9of11 {
    flex: 0 0 81.81818%
}

.small-10of11 {
    flex: 0 0 90.90909%
}

.small-1of12 {
    flex: 0 0 8.33333%
}

.small-2of12 {
    flex: 0 0 16.66667%
}

.small-3of12 {
    flex: 0 0 25%
}

.small-4of12 {
    flex: 0 0 33.33333%
}

.small-5of12 {
    flex: 0 0 41.66667%
}

.small-6of12 {
    flex: 0 0 50%
}

.small-7of12 {
    flex: 0 0 58.33333%
}

.small-8of12 {
    flex: 0 0 66.66667%
}

.small-9of12 {
    flex: 0 0 75%
}

.small-10of12 {
    flex: 0 0 83.33333%
}

.small-11of12 {
    flex: 0 0 91.66667%
}

@media screen and (min-width: 48em) {
    .med-1of1, .med-full {
        flex: 0 0 100%
    }

    .med-1of2 {
        flex: 0 0 50%
    }

    .med-1of3 {
        flex: 0 0 33.33333%
    }

    .med-2of3 {
        flex: 0 0 66.66667%
    }

    .med-1of4 {
        flex: 0 0 25%
    }

    .med-2of4 {
        flex: 0 0 50%
    }

    .med-3of4 {
        flex: 0 0 75%
    }

    .med-1of5 {
        flex: 0 0 20%
    }

    .med-2of5 {
        flex: 0 0 40%
    }

    .med-3of5 {
        flex: 0 0 60%
    }

    .med-4of5 {
        flex: 0 0 80%
    }

    .med-1of6 {
        flex: 0 0 16.66667%
    }

    .med-2of6 {
        flex: 0 0 33.33333%
    }

    .med-3of6 {
        flex: 0 0 50%
    }

    .med-4of6 {
        flex: 0 0 66.66667%
    }

    .med-5of6 {
        flex: 0 0 83.33333%
    }

    .med-1of7 {
        flex: 0 0 14.28571%
    }

    .med-2of7 {
        flex: 0 0 28.57143%
    }

    .med-3of7 {
        flex: 0 0 42.85714%
    }

    .med-4of7 {
        flex: 0 0 57.14286%
    }

    .med-5of7 {
        flex: 0 0 71.42857%
    }

    .med-6of7 {
        flex: 0 0 85.71429%
    }

    .med-1of8 {
        flex: 0 0 12.5%
    }

    .med-2of8 {
        flex: 0 0 25%
    }

    .med-3of8 {
        flex: 0 0 37.5%
    }

    .med-4of8 {
        flex: 0 0 50%
    }

    .med-5of8 {
        flex: 0 0 62.5%
    }

    .med-6of8 {
        flex: 0 0 75%
    }

    .med-7of8 {
        flex: 0 0 87.5%
    }

    .med-1of9 {
        flex: 0 0 11.11111%
    }

    .med-2of9 {
        flex: 0 0 22.22222%
    }

    .med-3of9 {
        flex: 0 0 33.33333%
    }

    .med-4of9 {
        flex: 0 0 44.44444%
    }

    .med-5of9 {
        flex: 0 0 55.55556%
    }

    .med-6of9 {
        flex: 0 0 66.66667%
    }

    .med-7of9 {
        flex: 0 0 77.77778%
    }

    .med-8of9 {
        flex: 0 0 88.88889%
    }

    .med-1of10 {
        flex: 0 0 10%
    }

    .med-2of10 {
        flex: 0 0 20%
    }

    .med-3of10 {
        flex: 0 0 30%
    }

    .med-4of10 {
        flex: 0 0 40%
    }

    .med-5of10 {
        flex: 0 0 50%
    }

    .med-6of10 {
        flex: 0 0 60%
    }

    .med-7of10 {
        flex: 0 0 70%
    }

    .med-8of10 {
        flex: 0 0 80%
    }

    .med-9of10 {
        flex: 0 0 90%
    }

    .med-1of11 {
        flex: 0 0 9.09091%
    }

    .med-2of11 {
        flex: 0 0 18.18182%
    }

    .med-3of11 {
        flex: 0 0 27.27273%
    }

    .med-4of11 {
        flex: 0 0 36.36364%
    }

    .med-5of11 {
        flex: 0 0 45.45455%
    }

    .med-6of11 {
        flex: 0 0 54.54545%
    }

    .med-7of11 {
        flex: 0 0 63.63636%
    }

    .med-8of11 {
        flex: 0 0 72.72727%
    }

    .med-9of11 {
        flex: 0 0 81.81818%
    }

    .med-10of11 {
        flex: 0 0 90.90909%
    }

    .med-1of12 {
        flex: 0 0 8.33333%
    }

    .med-2of12 {
        flex: 0 0 16.66667%
    }

    .med-3of12 {
        flex: 0 0 25%
    }

    .med-4of12 {
        flex: 0 0 33.33333%
    }

    .med-5of12 {
        flex: 0 0 41.66667%
    }

    .med-6of12 {
        flex: 0 0 50%
    }

    .med-7of12 {
        flex: 0 0 58.33333%
    }

    .med-8of12 {
        flex: 0 0 66.66667%
    }

    .med-9of12 {
        flex: 0 0 75%
    }

    .med-10of12 {
        flex: 0 0 83.33333%
    }

    .med-11of12 {
        flex: 0 0 91.66667%
    }
}

@media screen and (min-width: 64em) {
    .lg-1of1, .lg-full {
        flex: 0 0 100%
    }

    .lg-1of2 {
        flex: 0 0 50%
    }

    .lg-1of3 {
        flex: 0 0 33.33333%
    }

    .lg-2of3 {
        flex: 0 0 66.66667%
    }

    .lg-1of4 {
        flex: 0 0 25%
    }

    .lg-2of4 {
        flex: 0 0 50%
    }

    .lg-3of4 {
        flex: 0 0 75%
    }

    .lg-1of5 {
        flex: 0 0 20%
    }

    .lg-2of5 {
        flex: 0 0 40%
    }

    .lg-3of5 {
        flex: 0 0 60%
    }

    .lg-4of5 {
        flex: 0 0 80%
    }

    .lg-1of6 {
        flex: 0 0 16.66667%
    }

    .lg-2of6 {
        flex: 0 0 33.33333%
    }

    .lg-3of6 {
        flex: 0 0 50%
    }

    .lg-4of6 {
        flex: 0 0 66.66667%
    }

    .lg-5of6 {
        flex: 0 0 83.33333%
    }

    .lg-1of7 {
        flex: 0 0 14.28571%
    }

    .lg-2of7 {
        flex: 0 0 28.57143%
    }

    .lg-3of7 {
        flex: 0 0 42.85714%
    }

    .lg-4of7 {
        flex: 0 0 57.14286%
    }

    .lg-5of7 {
        flex: 0 0 71.42857%
    }

    .lg-6of7 {
        flex: 0 0 85.71429%
    }

    .lg-1of8 {
        flex: 0 0 12.5%
    }

    .lg-2of8 {
        flex: 0 0 25%
    }

    .lg-3of8 {
        flex: 0 0 37.5%
    }

    .lg-4of8 {
        flex: 0 0 50%
    }

    .lg-5of8 {
        flex: 0 0 62.5%
    }

    .lg-6of8 {
        flex: 0 0 75%
    }

    .lg-7of8 {
        flex: 0 0 87.5%
    }

    .lg-1of9 {
        flex: 0 0 11.11111%
    }

    .lg-2of9 {
        flex: 0 0 22.22222%
    }

    .lg-3of9 {
        flex: 0 0 33.33333%
    }

    .lg-4of9 {
        flex: 0 0 44.44444%
    }

    .lg-5of9 {
        flex: 0 0 55.55556%
    }

    .lg-6of9 {
        flex: 0 0 66.66667%
    }

    .lg-7of9 {
        flex: 0 0 77.77778%
    }

    .lg-8of9 {
        flex: 0 0 88.88889%
    }

    .lg-1of10 {
        flex: 0 0 10%
    }

    .lg-2of10 {
        flex: 0 0 20%
    }

    .lg-3of10 {
        flex: 0 0 30%
    }

    .lg-4of10 {
        flex: 0 0 40%
    }

    .lg-5of10 {
        flex: 0 0 50%
    }

    .lg-6of10 {
        flex: 0 0 60%
    }

    .lg-7of10 {
        flex: 0 0 70%
    }

    .lg-8of10 {
        flex: 0 0 80%
    }

    .lg-9of10 {
        flex: 0 0 90%
    }

    .lg-1of11 {
        flex: 0 0 9.09091%
    }

    .lg-2of11 {
        flex: 0 0 18.18182%
    }

    .lg-3of11 {
        flex: 0 0 27.27273%
    }

    .lg-4of11 {
        flex: 0 0 36.36364%
    }

    .lg-5of11 {
        flex: 0 0 45.45455%
    }

    .lg-6of11 {
        flex: 0 0 54.54545%
    }

    .lg-7of11 {
        flex: 0 0 63.63636%
    }

    .lg-8of11 {
        flex: 0 0 72.72727%
    }

    .lg-9of11 {
        flex: 0 0 81.81818%
    }

    .lg-10of11 {
        flex: 0 0 90.90909%
    }

    .lg-1of12 {
        flex: 0 0 8.33333%
    }

    .lg-2of12 {
        flex: 0 0 16.66667%
    }

    .lg-3of12 {
        flex: 0 0 25%
    }

    .lg-4of12 {
        flex: 0 0 33.33333%
    }

    .lg-5of12 {
        flex: 0 0 41.66667%
    }

    .lg-6of12 {
        flex: 0 0 50%
    }

    .lg-7of12 {
        flex: 0 0 58.33333%
    }

    .lg-8of12 {
        flex: 0 0 66.66667%
    }

    .lg-9of12 {
        flex: 0 0 75%
    }

    .lg-10of12 {
        flex: 0 0 83.33333%
    }

    .lg-11of12 {
        flex: 0 0 91.66667%
    }
}

@media screen and (min-width: 100em) {
    .xl-1of1, .xl-full {
        flex: 0 0 100%
    }

    .xl-1of2 {
        flex: 0 0 50%
    }

    .xl-1of3 {
        flex: 0 0 33.33333%
    }

    .xl-2of3 {
        flex: 0 0 66.66667%
    }

    .xl-1of4 {
        flex: 0 0 25%
    }

    .xl-2of4 {
        flex: 0 0 50%
    }

    .xl-3of4 {
        flex: 0 0 75%
    }

    .xl-1of5 {
        flex: 0 0 20%
    }

    .xl-2of5 {
        flex: 0 0 40%
    }

    .xl-3of5 {
        flex: 0 0 60%
    }

    .xl-4of5 {
        flex: 0 0 80%
    }

    .xl-1of6 {
        flex: 0 0 16.66667%
    }

    .xl-2of6 {
        flex: 0 0 33.33333%
    }

    .xl-3of6 {
        flex: 0 0 50%
    }

    .xl-4of6 {
        flex: 0 0 66.66667%
    }

    .xl-5of6 {
        flex: 0 0 83.33333%
    }

    .xl-1of7 {
        flex: 0 0 14.28571%
    }

    .xl-2of7 {
        flex: 0 0 28.57143%
    }

    .xl-3of7 {
        flex: 0 0 42.85714%
    }

    .xl-4of7 {
        flex: 0 0 57.14286%
    }

    .xl-5of7 {
        flex: 0 0 71.42857%
    }

    .xl-6of7 {
        flex: 0 0 85.71429%
    }

    .xl-1of8 {
        flex: 0 0 12.5%
    }

    .xl-2of8 {
        flex: 0 0 25%
    }

    .xl-3of8 {
        flex: 0 0 37.5%
    }

    .xl-4of8 {
        flex: 0 0 50%
    }

    .xl-5of8 {
        flex: 0 0 62.5%
    }

    .xl-6of8 {
        flex: 0 0 75%
    }

    .xl-7of8 {
        flex: 0 0 87.5%
    }

    .xl-1of9 {
        flex: 0 0 11.11111%
    }

    .xl-2of9 {
        flex: 0 0 22.22222%
    }

    .xl-3of9 {
        flex: 0 0 33.33333%
    }

    .xl-4of9 {
        flex: 0 0 44.44444%
    }

    .xl-5of9 {
        flex: 0 0 55.55556%
    }

    .xl-6of9 {
        flex: 0 0 66.66667%
    }

    .xl-7of9 {
        flex: 0 0 77.77778%
    }

    .xl-8of9 {
        flex: 0 0 88.88889%
    }

    .xl-1of10 {
        flex: 0 0 10%
    }

    .xl-2of10 {
        flex: 0 0 20%
    }

    .xl-3of10 {
        flex: 0 0 30%
    }

    .xl-4of10 {
        flex: 0 0 40%
    }

    .xl-5of10 {
        flex: 0 0 50%
    }

    .xl-6of10 {
        flex: 0 0 60%
    }

    .xl-7of10 {
        flex: 0 0 70%
    }

    .xl-8of10 {
        flex: 0 0 80%
    }

    .xl-9of10 {
        flex: 0 0 90%
    }

    .xl-1of11 {
        flex: 0 0 9.09091%
    }

    .xl-2of11 {
        flex: 0 0 18.18182%
    }

    .xl-3of11 {
        flex: 0 0 27.27273%
    }

    .xl-4of11 {
        flex: 0 0 36.36364%
    }

    .xl-5of11 {
        flex: 0 0 45.45455%
    }

    .xl-6of11 {
        flex: 0 0 54.54545%
    }

    .xl-7of11 {
        flex: 0 0 63.63636%
    }

    .xl-8of11 {
        flex: 0 0 72.72727%
    }

    .xl-9of11 {
        flex: 0 0 81.81818%
    }

    .xl-10of11 {
        flex: 0 0 90.90909%
    }

    .xl-1of12 {
        flex: 0 0 8.33333%
    }

    .xl-2of12 {
        flex: 0 0 16.66667%
    }

    .xl-3of12 {
        flex: 0 0 25%
    }

    .xl-4of12 {
        flex: 0 0 33.33333%
    }

    .xl-5of12 {
        flex: 0 0 41.66667%
    }

    .xl-6of12 {
        flex: 0 0 50%
    }

    .xl-7of12 {
        flex: 0 0 58.33333%
    }

    .xl-8of12 {
        flex: 0 0 66.66667%
    }

    .xl-9of12 {
        flex: 0 0 75%
    }

    .xl-10of12 {
        flex: 0 0 83.33333%
    }

    .xl-11of12 {
        flex: 0 0 91.66667%
    }
}

::selection {
    background: var(--blue-light);
    color: #fff
}

html {
    font-size: 18px
}

@media screen and (min-width: 48em) {
    html {
        font-size: 16px
    }
}

@media screen and (min-width: 64em) {
    html {
        font-size: 18px
    }
}

@media screen and (min-width: 100em) {
    html {
        font-size: 21px
    }
}

h1, h2, h3, h4, h5, h6 {
    font-family: Mulish, Arial, Helvetica, sans-serif;
    color: var(--black)
}

h1 {
    font-size: 2.36859rem
}

@media screen and (min-width: 48em) {
    h1 {
        font-size: 3.15733rem
    }
}

h2 {
    font-size: 1.77689rem
}

@media screen and (min-width: 48em) {
    h2 {
        font-size: 2.36859rem
    }
}

h3 {
    font-size: 1.77689rem
}

h4 {
    font-size: 1.333rem
}

h5 {
    font-size: 1rem
}

h6 {
    font-size: .6665rem
}

.mini-title {
    font-family: Exo\ 2, Arial, Helvetica, sans-serif;
    font-weight: 600;
    font-size: .75rem;
    text-transform: uppercase;
    line-height: 1.15;
    letter-spacing: 1px
}

p {
    font-size: 1rem;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    line-height: 1.35;
    color: var(--gray--mid)
}

@media screen and (min-width: 64em) {
    p {
        font-size: .9rem;
        line-height: 1.35
    }
}

ol li, ul li {
    font-size: 1rem;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    line-height: 1.35;
    color: var(--black)
}

@media screen and (min-width: 64em) {
    ol li, ul li {
        font-size: .9rem;
        line-height: 1.35
    }
}

blockquote {
    border: 0 solid var(--blue-light);
    border-width: 3px 0;
    padding: 2rem 1rem;
    margin: 2rem 0;
    font-family: Mulish, Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.333rem;
    color: var(--black)
}

.table-wrapper {
    width: 100%;
    overflow: auto;
    position: relative
}

.table-wrapper:before {
    content: "Hint: You can scroll the table horizontally.";
    color: grey;
    font-size: .8rem;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    text-align: left;
    display: block
}

@media screen and (min-width: 48em) {
    .table-wrapper:before {
        display: none
    }
}

.table-wrapper table {
    min-width: 250%
}

@media screen and (min-width: 48em) {
    .table-wrapper table {
        min-width: 0
    }
}

.core-icon use {
    stroke-width: 2px
}

.core-icon.inline {
    width: 1em;
    height: 1em;
    margin: 0 .25rem 0 0;
    fill: var(--black);
    stroke: var(--black);
    transform: translateY(15%)
}

.no-touchevents a[href^="tel:"] {
    pointer-events: none;
    text-decoration: none;
    color: inherit
}

.touchevents a[href^="tel:"] {
    color: var(--blue-light)
}

.highlight--text {
    font-weight: inherit;
    color: var(--highlight)
}

.title-combo.title {
    margin: 0 0 1rem
}

.title-combo.subtitle {
    margin: 0
}

.color--red {
    color: var(--red)
}

.title-wrapper {
    margin: 2rem 0;
    position: relative;
    z-index: 10
}

[class*=container--].title-wrapper {
    margin: 2rem auto
}

.nav-toggle {
    z-index: 30
}

.main-header, .sticky {
    z-index: 20
}

.hero {
    z-index: 10
}

.cta-grid {
    z-index: 15
}

.content-area ol li, .content-area ul li {
    color: var(--gray--mid);
    line-height: 1.35
}

.content-area a {
    color: var(--highlight);
    -webkit-text-decoration: underline;
    text-decoration: underline
}

.content-area a:visited {
    color: #3190ee
}

.content-area a:active, .content-area a:focus {
    color: #030e19 !important
}

.content-area table {
    border-collapse: collapse;
    overflow: auto;
    width: 100%
}

.content-area thead td {
    background: var(--black);
    border: 1px solid #465469;
    font-weight: 700;
    color: #fff
}

.content-area tbody td, .content-area thead td {
    padding: 1rem;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-size: 1rem;
    font-style: normal;
    text-transform: none;
    text-align: left
}

.content-area tbody td {
    background: transparent;
    border: 1px solid #ccc;
    font-weight: 400;
    color: var(--black)
}

.content-area tbody tr:nth-child(2n) {
    background: #f2f2f2
}

.content-area hr {
    height: 0;
    margin: 2rem 0;
    border: 1px solid var(--gray--light)
}

.content-area img {
    text-align: center;
    line-height: 2;
    height: auto;
    display: block;
    position: relative;
    font-weight: 700;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    color: #fff;
    background: var(--black)
}

.content-area img:before {
    content: "Sorry, this image is missing.";
    border-bottom: 0;
    padding: 1rem 0 0
}

.content-area img:after, .content-area img:before {
    display: block;
    font-weight: 400;
    background: var(--black)
}

.content-area img:after {
    content: "(url: " attr(src) ")";
    border-top: 0;
    padding: 0 0 1rem;
    word-break: break-all
}

.no-touchevents .content-area a:not([class]):hover {
    color: #5890c7
}

.page-section__title-wrapper {
    margin: 0 0 1rem
}

@media screen and (min-width: 64em) {
    .page-section__title-wrapper {
        margin: 0 0 3rem
    }
}

.page-section__title-wrapper p {
    font-size: 1rem;
    line-height: 1.5
}

.page-section__subtitle {
    margin: 0 0 2rem;
    font-weight: 400;
    font-style: normal;
    color: var(--black);
    text-transform: none;
    padding: 0;
    background: transparent;
    display: inline-block
}

.page-section__subtitle.with-divider {
    position: relative
}

.page-section__subtitle.with-divider:after {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%);
    content: "";
    display: inline-block;
    width: 2rem;
    height: 2px;
    background: var(--highlight);
    margin: .5rem 0 0
}

.page-section__title {
    margin: 0;
    padding: 0
}

[class*=wp-image] {
    height: auto !important
}

.wp-image__wrapper {
    margin: 2rem 0;
    max-width: 100% !important
}

.alignleft, .alignright {
    display: block;
    width: 50%;
    margin: 0 0 1rem
}

.alignleft ~ blockquote, .alignright ~ blockquote {
    width: 45%
}

@media screen and (min-width: 48em) {
    .alignleft {
        float: left;
        margin: 0 2rem 1rem 0
    }
}

@media screen and (min-width: 48em) {
    .alignright {
        float: right;
        margin: 0 0 1rem 2rem
    }
}

.aligncenter {
    display: block;
    margin: 0 auto
}

.wp-caption-text {
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-size: .85rem;
    color: var(--black);
    font-weight: 600;
    font-style: normal;
    background: transparent;
    padding: .85rem .5rem 0 .75rem;
    margin: 0 0 0 1.25rem;
    text-align: left;
    display: inline-block;
    border-left: 2px solid var(--black);
    line-height: 1.25
}

button, input[type=submit] {
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    border: none;
    cursor: pointer;
    outline: none
}

.button, [class*=button--] {
    padding: .75rem 1.25rem;
    border-radius: 3px;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-size: .9rem;
    font-weight: 500;
    font-style: normal;
    text-transform: none;
    text-decoration: none;
    display: inline-block;
    line-height: 1
}

@media screen and (min-width: 48em) {
    .button, [class*=button--] {
        font-size: .85rem
    }
}

.button.small, [class*=button--].small {
    padding: .5rem 1rem;
    font-family: Mulish, Arial, Helvetica, sans-serif
}

@media screen and (min-width: 48em) {
    .button.small, [class*=button--].small {
        font-size: .75rem
    }
}

.button.blue, [class*=button--].blue {
    background: var(--blue-light);
    box-shadow: 0 5px 15px 0 rgba(32, 144, 255, .3)
}

.button {
    background: var(--blue-light)
}

.button, .no-touchevents .button:hover {
    color: #fff;
    transition: color .5s cubic-bezier(.2, 1, .3, 1) 0ms, background .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.no-touchevents .button:hover {
    background: var(--purple)
}

.button--outline {
    background: transparent;
    color: var(--black);
    border: solid var(--blue-light);
    border-width: 2px 2px 4px
}

.button--outline, .no-touchevents .button--outline:hover {
    transition: color .5s cubic-bezier(.2, 1, .3, 1) 0ms, background .5s cubic-bezier(.2, 1, .3, 1) 0ms, border .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.no-touchevents .button--outline:hover {
    background: var(--purple);
    color: #fff;
    border: solid #2d3d9b;
    border-width: 2px 2px 4px
}

.button--outline.white {
    color: #fff;
    border-color: #fff;
    box-shadow: none;
    background: transparent
}

.disabled, [disabled] {
    pointer-events: none;
    opacity: .35;
    cursor: not-allowed
}

.button-wrapper {
    padding: 0 1rem
}

.button-wrapper.spaced {
    margin: 3rem 0 0
}

.button-wrapper.spaced--small {
    margin: 1.5rem 0 0
}

.card-box .button-wrapper {
    padding-left: 0;
    padding-right: 0
}

.button-group {
    list-style: none;
    margin: 0;
    padding: 0
}

.button-group.spaced {
    margin: 2rem 0 0
}

.button-group__item {
    padding: .5rem;
    display: block
}

@media screen and (min-width: 48em) {
    .button-group__item {
        display: inline-block;
        vertical-align: middle
    }
}

.main-nav {
    background: #fff;
    list-style: none;
    padding: 0;
    margin: 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: translate3d(100%, 0, 0)
}

.main-nav, .main-nav.show {
    transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.main-nav.show {
    transform: translateZ(0)
}

@media screen and (min-width: 64em) {
    .main-nav {
        position: static;
        display: block;
        width: auto;
        height: auto;
        background: transparent;
        margin-right: -1rem;
        transform: translateZ(0)
    }
}

.main-nav__item {
    display: block;
    position: relative
}

@media screen and (min-width: 64em) {
    .main-nav__item {
        display: inline-block
    }
}

.main-nav__item-link {
    padding: 1rem;
    color: var(--black);
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-size: 1.25rem;
    font-weight: 400;
    font-style: normal;
    -webkit-text-decoration: none;
    text-decoration: none;
    text-transform: none;
    display: block;
    position: relative
}

@media screen and (min-width: 64em) {
    .main-nav__item-link {
        font-size: 1rem;
	display: inline;
    }
}

.no-touchevents .main-nav__item-link:hover {
    color: #5890c7
}

[class*=main-nav__submenu--] {
    background: #fff;
    list-style: none;
    margin: 0;
    padding: 0 0 0 1rem;
    display: none
}

[class*=main-nav__submenu--].open {
    display: block
}

@media screen and (min-width: 64em) {
    [class*=main-nav__submenu--] {
        position: absolute;
        min-width: 200px;
        display: none;
        padding: 0;
        border: 2px solid var(--black)
    }
}

.main-nav__submenu-item {
    border-left: 2px solid var(--gray--light)
}

@media screen and (min-width: 64em) {
    .main-nav__submenu-item {
        border: solid var(--black);
        border-width: 0 0 2px
    }

    .main-nav__submenu-item:last-child {
        border: 0
    }
}

.main-nav__submenu-item-link {
    padding: 1rem;
    color: var(--black);
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-size: 1.1rem;
    text-transform: none;
    font-weight: 400;
    -webkit-text-decoration: none;
    text-decoration: none;
    font-style: normal;
    display: block;
    position: relative
}

@media screen and (min-width: 64em) {
    .main-nav__submenu-item-link {
        padding: .5rem;
        font-size: .85rem
    }
}

.has-submenu {
    position: relative
}

@media screen and (min-width: 64em) {
    .has-submenu .main-nav__item-link:after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        width: 0;
        height: 0;
        border: 5px solid transparent;
        border-top: 5px solid var(--highlight);
        margin: 0 0 0 .5rem;
    }
}

@media screen and (min-width: 64em) {
    .no-touchevents .main-nav__submenu-item-link:hover {
        background: var(--purple);
        color: #fff
    }

    .no-touchevents .has-submenu:hover > [class*=main-nav__submenu--] {
        display: block
    }
}

.main-nav__submenu--dropdown {
    top: 100%;
    left: 0
}

.main-nav__submenu--flyout {
    right: 100%;
    top: -2px
}

.nav-toggle {
    background: var(--blue-light);
    font-family: Mulish, Arial, Helvetica, sans-serif;
    font-size: 1rem;
    text-transform: none;
    font-weight: 700;
    -webkit-text-decoration: none;
    text-decoration: none;
    font-style: normal;
    color: #fff;
    padding: 1rem;
    border-radius: 3px 0 0 3px;
    position: fixed;
    bottom: 4rem;
    right: 0;
    display: block
}

@media screen and (min-width: 64em) {
    .nav-toggle {
        display: none
    }
}

.main-nav__submenu-expand {
    padding: 1rem;
    color: #fff;
    background: var(--blue-light);
    border-radius: 3px;
    display: inline-block;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%)
}

.main-nav__submenu-expand:after, .main-nav__submenu-expand:before {
    width: 3px;
    background: #fff;
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 50%
}

.main-nav__submenu-expand:after {
    transform: translate(-50%, -50%) rotate(90deg)
}

@media screen and (min-width: 64em) {
    .main-nav__submenu-expand {
        display: none
    }
}

.main-nav [class*=item-link].active .main-nav__submenu-expand:before {
    display: none
}

.no-touchevents .main-nav__item-link, .no-touchevents .main-nav__submenu-item-link {
    transition: background .5s cubic-bezier(.2, 1, .3, 1) 0ms, color .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.main-header {
    padding: .75rem;
    position: relative;
    background: transparent
}

@media screen and (min-width: 64em) {
    .main-header {
        padding: 1.5rem
    }
}

.main-header:before {
    height: 5px;
    background: linear-gradient(90deg, var(--green), var(--blue-light))
}

@media only screen and (max-width: 100em) {
    .main-header__container {
        width: 97%
    }
}

.main-header:before {
    content: "";
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    position: absolute;
    height: 7px
}

.main-header__logo-link {
    width: 40%;
    display: block
}

@media screen and (min-width: 48em) {
    .main-header__logo-link {
        width: 225px
    }
}

.main-header__logo-link.center {
    display: inline-block;
    margin: 0 auto
}

@media screen and (min-width: 64em) {
    .main-header__logo-link.center {
        margin: 0
    }
}

.main-header__logo {
    display: block;
    mix-blend-mode: multiply
}

.main-footer {
    background: #121f33 url(../img/footer-bg.jpg) repeat;
    position: relative;
    border-top: none
}

@media screen and (min-width: 100em) {
    .main-footer {
        padding: 0 0 1rem
    }
}

.main-footer p {
    color: #fff
}

.main-footer a:not([class]):not([href^="tel:"]) {
    text-decoration: none;
    color: var(--gray--light);
    display: inline-block;
    border-bottom: 1px solid var(--blue-light);
    transition: color .5s cubic-bezier(.2, 1, .3, 1) 0ms;
    line-height: 1
}

.main-footer:before {
    width: 100%;
    height: 5px;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(90deg, var(--green), var(--blue-light))
}

.footer-title {
    color: #fff;
    font-weight: 700;
    margin: 0 0 1rem
}

.footer-links li, .footer-links li a {
    padding: .25rem 0
}

.footer-logo-link {
    border: none !important
}

.footer-logo {
    filter: grayscale(100%) invert(1) brightness(1.5);
    mix-blend-mode: screen
}

.no-touchevents .main-footer a:hover {
    color: var(--blue-light);
    transition: color .5s cubic-bezier(.2, 1, .3, 1) 0ms;
    line-height: 1
}

.subfooter {
    border-top: 1px solid hsla(0, 0%, 100%, .25);
    margin: 3rem 0 0;
    padding: 1rem 0 0;
    opacity: .8
}

.attr-note {
    font-size: .6rem;
    opacity: .5
}

.attr-note a {
    border: none !important
}

@media screen and (min-width: 110em) {
    .main-footer .block-space {
        padding: 1rem
    }
}

@media screen and (min-width: 110em) {
    .footer-block:nth-child(2) {
        padding-right: 4rem
    }
}

.hero {
    background: #fff url(../img/waves-light.jpg) no-repeat center 20%;
    background-size: contain
}

@media screen and (min-width: 64em) {
    .hero {
        background-position: 50%
    }
}

.hero__container {
    align-items: center;
    z-index: 10
}

.hero-block--content {
    order: 2
}

@media screen and (min-width: 64em) {
    .hero-block--content {
        order: 1
    }
}

.hero-block--content.block-space {
    padding-left: 0 !important
}

.hero-block--image {
    order: 1;
    padding: 1rem 1rem 1rem 0;
    position: relative
}

@media screen and (min-width: 64em) {
    .hero-block--image {
        padding: 0;
        order: 2
    }
}

@media screen and (min-width: 30em) {
    .hero-block--image img {
        width: 70%
    }
}

@media screen and (min-width: 64em) {
    .hero-block--image img {
        width: auto
    }
}

.hero__title {
    display: inline-block;
    font-weight: 900;
    font-size: 2.2rem
}

@media screen and (min-width: 64em) {
    .hero__title {
        font-size: 2.8rem
    }
}

.hero-slide {
    display: flex !important;
    align-items: center
}

@media screen and (min-width: 48em) {
    .hero-slide {
        padding: 4.5rem 0
    }
}

.hero__subtitle {
    font-weight: 400;
    line-height: 1.35
}

.usa-note {
    line-height: 1;
    display: block;
    margin: .5rem 0 .1rem
}

.usa-note img {
    display: inline-block;
    vertical-align: bottom;
    width: 1rem;
    margin: 0 .35rem 0 0
}

.usa-note span {
    display: inline-block;
    vertical-align: middle
}

.hero .video-container {
    display: none
}

@media screen and (min-width: 64em) {
    .hero .video-container {
        display: block;
        position: absolute;
        z-index: 5;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        overflow: hidden;
        mix-blend-mode: color-dodge
    }

    .hero .video-container video {
        position: absolute;
        width: 100%;
        top: 50%;
        left: 0;
        transform: translateY(-50%)
    }

    .hero .video-container + [class*=container--] {
        z-index: 10;
        position: relative
    }
}

@supports not (mix-blend-mode:color-dodge) {
    .hero .video-container {
        display: none
    }
}

.hero-marker {
    text-align: center;
    position: relative;
    z-index: 50
}

.slick-track {
    display: flex;
    align-items: center
}

.slick-list, .slick-slide, .slick-track {
    outline: none
}

.slick-list {
    overflow: visible !important
}

.slick-dots {
    margin: 0 0 0 1rem;
    padding: 0;
    list-style: none;
    display: inline-block;
    vertical-align: middle;
    line-height: 0;
    position: relative;
    top: 3px
}

.slick-dots li {
    display: inline-block;
    overflow: hidden;
    margin: 0 .2rem 0 0
}

.slick-dots li button {
    width: 1rem;
    height: 1rem;
    background: transparent;
    border: 2px solid var(--black);
    text-indent: -9999em;
    overflow: hidden;
    border-radius: 2px
}

.slick-dots li.slick-active button {
    background: var(--blue-light);
    box-shadow: inset 0 0 0 3px #fff
}

.slick-arrow {
    background: var(--black);
    display: inline-block;
    vertical-align: middle;
    margin: 0 1px 0 0;
    border-radius: 2px;
    transition: background .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.slick-arrow img {
    display: block;
    width: 1.35rem
}

.no-touchevents .slick-arrow:hover {
    background: var(--purple);
    transition: background .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.no-touchevents .slick-dots li:not(.slick-active) button:hover {
    border-color: var(--purple)
}

.hero-slide:not(.transparent) .hero-block--image {
    padding: 1rem 1rem 1rem 0
}

@media screen and (min-width: 64em) {
    .hero-slide:not(.transparent) .hero-block--image {
        padding: 0 4rem
    }
}

.hero-slide:not(.transparent) .hero-block--image img {
    position: relative;
    z-index: 10
}

@media screen and (min-width: 64em) {
    .hero-slide:not(.transparent) .hero-block--image img {
        box-shadow: 0 20px 60px 0 rgba(42, 80, 133, .2)
    }
}

.hero-slide:not(.transparent) .hero-block--image:after {
    z-index: 5;
    position: absolute;
    top: 0;
    right: 0;
    transform: translate3d(1.5rem, -1.5rem, 0);
    display: block;
    width: 8rem;
    height: 8rem;
    content: "";
    background: transparent url(../img/dots.svg) no-repeat 50%;
    background-size: contain;
    pointer-events: none
}

.slick-slide .hero-block--content {
    transform: translate3d(-20%, 0, 0)
}

.slick-slide .hero-block--content, .slick-slide .hero-block--image {
    opacity: 0;
    transition: transform .75s cubic-bezier(.2, 1, .3, 1) .1s, opacity .75s cubic-bezier(.2, 1, .3, 1) .1s
}

.slick-slide .hero-block--image {
    transform: translate3d(0, 30%, 0)
}

.slick-slide .hero-block--image:after {
    transform: translate3d(1.5rem, -5rem, 0) !important;
    transition: transform .75s cubic-bezier(.2, 1, .3, 1) .1s
}

.slick-slide.slick-active .hero-block--content, .slick-slide.slick-active .hero-block--image {
    transform: translateZ(0);
    opacity: 1;
    transition: transform .75s cubic-bezier(.2, 1, .3, 1) .2s, opacity .75s cubic-bezier(.2, 1, .3, 1) .2s
}

.slick-slide.slick-active .hero-block--image:after {
    transform: translate3d(1.5rem, -1.5rem, 0) !important;
    transition: transform .75s cubic-bezier(.2, 1, .3, 1) .3s
}

.ginput_complex {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap
}

.ginput_complex input + label, .ginput_complex select + label, .ginput_complex textarea + label {
    font-family: Mulish, Arial, Helvetica, sans-serif;
    font-size: .75rem;
    color: grey;
    font-weight: 400;
    font-style: normal;
    text-transform: none;
    margin: .25rem 0 0;
    display: block
}

.ginput_complex .address_country {
    margin-top: 1rem
}

.ginput_complex span {
    display: block;
    flex: 0 0 100%;
    margin: 0 0 .75rem
}

@media screen and (min-width: 64em) {
    .ginput_complex span {
        flex: 0 0 49%
    }

    .ginput_complex span:last-of-type, .ginput_complex span:nth-last-child(2) {
        margin: 0
    }
}

.gf_clear_complex {
    display: none
}

.gform_fields > li > label, label {
    font-family: Mulish, Arial, Helvetica, sans-serif;
    font-size: 1rem;
    color: var(--black);
    font-weight: 600;
    font-style: normal;
    text-transform: none;
    margin: 0 0 .25rem;
    display: inline-block
}

@media screen and (min-width: 100em) {
    .gform_fields > li > label, label {
        font-size: .85rem
    }
}

.gform_fields {
    font-family: Quattrocento, Arial, Helvetica, sans-serif
}

.gform_fields, .gform_fields ul {
    list-style: none;
    margin: 0;
    padding: 0
}

.gform_fields > li {
    margin: .75rem 0
}

.gform_button.button {
    padding: .75rem 1.25rem;
    border-radius: 3px;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-size: .85rem;
    font-weight: 500;
    font-style: normal;
    text-transform: none;
    background: var(--blue-light);
    color: #fff
}

.no-touchevents .gform_button.button:hover {
    background: var(--purple);
    color: #fff
}

.gfield_label:empty {
    display: none
}

.gsection {
    padding: 1rem 0
}

.gsection_title {
    font-family: Mulish, Arial, Helvetica, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 1.333rem;
    color: var(--black);
    text-transform: none;
    padding: 0 0 .5rem;
    margin: 0 0 .5rem;
    border-bottom: 2px solid var(--blue-light)
}

.gsection_description {
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1rem;
    color: var(--gray--mid);
    text-transform: none;
    padding: 0;
    margin: 0
}

@media screen and (min-width: 64em) {
    .gsection_description {
        font-size: .9rem
    }
}

.gform_footer {
    margin: 1rem 0 0
}

.gform_confirmation_message {
    font-family: Helvetica, Arial, sans-serif;
    color: #fff;
    font-size: 1rem;
    line-height: 1.25;
    font-weight: 400;
    display: inline-block
}

form input[type=date], form input[type=datetime-local], form input[type=datetime], form input[type=email], form input[type=month], form input[type=number], form input[type=password], form input[type=search], form input[type=tel], form input[type=text], form input[type=time], form input[type=url], form input[type=week], form select, form textarea {
    border: 2px solid #dfe4e9;
    font-family: Mulish, Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-size: 1rem;
    padding: .5rem;
    border-radius: 0;
    background: var(--gray--light);
    color: var(--black);
    outline: none;
    box-shadow: none;
    width: 100%;
    transition: border .5s cubic-bezier(.2, 1, .3, 1) 0ms, box-shadow .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

form input[type=date]:focus, form input[type=datetime-local]:focus, form input[type=datetime]:focus, form input[type=email]:focus, form input[type=month]:focus, form input[type=number]:focus, form input[type=password]:focus, form input[type=search]:focus, form input[type=tel]:focus, form input[type=text]:focus, form input[type=time]:focus, form input[type=url]:focus, form input[type=week]:focus, form select:focus, form textarea:focus {
    border-color: var(--highlight) !important;
    box-shadow: 0 10px 20px 3px rgba(32, 144, 255, .15);
    transition: border .5s cubic-bezier(.2, 1, .3, 1) 0ms, box-shadow .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

@media screen and (min-width: 100em) {
    form input[type=date], form input[type=datetime-local], form input[type=datetime], form input[type=email], form input[type=month], form input[type=number], form input[type=password], form input[type=search], form input[type=tel], form input[type=text], form input[type=time], form input[type=url], form input[type=week], form select, form textarea {
        font-size: .9rem
    }
}

form select:not([multiple]) {
    padding-right: 2rem;
    box-shadow: none;
    width: 100%;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: %23444444'></polygon></svg>");
    background-size: 9px 6px;
    background-position: right -1.5rem center;
    background-origin: content-box;
    background-repeat: no-repeat;
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    outline: none !important;
    position: relative
}

form textarea {
    min-height: 250px;
    width: 100%
}

form input[type=file] {
    display: none
}

form .file-input__label {
    padding: .75rem 1.25rem;
    border-radius: 3px;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-size: .85rem;
    font-weight: 500;
    font-style: normal;
    text-transform: none;
    background: var(--blue-light);
    color: #fff;
    display: inline-block;
    cursor: pointer
}

form .file-input__types {
    font: inherit;
    font-size: 80%
}

form input:disabled {
    opacity: .5;
    box-shadow: none;
    background: rgba(0, 0, 0, .1);
    transition: all .2s ease 0s
}

form input:disabled + label {
    opacity: .6;
    cursor: default;
    transition: all .2s ease 0s;
    -webkit-user-select: none
}

.no-touchevents .file-input__label:hover {
    background: var(--purple);
    color: #fff
}

.g-recaptcha {
    overflow: visible;
    text-align: center
}

.g-recaptcha > div {
    display: inline-block
}

.no-touchevents form input[type=date]:not([disabled]):hover, .no-touchevents form input[type=datetime-local]:not([disabled]):hover, .no-touchevents form input[type=datetime]:not([disabled]):hover, .no-touchevents form input[type=email]:not([disabled]):hover, .no-touchevents form input[type=month]:not([disabled]):hover, .no-touchevents form input[type=number]:not([disabled]):hover, .no-touchevents form input[type=password]:not([disabled]):hover, .no-touchevents form input[type=search]:not([disabled]):hover, .no-touchevents form input[type=tel]:not([disabled]):hover, .no-touchevents form input[type=text]:not([disabled]):hover, .no-touchevents form input[type=time]:not([disabled]):hover, .no-touchevents form input[type=url]:not([disabled]):hover, .no-touchevents form input[type=week]:not([disabled]):hover, .no-touchevents form textarea:not([disabled]):hover {
    border-color: var(--gray--mid)
}

.no-touchevents form select:not([disabled]):hover {
    background-color: #f4f9ff
}

.gfield_checkbox > li label, .gfield_radio > li label {
    font-family: Mulish, Arial, Helvetica, sans-serif;
    font-size: 1rem;
    color: var(--black);
    font-weight: 400;
    font-style: normal;
    text-transform: none;
    padding: 0 0 0 .5rem;
    position: relative;
    cursor: pointer;
    display: inline-block
}

@media screen and (min-width: 100em) {
    .gfield_checkbox > li label, .gfield_radio > li label {
        font-size: .85rem
    }
}

.gfield_checkbox > li label:before, .gfield_radio > li label:before {
    display: inline-block;
    vertical-align: middle;
    content: "";
    cursor: pointer
}

.gfield_checkbox > li input[type=checkbox], .gfield_checkbox > li input[type=radio], .gfield_radio > li input[type=checkbox], .gfield_radio > li input[type=radio] {
    visibility: hidden;
    position: absolute
}

.gfield_checkbox > li {
    margin: .25rem 0;
    padding: 0 0 0 calc(1rem + 2px)
}

.gfield_checkbox > li label:before {
    border: 2px solid #ccc;
    width: 1rem;
    height: 1rem;
    background: #fff;
    position: absolute;
    right: 100%;
    top: 50%;
    transform: translate3d(0, -50%, 0)
}

.gfield_checkbox > li input[type=checkbox]:checked + label:before {
    background: var(--highlight);
    border: 2px solid var(--black);
    box-shadow: inset 0 0 0 4px #fff
}

.no-touchevents .gfield_checkbox > li label:hover:before {
    background: rgba(0, 0, 0, .05);
    border: 2px solid #ccc
}

.gfield_radio > li {
    margin: .25rem 0
}

.gfield_radio > li label {
    padding: 0
}

.gfield_radio > li label:before {
    border: 2px solid #ccc;
    width: 1rem;
    height: 1rem;
    margin-right: .5rem;
    border-radius: 100%
}

.gfield_radio > li input[type=radio]:checked + label:before {
    box-shadow: inset 0 0 0 4px #fff;
    background: var(--highlight);
    border: 2px solid var(--black)
}

.no-touchevents .gfield_radio > li label:hover:before {
    background: rgba(0, 0, 0, .05);
    border: 2px solid #ccc
}

.gfield_error input[type=date], .gfield_error input[type=datetime-local], .gfield_error input[type=datetime], .gfield_error input[type=email], .gfield_error input[type=month], .gfield_error input[type=number], .gfield_error input[type=password], .gfield_error input[type=search], .gfield_error input[type=tel], .gfield_error input[type=text], .gfield_error input[type=time], .gfield_error input[type=url], .gfield_error input[type=week], .gfield_error select, .gfield_error textarea {
    border-color: var(--color-utility--danger);
    font-family: Quattrocento, Arial, Helvetica, sans-serif
}

.gfield_error .validation_message {
    background: var(--color-utility--danger);
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    padding: .25rem .5rem;
    color: #fff;
    font-weight: 400;
    display: inline-block;
    text-align: left;
    font-size: 1rem
}

@media screen and (min-width: 64em) {
    .gfield_error .validation_message {
        font-size: .9rem
    }
}

.validation_error {
    color: var(--color-utility--danger);
    font-weight: 400;
    margin-top: 1rem;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-size: 1rem
}

@media screen and (min-width: 64em) {
    .validation_error {
        font-size: .9rem
    }
}

.social-icons {
    margin: 0;
    padding: 0;
    list-style: none
}

.social-icons__item {
    padding: 0;
    display: inline-block;
    vertical-align: middle
}

.social-icons__item-link, [class*=social-icons__item-link--] {
    border-radius: 100%;
    width: 1.35rem;
    height: 1.35rem;
    background: var(--black);
    text-align: center;
    position: relative;
    padding: 50% 0;
    display: block
}

.social-icons__item-link [class*=core-icon--], [class*=social-icons__item-link--] [class*=core-icon--] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    fill: var(--black);
    width: 1rem;
    height: 1rem
}

.social-icons__item-link [class*=core-icon--] use, [class*=social-icons__item-link--] [class*=core-icon--] use {
    fill: var(--black)
}

.social-icons__item-link[href*="facebook.com"], [class*=social-icons__item-link--][href*="facebook.com"] {
    background: #3b5999
}

.social-icons__item-link[href*="facebook.com"] [class*=core-icon--], [class*=social-icons__item-link--][href*="facebook.com"] [class*=core-icon--] {
    width: 1rem;
    height: 1rem
}

.social-icons__item-link[href*="instagram.com"], [class*=social-icons__item-link--][href*="instagram.com"] {
    background: #e4405f
}

.social-icons__item-link[href*="instagram.com"] [class*=core-icon--], [class*=social-icons__item-link--][href*="instagram.com"] [class*=core-icon--] {
    width: 1rem;
    height: 1rem
}

.social-icons__item-link[href*="linkedin.com"], [class*=social-icons__item-link--][href*="linkedin.com"] {
    background: #0077b5
}

.social-icons__item-link[href*="linkedin.com"] [class*=core-icon--], [class*=social-icons__item-link--][href*="linkedin.com"] [class*=core-icon--] {
    width: 1rem;
    height: 1rem
}

.social-icons__item-link[href*="twitter.com"], [class*=social-icons__item-link--][href*="twitter.com"] {
    background: #55acee
}

.social-icons__item-link[href*="twitter.com"] [class*=core-icon--], [class*=social-icons__item-link--][href*="twitter.com"] [class*=core-icon--] {
    width: 1rem;
    height: 1rem
}

.social-icons__item-link[href*="youtube.com"], [class*=social-icons__item-link--][href*="youtube.com"] {
    background: #cd201f
}

.social-icons__item-link[href*="youtube.com"] [class*=core-icon--], [class*=social-icons__item-link--][href*="youtube.com"] [class*=core-icon--] {
    width: 1rem;
    height: 1rem
}

.social-icons.no-bg .social-icons__item-link, .social-icons.no-bg [class*=social-icons__item-link--] {
    background: transparent !important
}

.social-icons.no-bg .social-icons__item-link [class*=core-icon--] use, .social-icons.no-bg [class*=social-icons__item-link--] [class*=core-icon--] use {
    fill: var(--black);
    transition: fill .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.main-footer .social-icons.no-bg .social-icons__item-link, .main-footer .social-icons.no-bg [class*=social-icons__item-link--] {
    background: transparent !important
}

.main-footer .social-icons.no-bg .social-icons__item-link [class*=core-icon--] use, .main-footer .social-icons.no-bg [class*=social-icons__item-link--] [class*=core-icon--] use {
    fill: var(--blue-light)
}

.main-footer .social-icons li.label {
    color: #fff
}

.social-icons li.label {
    display: inline-block;
    vertical-align: middle;
    font-family: Mulish, Arial, Helvetica, sans-serif;
    font-weight: 600;
    font-size: .55rem;
    text-transform: uppercase;
    margin-right: .35rem;
    letter-spacing: 2px
}

.no-touchevents .social-icons.no-bg .social-icons__item-link:hover [class*=core-icon--] use, .no-touchevents .social-icons.no-bg [class*=social-icons__item-link--]:hover [class*=core-icon--] use {
    fill: var(--blue-light);
    transition: fill .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.no-touchevents .main-footer .social-icons.no-bg .social-icons__item-link:hover [class*=core-icon--] use, .no-touchevents .main-footer .social-icons.no-bg [class*=social-icons__item-link--]:hover [class*=core-icon--] use {
    fill: #fff
}

.social-sharing__list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: none
}

.social-sharing__list.show {
    display: block
}

.social-sharing__list-item {
    padding: 0;
    display: inline-block;
    vertical-align: middle
}

.social-sharing__email-form {
    display: none;
    margin: 1.5rem 0 0
}

.social-sharing__email-form.show {
    display: block
}

.social-sharing__email-form-title {
    margin: 0 0 .5rem;
    font-size: 1rem;
    font-weight: 400;
    font-style: normal;
    text-transform: none;
    color: var(--black)
}

.social-sharing__email-layout {
    display: flex;
    flex-flow: row
}

.social-sharing__email-layout-item--input {
    flex: 1;
    display: flex;
    padding: 0 1rem 0 0
}

.pagination--lazy {
    margin: 2rem 0 0
}

.pagination--lazy .pagination__button.loading {
    animation: breathe 1s infinite
}

.pagination--lazy .pagination__button.all-loaded, .pagination--lazy .pagination__button.loading {
    opacity: .5;
    pointer-events: none;
    cursor: not-allowed
}

@keyframes breathe {
    0% {
        opacity: .5
    }
    50% {
        opacity: .2
    }
    to {
        opacity: .5
    }
}

.page-title {
    text-align: center
}

@media screen and (min-width: 48em) {
    .page-title:after {
        z-index: 5;
        position: absolute;
        top: 100%;
        right: 0;
        transform: translate3d(-100%, -1.25rem, 0);
        display: block;
        width: 7rem;
        height: 7rem;
        opacity: .25;
        content: "";
        background: transparent url(../img/dots.svg) no-repeat 50%;
        background-size: contain;
        pointer-events: none
    }
}

.page-title [class*=container--] {
    position: relative;
    z-index: 10
}

.page-title.bg--gray-light {
    background: linear-gradient(180deg, var(--gray--light), hsla(0, 0%, 100%, 0))
}

.page-title__container {
    position: relative;
    z-index: 10
}

.page-title__subtitle {
    margin: 0 0 1rem;
    font-weight: 400;
    font-style: normal;
    color: #fff;
    text-transform: uppercase;
    padding: .5rem 1rem;
    background: grey;
    display: inline-block
}

.page-title__title {
    margin: 0;
    font-weight: 700;
    font-style: normal;
    color: #fff;
    text-transform: none;
    padding: 0
}

.page-title__content {
    color: #fff
}

.page-title__meta {
    list-style: none;
    padding: 0;
    margin: 0
}

.page-title__meta-item {
    padding: .5rem;
    color: #fff;
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: .8rem;
    text-transform: none;
    display: inline-block;
    vertical-align: middle
}

.page-title__meta-item-link {
    color: inherit
}

.no-touchevents .page-title__meta-item-link:hover {
    color: grey
}

.page-title:before {
    background: transparent;
    content: ""
}

.page-title:before, .page-title__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5
}

.page-title__bg {
    background-size: cover
}

.page-loader {
    background: var(--black);
    position: fixed;
    z-index: 10000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 1;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center
}

.page-loader.loaded {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
    transition: opacity .5s cubic-bezier(.2, 1, .3, 1) 0ms, transform .5s cubic-bezier(.2, 1, .3, 1) .5s
}

.page-loader__container {
    text-align: center
}

.page-loader__message, .page-loader__title {
    margin: 0;
    padding: 0
}

.page-loader__title {
    font-family: Mulish, Arial, Helvetica, sans-serif;
    text-transform: none;
    font-size: 1.6rem;
    font-weight: 900;
    letter-spacing: 0;
    color: var(--blue-light);
    line-height: 1;
    margin: 0 0 1rem
}

@media screen and (min-width: 48em) {
    .page-loader__title {
        font-size: 2.36859rem
    }
}

.page-loader__message {
    font-family: Quattrocento, Arial, Helvetica, sans-serif;
    text-transform: none;
    font-size: 1rem;
    font-weight: 400;
    color: #fff
}

.page-loader__icon {
    margin: 0 0 2rem;
    transform: scale(2)
}

.page-loader__icon-animation circle {
    fill: #fff !important
}

.home.static .page-wrapper {
    height: 100vh;
    display: flex;
    justify-content: space-between;
    flex-flow: column
}

.page-section.covid {
    background: rgba(255, 93, 93, .05);
    box-shadow: inset 0 25px 150px rgba(255, 93, 93, .35)
}

.covid-cell__box {
    position: relative;
    margin: 0 auto;
    width: 50%
}

@media screen and (min-width: 64em) {
    .covid-cell__box {
        width: inherit;
        margin: 0
    }
}

@keyframes float {
    50% {
        transform: scale(1.1) translate3d(-50%, -50%, 0)
    }
    0% {
        transform: scale(1) translate3d(-50%, -50%, 0)
    }
}

.covid-cell {
    animation: float 3s ease infinite;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 80%;
    transform: translate3d(-50%, -50%, 0);
    transform-origin: left
}

.positive-test {
    background: var(--navy)
}

.positive-test:after {
    display: block;
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%);
    border-width: 30px;
    border-left: 90px solid transparent;
    border-bottom: 50px solid transparent;
    border-right: 90px solid transparent;
    border-top: 50px solid transparent;
    border-top-color: var(--navy)
}

.positive-test h2, .positive-test h4 {
    color: #fff
}

.positive-test h4 {
    font-weight: 400
}

.positive-test .title .highlight--text {
    color: var(--green)
}

.positive-test .subtitle .highlight--text {
    color: var(--red)
}

.positive-test__icon {
    width: 4rem;
    margin: 0 auto
}

.status-block.positive .card-box__title {
    background: var(--green);
    box-shadow: 0 10px 0 0 rgba(0, 204, 170, .2)
}

.status-block.positive .status-list li:before {
    background: transparent url(../img/verified.svg) no-repeat 50%;
    background-size: contain;
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin: 0 .35rem -2px 0
}

.status-block.negative .card-box__title {
    background: var(--red);
    box-shadow: 0 10px 0 0 rgba(255, 93, 93, .2)
}

.status-block.negative .status-list li {
    padding: .5rem 0 .5rem .75rem;
    text-indent: -.65rem
}

.status-block.negative .status-list li:before {
    content: "";
    display: inline-block;
    vertical-align: top;
    border: 6px solid transparent;
    border-left: 6px solid var(--red);
    margin-top: .25rem;
    margin-right: .2rem
}

.status__layout {
    margin: 4rem 0 0
}

.status-image__wrapper {
    text-align: center
}

.status-image {
    display: inline-block
}

.status-list {
    list-style: none;
    margin: 0;
    padding: 0
}

.status-list li {
    border-bottom: 1px solid rgba(0, 0, 0, .175);
    padding: .5rem 0
}

.status-list li:last-child {
    padding-bottom: 0;
    border: none
}

.status-list__title {
    margin: 0 0 .75rem
}

.card-box {
    background: #fff;
    padding: 2rem;
    border-radius: 3px;
    box-shadow: 0 10px 20px 0 rgba(24, 41, 68, .1)
}

.card-box__title {
    color: #fff;
    margin: 0;
    border-radius: 3px 3px 0 0;
    padding: 1.25rem;
    position: relative;
    font-weight: 700
}

.card-box__title + .card-box {
    border-radius: 0 0 3px 3px
}

.card-box__subtitle {
    color: var(--black) !important
}

.benefit-list {
    margin: 4rem 0 0 !important
}

.benefit-item__icon {
    width: 6rem;
    margin: 0 0 1rem
}

.benefit-item__title {
    margin: 0 0 .5rem
}

.benefit-item__subtitle {
    margin: 0
}

[class^=cta-block--] {
    filter: grayscale(10%)
}

[class^=cta-block--] a {
    overflow: hidden;
    position: relative;
    border-radius: 3px;
    padding: 1.5rem;
    text-decoration: none;
    min-height: 20vh;
    display: flex;
    flex-flow: column;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50%;
    justify-content: flex-end;
    filter: saturate(1.3);
    transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms, box-shadow .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.cta-block__bg {
    z-index: 5;
    top: 97%;
    opacity: .65;
    transform: translateZ(0);
    transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.cta-block__bg, .cta-block__bg:after {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0
}

.cta-block__bg:after {
    content: "";
    bottom: 100%;
    display: block;
    background: var(--black);
    opacity: .35;
    transition: opacity .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.cta-block--1 a .cta-block__bg {
    background: linear-gradient(45deg, var(--red), var(--purple))
}

.cta-block--1 a {
    box-shadow: 0 20px 30px 0 rgba(69, 94, 238, .3)
}

.cta-block--2 a .cta-block__bg {
    background: linear-gradient(45deg, var(--pink), var(--orange))
}

.cta-block--2 a {
    box-shadow: 0 20px 30px 0 rgba(218, 47, 109, .3)
}

.cta-block--3 a .cta-block__bg {
    background: linear-gradient(45deg, var(--green), var(--blue-light))
}

.cta-block--3 a {
    box-shadow: 0 20px 30px 0 rgba(0, 204, 170, .3)
}

.cta-block--4 a .cta-block__bg {
    background: linear-gradient(45deg, var(--purple), var(--blue-light))
}

.cta-block--4 a {
    box-shadow: 0 20px 30px 0 rgba(69, 94, 238, .3)
}

@media only screen and (pointer: fine) {
    [class^=cta-block--] a:hover {
        transform: scale(1.1) translate3d(0, -5%, 0);
        transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms, box-shadow .5s cubic-bezier(.2, 1, .3, 1) 0ms
    }

    [class^=cta-block--] a:hover .cta-block__bg {
        transform: translate3d(0, -50%, 0);
        transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms
    }

    [class^=cta-block--] a:hover .cta-block__bg:after {
        opacity: 0;
        transition: opacity .5s cubic-bezier(.2, 1, .3, 1) 0ms
    }

    .cta-block--1 a:hover {
        box-shadow: 0 30px 45px 0 rgba(69, 94, 238, .18)
    }

    .cta-block--2 a:hover {
        box-shadow: 0 30px 45px 0 rgba(218, 47, 109, .18)
    }

    .cta-block--3 a:hover {
        box-shadow: 0 30px 45px 0 rgba(0, 204, 170, .18)
    }

    .cta-block--4 a:hover {
        box-shadow: 0 30px 45px 0 rgba(69, 94, 238, .18)
    }
}

.cta__subtitle, .cta__title {
    margin: 0;
    color: #fff;
    text-shadow: -2px 2px 9px rgba(0, 0, 0, .5)
}

.cta-block__content {
    position: relative;
    z-index: 10
}

[class^=graphic--] {
    position: relative;
    z-index: 5;
    mix-blend-mode: multiply;
    opacity: 1;
    pointer-events: none
}

.graphic--top {
    position: absolute;
    top: 0;
    right: 0;
    width: 4rem
}

@media screen and (min-width: 48em) {
    .graphic--top {
        width: 6rem
    }
}

@media screen and (min-width: 64em) {
    .graphic--top {
        width: 8rem
    }
}

.graphic--bottom {
    position: absolute;
    left: 0;
    bottom: -2rem;
    width: 3rem
}

@media screen and (min-width: 48em) {
    .graphic--bottom {
        width: 5rem
    }
}

@media screen and (min-width: 64em) {
    .graphic--bottom {
        width: 6rem;
        bottom: 2rem
    }
}

.product-grid__title {
    font-weight: 400
}

.product-block {
    display: flex;
    flex-flow: column wrap
}

.product-block .card-box {
    border-radius: 0 0 3px 3px;
    display: flex;
    flex-flow: column wrap;
    flex: 1;
    justify-content: space-between
}

.product-title {
    margin: 0;
    padding-top: .5rem;
    position: relative
}

.product-title:before {
    position: absolute;
    bottom: 100%;
    left: 0;
    content: "";
    display: inline-block;
    width: 2rem;
    height: 2px;
    background: var(--blue-light);
    margin: 0
}

.product-title a {
    color: inherit;
    font-weight: 400;
    line-height: 1.35;
    text-decoration: none;
    border-bottom: 1px solid var(--blue-light);
    transition: color .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.no-touchevents .product-title a:hover {
    color: var(--blue-light);
    transition: color .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.product-subtitle {
    margin: .25rem 0 0;
    font-weight: 400;
    color: var(--blue-light);
    font-size: .9rem
}

.product-image__wrapper {
    margin: 0;
    padding: 0;
    position: relative;
    overflow: hidden
}

.product-image__wrapper:before {
    width: 100%;
    height: 50%;
    content: "";
    display: block;
    position: absolute;
    bottom: .5rem;
    left: 0;
    background: linear-gradient(90deg, var(--purple), var(--blue-light));
    opacity: .8;
    overflow: hidden;
    z-index: 10;
    transform: translate3d(0, 100%, 0);
    transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.no-touchevents .product-image__wrapper:hover .product-image {
    transform: scale(1.2);
    transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.no-touchevents .product-image__wrapper:hover:before {
    transform: translate3d(0, 90%, 0);
    transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.product-image {
    border-radius: 3px 3px 0 0;
    display: block;
    transform: scale(1);
    z-index: 5;
    position: relative;
    transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.product-features__block .features.ul-reset {
    padding-left: 2rem
}

.product-features__block .features.ul-reset li {
    padding: .5rem 0;
    text-indent: -1rem
}

.product-features__block .features.ul-reset li:before {
    content: "";
    width: 0;
    height: 0;
    display: inline-block;
    vertical-align: top;
    position: relative;
    top: 7px;
    border: 7px solid transparent;
    border-left: 7px solid var(--green);
    margin: 0 .25rem 0 0
}

.product-features__block .features.ul-reset li:first-child {
    padding-top: 0;
    border: none
}

.pipeline {
    display: flex
}

.pipeline li {
    flex: 0 0 33.3333%;
    padding: .2rem;
    position: relative
}

.pipeline li:first-child {
    padding-left: 0
}

.pipeline li:last-child {
    padding-right: 0
}

.pipeline li .phase-title {
    margin: .25rem 0 0
}

.pipeline li span {
    display: block;
    height: 15px;
    border-radius: 3px;
    box-shadow: inset 0 0 0 2px var(--green)
}

.pipeline li.current:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    top: -.5rem;
    left: 0;
    border: 8px solid transparent;
    border-top: 8px solid var(--green)
}

.pipeline li.active span {
    background: linear-gradient(90deg, var(--green), var(--green));
    box-shadow: none
}

.team-member {
    padding: 1rem 0
}

@media screen and (min-width: 64em) {
    .team-member {
        padding: 1rem
    }
}

@media screen and (min-width: 100em) {
    .team-member {
        padding: 1rem
    }
}

@media screen and (min-width: 110em) {
    .team-member {
        padding: 2rem
    }
}

.team-member__image {
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start
}

@media screen and (min-width: 64em) {
    .team-member__image {
        justify-content: center
    }
}

.team-member__image img {
    display: block;
    padding: 1rem
}

.team-member__bio {
    padding: 1rem 0 0
}

@media screen and (min-width: 100em) {
    .team-member__bio {
        padding: 0 0 0 1rem
    }
}

@media screen and (min-width: 110em) {
    .team-member__bio {
        padding: 0 0 0 2rem
    }
}

.team-member__name {
    margin: 0;
    padding: 1rem 0 0;
    position: relative
}

.team-member__name:before {
    position: absolute;
    bottom: 100%;
    left: 0;
    content: "";
    display: inline-block;
    width: 2rem;
    height: 2px;
    background: var(--blue-light);
    margin: 0
}

.team-member__title {
    margin: 0;
    font-weight: 400;
    color: var(--blue-light)
}

.media-list__item {
    border-bottom: 1px solid #d8dde2
}

.media-list__item:last-child {
    border: none
}

.media-list__link {
    display: flex;
    flex-flow: row;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 1rem 0;
    text-decoration: none !important
}

.media-list__link [class*=core-icon--] {
    margin: .1rem .5rem 0 0;
    width: 1.35rem
}

.media-list__link [class*=core-icon--] use {
    fill: var(--black);
    stroke: var(--black);
    stroke-width: 2px
}

.media-list__link span {
    transform: translateZ(0);
    border-bottom: 1px solid var(--blue-light);
    transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms, color .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.media-list__link p {
    margin: .25rem 0 0;
    text-decoration: none;
    line-height: 1.1
}

.no-touchevents .media-list__link:hover span {
    transform: translate3d(.5rem, 0, 0);
    color: var(--blue-dark);
    transition: transform .5s cubic-bezier(.2, 1, .3, 1) 0ms, color .5s cubic-bezier(.2, 1, .3, 1) 0ms
}

.post-block__image {
    margin: 0
}

.filters__item {
    margin: 0 0 1rem
}

.filters__item:last-of-type {
    margin: 0
}

@media screen and (min-width: 48em) {
    .filters__item {
        padding: 0 .5rem .5rem
    }
}

@media screen and (min-width: 100em) {
    .filters__item {
        padding: 0 1rem
    }
}

.filters__item .year {
    padding-left: 5px
}

#page-filters {
    height: 0;
    opacity: 0;
    overflow: hidden
}

#page-filters.show {
    height: auto;
    opacity: 1;
    overflow: visible;
    padding-top: 1rem
}

@media screen and (min-width: 64em) {
    #page-filters {
        height: auto;
        opacity: 1;
        overflow: visible;
        padding-top: 0
    }
}

@media screen and (min-width: 64em) {
    .page-filters__toggle-wrapper {
        display: none
    }
}

.post-loader {
    display: none
}

.post-loader.show {
    display: block
}

.post-loader.show .linear-loader span {
    animation: linear-loader 1s infinite forwards
}

.linear-loader {
    height: 10px;
    width: 100%;
    border-radius: 3px;
    background: var(--gray--light);
    margin: .5rem 0 0;
    border: 1px solid #d8dde2
}

.linear-loader span {
    width: 20%;
    display: block;
    height: 10px;
    border-radius: 3px;
    background: linear-gradient(90deg, var(--green), var(--blue-light))
}

@keyframes linear-loader {
    0% {
        transform: translateZ(0);
        background: linear-gradient(90deg, var(--green), var(--blue-light))
    }
    50% {
        transform: translate3d(400%, 0, 0);
        background: linear-gradient(90deg, var(--blue-light), var(--green))
    }
    to {
        transform: translateZ(0);
        background: linear-gradient(90deg, var(--green), var(--blue-light))
    }
}
.footer span {
    color: #2090ff;
    font-size: 0.9rem;
}
