* {
    margin: 0;
    padding: 0
}
*, *::before, *::after { box-sizing: border-box }
html {
    font-size: 62.5%;
    line-height: 1.5;
    -webkit-text-size-adjust: 100%
}
body {
    min-height: 100vh;
    overflow-y: scroll
}
main { display: block }
img {
    border: 0;
    max-width: 100%;
    vertical-align: top
}
h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit
}
b, strong { font-weight: bolder }
ul, ol { list-style: none }
blockquote, q { quotes: none }
table {
    border-collapse: collapse;
    border-spacing: 0
}
input, textarea, select, button {
    background: none;
    border: 0;
    color: inherit;
    font-family: inherit;
    font-size: 100%
}
[type='search'] { -webkit-appearance: textfield }
button, [type='submit'] {
    -webkit-appearance: none;
    background: none;
    cursor: pointer;
    font-weight: inherit;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}
svg {
    fill: currentcolor;
    height: 1em;
    display: block
}
p+p { margin-top: 1.5em }

.sr-only, .form\:minimal .form__label {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px
}

:root {
    --site-gutter: 6vw;
    --push: 3.6rem;
    --space-1: .8rem;
    --space-2: 1.6rem;
    --space-3: 2.4rem;
    --space-4: 3.2rem;
    --space-5: 4rem;
    --space-6: 4.8rem;
    --space-7: 5.6rem;
    --space-8: 6.4rem;
    --space-9: 7.2rem;
    --input--placeholder-opacity: 0.4;
    --line-height: 1.5;
    --text-crop-top: .65;
    --text-crop-bottom: .77
}
@media (min-width: 861px) {
    :root {
        --push: 6rem;
        --space-1: 1rem;
        --space-2: 2rem;
        --space-3: 3rem;
        --space-4: 4rem;
        --space-5: 5rem;
        --space-6: 6rem;
        --space-7: 7rem;
        --space-8: 8rem;
        --space-9: 9rem
    }
}

body {
    background-color:#fff;
    color:#000;
    font-size:1.6rem;
    font-family:"Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased; text-rendering:optimizelegibility;
}
a {
    color: #394553;
    text-decoration: none
}
a:hover { color: #242c35 }

.ratio, .thumbnail {
    display:block;
    position:relative;
    overflow:hidden
}
.ratio::before, .thumbnail::before {
    content:'';
    display:block;
    padding-bottom:100%
}
.ratio>*, .thumbnail>* {
    width:100%;
    height:100%
}
.ratio>*, .thumbnail>*, .button--ghost::after, a.button--ghost::after, .input\:toggle input~i::after, .modal-overlay,
.modal__close::before, .parallax, .parallax::before, .social-icons a::before, .mobile-nav-toggle::before {
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0
}
.bg\:cover, .hero, .hero--mini, .parallax {
    background-size:cover;
    background-position:50% 50%
}
.ratio>img, .thumbnail>img {
    -o-object-fit:cover; object-fit:cover;
    -o-object-position:50% 50%; object-position:50% 50%
}

.mobile-header { box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06) }
.modal { box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) }

.width {
    max-width:1000px;
    width:calc(100% - 6vw);
    margin:0 auto
}
.width .width { width:auto }
.width--ch {
    max-width:80ch;
    padding-left:20px;
    padding-right:20px
}
.width--narrow { max-width:800px }
.width--full { width:100% }

@supports (padding: 0px) {
    @media only screen and (min-device-width: 375px) and (max-device-width: 812px) and (-webkit-min-device-pixel-ratio: 3) and (orientation: landscape) {
        body .width, body .mobile-header, body .mobile-nav .nav__link, body .mobile-nav .nav__dropdown a {
            padding-left: env(safe-area-inset-left);
            padding-right: env(safe-area-inset-right)
        }
        body .width { width:auto }
        body .width .width {
            padding-left:0;
            padding-right:0
        }
    }
}

@media (max-width: 420px) { .hide\:xs { display:none !important } }
@media (min-width: 421px) { .hide\:a-xs { display:none !important } }
@media (max-width: 640px) { .hide\:sm { display:none !important } }
@media (min-width: 641px) { .hide\:a-sm { display:none !important } }
@media (max-width: 860px) { .hide\:md { display:none !important } }
@media (min-width: 861px) { .hide\:a-md { display:none !important } }
@media (max-width: 1080px) { .hide\:lg { display:none !important } }
@media (min-width: 1081px) { .hide\:a-lg { display:none !important } }
.hide, .hidden { display:none !important }

@media (min-width: 821px) {
    .header\:mobile { display:none !important }
}
@media (max-width: 820px) {
    .header\:desktop { display:none !important }
    .mobile-nav-active body { overflow:hidden }
}

.format>* {
    margin-top:1.5em;
    margin-bottom:1.5em
}
.format h1, .format h2, .format h3, .format h4 {
    margin-top: 2.2em;
    font-weight: bold
}
.format>*:first-child { margin-top:0 }
.format>*:last-child, .format h1, .format h2, .format h3, .format h4 { margin-bottom: 0 }
.format blockquote {
    background-color: #f1f1f1;
    padding: 1rem;
    border-left: 4px solid;
    border-left-color: #d1d1d1
}

.ta\:center { text-align:center }
.ta\:left { text-align:left }
.ta\:right { text-align:right }

@media (min-width: 421px) {
    .sm__ta\:center { text-align: center }
    .sm__ta\:left { text-align: left }
    .sm__ta\:right { text-align: right }
}

@media (min-width: 641px) {
    .md__ta\:center { text-align: center }
    .md__ta\:left { text-align: left }
    .md__ta\:right { text-align: right }
}

@media (min-width: 861px) {
    .lg__ta\:center { text-align: center }
    .lg__ta\:left { text-align: left }
    .lg__ta\:right { text-align: right }
}

.fw\:100 { font-weight: 100 }
.fw\:200 { font-weight: 200 }
.fw\:300, .h2, .section--content h2, .h3, .h4 { font-weight: 300 }
.fw\:400, .fw\:normal { font-weight: 400 }
.fw\:500 { font-weight: 500 }
.fw\:600 { font-weight: 600 }
.fw\:700, .fw\:bold { font-weight: 700 }
.fw\:800 { font-weight: 800 }
.fw\:900 { font-weight: 900 }

.fs\:-2 { font-size: 1.2rem }
.fs\:-1 { font-size: 1.4rem }
.fs\:0 { font-size: 1.6rem }
.fs\:1 { font-size: 1.8rem }
.fs\:2, .h4 { font-size: 2rem }
.fs\:3, .format h4 {
    font-size: 2.4rem;
    line-height: 1.38;
    --line-height: 1.38;
    --fluid-max: 24;
    --fluid-min: 21
}
.fs\:4, .format h3, .h3 {
    font-size: 2.8rem;
    line-height: 1.35;
    --line-height: 1.35;
    --fluid-max: 28;
    --fluid-min: 24
}
.fs\:5, .h2, .section--content h2 {
    font-size: 3.4rem;
    line-height: 1.3;
    --line-height: 1.3;
    --fluid-max: 34;
    --fluid-min: 27
}
.fs\:6, .format h2, .page-header__title {
    font-size: 4.2rem;
    line-height: 1.2;
    --line-height: 1.2;
    --fluid-max: 42;
    --fluid-min: 30
}
.fs\:7, .format h1 {
    font-size: 4.8rem;
    line-height: 1.18;
    --line-height: 1.18;
    --fluid-max: 48;
    --fluid-min: 35
}
.fs\:8, .h1 {
    font-size: 6.4rem;
    line-height: 1.15;
    --line-height: 1.15;
    --fluid-max: 64;
    --fluid-min: 40
}
.fs\:9 {
    font-size: 8.5rem;
    line-height: 1.1;
    --line-height: 1.1;
    --fluid-max: 85;
    --fluid-min: 45
}

@media only screen and (max-width: 549px) {
    .fs\:3, .format h4, .fs\:4, .format h3, .h3, .fs\:5, .h2, .section--content h2, .fs\:6, .format h2, .page-header__title, .fs\:7,
    .format h1, .fs\:8, .h1, .fs\:9 {
        font-size: calc(var(--fluid-min) * 0.1rem)
    }
}

@media only screen and (min-width: 550px) and (max-width: 999px) {
    .fs\:3, .format h4, .fs\:4, .format h3, .h3, .fs\:5, .h2, .section--content h2, .fs\:6, .format h2, .page-header__title, .fs\:7,
    .format h1, .fs\:8, .h1, .fs\:9 {
        font-size: calc(calc(var(--fluid-min) * 0.1rem) + (var(--fluid-max) - var(--fluid-min)) * ((100vw - 550px) / 450))
    }
}

@media only screen and (min-width: 1000px) {
    .fs\:3, .format h4, .fs\:4, .format h3, .h3, .fs\:5, .h2, .section--content h2, .fs\:6, .format h2, .page-header__title, .fs\:7,
    .format h1, .fs\:8, .h1, .fs\:9 {
        font-size: calc(var(--fluid-max) * 0.1rem)
    }
}

@supports (--css: var) {
    .text-crop::before, .format h1::before, .format h2::before, .format h3::before, .format h4::before,
    .page-header__title::before, .h1::before, .h2::before, .section--content h2::before, .h3::before {
        content: '';
        display: block;
        height: .01px;
        margin-bottom: calc((var(--text-crop-top) - var(--line-height)) * 0.5em)
    }
    .text-crop::after, .format h1::after, .format h2::after, .format h3::after, .format h4::after,
    .page-header__title::after, .h1::after, .h2::after, .section--content h2::after, .h3::after {
        content: '';
        display: block;
        height: .01px;
        margin-top: calc((var(--text-crop-bottom) - var(--line-height)) * 0.5em)
    }
}

.tt\:uppercase, .h2, .section--content h2, .h3, .h4 { text-transform: uppercase }
.tt\:none { text-transform: none }

.link__td\:underline a, .link-hover__td\:underline a:hover { text-decoration: underline }

.gap\:0 {
    margin: 0;
    --row-gap: 0;
    --gap: 0
}
.gap\:0>* { padding: 0 }
.gap\:1 {
    margin: -1rem;
    --row-gap: 1rem;
    --gap: 1rem
}
.gap\:1>* { padding: 1rem }
.gap\:2 {
    margin: -2rem;
    --row-gap: 2rem;
    --gap: 2rem
}
.gap\:2>* { padding: 2rem }
.gap\:3 {
    margin: -3rem;
    --row-gap: 3rem;
    --gap: 3rem
}
.gap\:3>* { padding: 3rem }
.gap\:4 {
    margin: -4rem;
    --row-gap: 4rem;
    --gap: 4rem
}
.gap\:4>* { padding: 4rem }
.gap\:5 {
    margin: -5rem;
    --row-gap: 5rem;
    --gap: 5rem
}
.gap\:5>* { padding: 5rem }
.gap\:6 {
    margin: -6rem;
    --row-gap: 6rem;
    --gap: 6rem
}
.gap\:6>* { padding: 6rem }
.gap\:7 {
    margin: -7rem;
    --row-gap: 7rem;
    --gap: 7rem
}
.gap\:7>* { padding: 7rem }
.gap\:8 {
    margin: -8rem;
    --row-gap: 8rem;
    --gap: 8rem
}
.gap\:8>* { padding: 8rem }
.gap\:9 {
    margin: -9rem;
    --row-gap: 9rem;
    --gap: 9rem
}
.gap\:9>* { padding: 9rem }
.gap\:push {
    margin: -6rem;
    --row-gap: 6rem;
    --gap: 6rem
}
.gap\:push>* { padding: 6rem }
.row-gap\:0 { --row-gap: 0px }
.row-gap\:1 { --row-gap: var(--space-1) }
.row-gap\:2 { --row-gap: var(--space-2) }
.row-gap\:3 { --row-gap: var(--space-3) }
.row-gap\:4 { --row-gap: var(--space-4) }
.row-gap\:5 { --row-gap: var(--space-5) }
.row-gap\:6 { --row-gap: var(--space-6) }
.row-gap\:7 { --row-gap: var(--space-7) }
.row-gap\:8 { --row-gap: var(--space-8) }
.row-gap\:9 { --row-gap: var(--space-9) }
.row-gap\:push { --row-gap: var(--push) }
.gap-wrap::before, .gap-wrap::after {
    content:'';
    display:block;
    height:.01px
}
[class*="gap:"] {
    margin: calc(var(--row-gap) * -1) calc(var(--gap) * -1);
    margin-right:0;
    margin-bottom:0
}
[class*="gap:"]>* {
    padding: var(--row-gap) var(--gap);
    padding-right:0;
    padding-bottom:0
}
.grid, .fluid-grid, .fixed-grid {
    display:-webkit-flex; display:flex;
    -webkit-flex-wrap:wrap; flex-wrap:wrap
}
.grid>* {
    -webkit-flex:0 0 auto; flex:0 0 auto;
    width:100%
}
.fixed-grid {
    -webkit-flex-basis:100px; flex-basis:100px;
    -webkit-justify-content:center; justify-content:center
}
.fixed-grid>* {
    -webkit-flex:0 1 auto; flex:0 1 auto;
    -webkit-flex-basis:inherit; flex-basis:inherit
}
.fluid-grid {
    --fluid-width: 250px;
    -webkit-flex-basis:250px; flex-basis:250px
}
.fluid-grid>* {
    -webkit-flex:1 0 auto; flex:1 0 auto;
    -webkit-flex-basis:inherit; flex-basis:inherit
}
.fluid-grid>:empty { padding-top:0 !important }
@supports (grid-area: auto) {
    .grid, .fluid-grid {
        display:grid;
        grid-gap: var(--row-gap, 0) var(--gap, 0);
        gap: var(--row-gap, 0) var(--gap, 0);
        grid-template-columns: repeat(var(--columns, 1), 1fr);
        margin:0 !important
    }
    .grid>*, .fluid-grid>* {
        padding:0;
        max-width: calc(100vw - var(--site-gutter));
        min-width:0;
        width:auto !important
    }
    .fluid-grid { grid-template-columns: repeat(auto-fill, minmax(var(--fluid-width), 1fr)) }
    .fluid-grid>:empty { display:none }
}
.grid\:1 { --columns: 1 }
.grid\:1>* { width: 100% }
.grid\:2 { --columns: 2 }
.grid\:2>* { width: 50% }
.grid\:3 { --columns: 3 }
.grid\:3>* { width: 33.33333% }
.grid\:4 { --columns: 4 }
.grid\:4>* { width: 25% }
.grid\:5 { --columns: 5 }
.grid\:5>* { width: 20% }

@media (min-width: 421px) {
    .sm__grid\:1 { --columns: 1 }
    .sm__grid\:1>* { width: 100% }
    .sm__grid\:2 { --columns: 2 }
    .sm__grid\:2>* { width: 50% }
    .sm__grid\:3 { --columns: 3 }
    .sm__grid\:3>* { width: 33.33333% }
    .sm__grid\:4 { --columns: 4 }
    .sm__grid\:4>* { width: 25% }
    .sm__grid\:5 { --columns: 5 }
    .sm__grid\:5>* { width: 20% }
}

@media (min-width: 641px) {
    .md__grid\:1 { --columns: 1 }
    .md__grid\:1>* { width: 100% }
    .md__grid\:2 { --columns: 2 }
    .md__grid\:2>* { width: 50% }
    .md__grid\:3 { --columns: 3 }
    .md__grid\:3>* { width: 33.33333% }
    .md__grid\:4 { --columns: 4 }
    .md__grid\:4>* { width: 25% }
    .md__grid\:5 { --columns: 5 }
    .md__grid\:5>* { width: 20% }
}

@media (min-width: 861px) {
    .lg__grid\:1 { --columns: 1 }
    .lg__grid\:1>* { width: 100% }
    .lg__grid\:2 { --columns: 2 }
    .lg__grid\:2>* { width: 50% }
    .lg__grid\:3 { --columns: 3 }
    .lg__grid\:3>* { width: 33.33333% }
    .lg__grid\:4 { --columns: 4 }
    .lg__grid\:4>* { width: 25% }
    .lg__grid\:5 { --columns: 5 }
    .lg__grid\:5>* { width: 20% }
}

@media (min-width: 1081px) {
    .xl__grid\:1 { --columns: 1 }
    .xl__grid\:1>* { width: 100% }
    .xl__grid\:2 { --columns: 2 }
    .xl__grid\:2>* { width: 50% }
    .xl__grid\:3 { --columns: 3 }
    .xl__grid\:3>* { width: 33.33333% }
    .xl__grid\:4 { --columns: 4 }
    .xl__grid\:4>* { width: 25% }
    .xl__grid\:5 { --columns: 5 }
    .xl__grid\:5>* { width: 20% }
}

.short_desc h3 { font-weight:bold; }
.short_desc > p { min-height:96px; }

.flex {
    display:-webkit-flex; display:flex;
    -webkit-align-items:center; align-items:center
}
.flex>* {
    -webkit-flex:0 1 auto; flex:0 1 auto;
    min-width:0
}
.flex--inline { display:-webkit-inline-flex; display:inline-flex }
.flex--equal>* { -webkit-flex:1 1 1px; flex:1 1 1px }

.ai\:start { -webkit-align-items:flex-start; align-items:flex-start }
.ai\:center { -webkit-align-items:center; align-items:center }
.ai\:end { -webkit-align-items:flex-end; align-items:flex-end }
.ai\:stretch { -webkit-align-items:stretch; align-items:stretch }
.jc\:start { -webkit-justify-content:flex-start; justify-content:flex-start }
.jc\:center { -webkit-justify-content:center; justify-content:center }
.jc\:end { -webkit-justify-content:flex-end; justify-content:flex-end }
.jc\:around { -webkit-justify-content:space-around; justify-content:space-around }
.jc\:between { -webkit-justify-content:space-between; justify-content:space-between }
.fd\:column { -webkit-flex-direction:column; flex-direction:column }
.fw\:wrap { -webkit-flex-wrap:wrap; flex-wrap:wrap; }
.flex\:00, .flex_\:00>* { -webkit-flex:0 0 auto; flex:0 0 auto }
.flex\:10, .flex_\:10>* { -webkit-flex:1 0 auto; flex:1 0 auto }
.flex\:11, .flex_\:11>* { -webkit-flex:1 1 auto; flex:1 1 auto }
.flex\:01, .flex_\:01>* { -webkit-flex:0 1 auto; flex:0 1 auto }
.flex\:99 { -webkit-flex:9999 1 auto; flex:9999 1 auto }

@media (min-width: 421px) {
    .sm__fd\:row {
        -webkit-flex-direction: row;
        flex-direction: row
    }
    .sm__fd\:column {
        -webkit-flex-direction: column;
        flex-direction: column
    }
}

@media (min-width: 641px) {
    .md__fd\:row {
        -webkit-flex-direction: row;
        flex-direction: row
    }
    .md__fd\:column {
        -webkit-flex-direction: column;
        flex-direction: column
    }
}

@media (min-width: 861px) {
    .lg__fd\:row {
        -webkit-flex-direction: row;
        flex-direction: row
    }
    .lg__fd\:column {
        -webkit-flex-direction: column;
        flex-direction: column
    }
}

.cells {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}
.cells>* {
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
    width: 100%
}
.cells>*:empty { padding-top: 0 }
.w\:10 { width: 10% }
.w\:20 { width: 20% }
.w\:25 { width: 25% }
.w\:30 { width: 30% }
.w\:40 { width: 40% }
.w\:50 { width: 50% }
.w\:60 { width: 60% }
.w\:70 { width: 70% }
.w\:75 { width: 75% }
.w\:80 { width: 80% }
.w\:90 { width: 90% }
.w\:100 { width: 100% }

@media (min-width: 421px) {
    .sm__w\:10 { width: 10% }
    .sm__w\:20 { width: 20% }
    .sm__w\:25 { width: 25% }
    .sm__w\:30 { width: 30% }
    .sm__w\:40 { width: 40% }
    .sm__w\:50 { width: 50% }
    .sm__w\:60 { width: 60% }
    .sm__w\:70 { width: 70% }
    .sm__w\:75 { width: 75% }
    .sm__w\:80 { width: 80% }
    .sm__w\:90 { width: 90% }
    .sm__w\:100 { width: 100% }
}

@media (min-width: 641px) {
    .md__w\:10 { width: 10% }
    .md__w\:20 { width: 20% }
    .md__w\:25 { width: 25% }
    .md__w\:30 { width: 30% }
    .md__w\:40 { width: 40% }
    .md__w\:50 { width: 50% }
    .md__w\:60 { width: 60% }
    .md__w\:70 { width: 70% }
    .md__w\:75 { width: 75% }
    .md__w\:80 { width: 80% }
    .md__w\:90 { width: 90% }
    .md__w\:100 { width: 100% }
}

@media (min-width: 861px) {
    .lg__w\:10 { width: 10% }
    .lg__w\:20 { width: 20% }
    .lg__w\:25 { width: 25% }
    .lg__w\:30 { width: 30% }
    .lg__w\:40 { width: 40% }
    .lg__w\:50 { width: 50% }
    .lg__w\:60 { width: 60% }
    .lg__w\:70 { width: 70% }
    .lg__w\:75 { width: 75% }
    .lg__w\:80 { width: 80% }
    .lg__w\:90 { width: 90% }
    .lg__w\:100 { width: 100% }
}

@media (min-width: 1081px) {
    .xl__w\:10 { width: 10% }
    .xl__w\:20 { width: 20% }
    .xl__w\:25 { width: 25% }
    .xl__w\:30 { width: 30% }
    .xl__w\:40 { width: 40% }
    .xl__w\:50 { width: 50% }
    .xl__w\:60 { width: 60% }
    .xl__w\:70 { width: 70% }
    .xl__w\:75 { width: 75% }
    .xl__w\:80 { width: 80% }
    .xl__w\:90 { width: 90% }
    .xl__w\:100 { width: 100% }
}

.d\:block { display: block }
.d\:inline { display: inline }
.d\:inline-block { display: inline-block }
.d\:none, body [data-slide-me] { display: none }
.h\:100 { min-height: 100% }
.h\:100vh { min-height: 100vh }
.p\:relative { position: relative }
.ws\:nowrap { white-space: nowrap }

.button, a.button, .wp-core-ui .button {
    border-radius: 0;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-weight: bold;
    line-height: 1.2;
    padding: 1em 3em;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: all 0.1s ease-in-out;
    vertical-align: middle;
    text-transform: uppercase;
    white-space: nowrap
}
.button:active, a.button:active { top: 1px }
.button--primary, a.button--primary, .button-primary, .wp-core-ui .button-primary, a.acf-button { background-color: #394553 }
.button--primary:hover, a.button--primary:hover, .button-primary:hover, .wp-core-ui .button-primary:hover { background-color: #506074 }

.wp-block-button.button--primary {
    text-transform:uppercase;
    margin-top:2em;
}
.wp-block-button.button--primary a.wp-block-button__link, .wp-block-button__link.has-white-color {
    color:#fff !important;
}
@media (max-width: 767px) {
    .wp-block-button a.wp-block-button__link {
        padding-left:30px;
        padding-right:30px;
    }
}
.button--secondary, a.button--secondary { background: #000 }
.button--minimal, a.button--minimal {
    background-color: #e3e3e3;
    color: #1f1f1f
}
.button--minimal:hover, a.button--minimal:hover { background-color: #d1d1d1 }
.button--ghost, a.button--ghost {
    color: inherit;
    transition: none
}
.button--ghost::after, a.button--ghost::after {
    content: '';
    border-radius: inherit;
    border: 2px solid currentColor;
    opacity: 0.7;
    transition: opacity 0.2s ease-in-out
}
.button--ghost:hover, a.button--ghost:hover { background: currentColor }
.button--ghost:hover .button__text, a.button--ghost:hover .button__text { color: #fff }
.wp-block-button a.wp-block-button__link {
    border:2px solid #394553;
    color:#394553;
    font-weight:bold;
    border-radius:0;
    background-color:transparent;
    padding:10px 60px;
}
.wp-block-button a:hover.wp-block-button__link {
    border:2px solid #394553;
    background:#394553;
    color:#fff;
}

.err {
    color:red;
    margin-bottom:1em;
}
.subscribe_form .err { display:none; }
.subscribe_form h2 {
    margin-top:1.5em;
    margin-bottom:0.5em;
}
.form__row { margin-bottom: 14px }
.form__row_first, .form__row_last, .form__row.first, .form__row.last {
    float:left;
    width:49%;
}
.form__row_last, .form__row.last {
    margin-left:2%;
    clear:right;
}
.form__label { display: block }
.subscribe_form .input__label {
    text-transform:uppercase;
    font-size:13px;
    font-weight:bold;
    padding-left:12px;
}
.form--narrow {
    margin: 0 auto;
    max-width: 540px
}
.checkbox__row { margin-top:1.5em;}
.checkbox__row input {
    display:inline-block;
    width:5%;
    vertical-align:top;
}
.checkbox__row label {
    display:inline-block;
    width:92%;
    vertical-align:top;
    margin-top:-6px;
}
@media (max-width: 640px) {
    .form\:horizontal .form__label {
        margin-bottom: .4em;
        font-weight: 500
    }
}

@media (min-width: 641px) {
    .form\:horizontal .form__row {
        display: -webkit-flex;
        display: flex
    }
    .form\:horizontal .form__row>* {
        -webkit-flex: 1 1 100%;
        flex: 1 1 100%
    }
    .form\:horizontal .form__row>:only-child, .form\:horizontal .form__submit>:only-child { margin-left: 140px }
    .form\:horizontal .form__label {
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto;
        line-height: 50px;
        padding-right: 10px;
        text-align: right;
        width: 140px
    }
}

.form\:vertical .form__label { margin-bottom: 0.25em }
.form\:minimal .input\:check+.form__label { display: inline-block }
[data-animate-label], .login-username, .login-password, #lostpasswordform p:first-child { position: relative }
[data-animate-label] ::-webkit-input-placeholder, .login-username ::-webkit-input-placeholder,
    .login-password ::-webkit-input-placeholder, #lostpasswordform p:first-child ::-webkit-input-placeholder { color: rgba(0, 0, 0, 0) }
[data-animate-label] :-ms-input-placeholder, .login-username :-ms-input-placeholder,
    .login-password :-ms-input-placeholder, #lostpasswordform p:first-child :-ms-input-placeholder { color: rgba(0, 0, 0, 0) }
[data-animate-label] ::-ms-input-placeholder, .login-username :-ms-input-placeholder,
    .login-password :-ms-input-placeholder, #lostpasswordform p:first-child :-ms-input-placeholder { color: rgba(0, 0, 0, 0) }
[data-animate-label] ::placeholder, .login-username ::placeholder, .login-password ::placeholder,
    #lostpasswordform p:first-child ::placeholder { color: rgba(0, 0, 0, 0) }
[data-animate-label] .form__label, .login-username label, .login-password label, #lostpasswordform label {
    left: 1em;
    line-height: 50px;
    margin: 0;
    max-width: calc(100% - 2em);
    opacity: 0.4;
    overflow: hidden;
    pointer-events: none;
    position: absolute;
    text-overflow: ellipsis;
    top: 0%;
    transition: all 0.2s linear;
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    white-space: nowrap;
    z-index: 1
}
#lostpasswordform {
    margin-top:40px;
    overflow:visible;
}
.login-username label, .login-password label,  #lostpasswordform label {
    text-transform:uppercase;
}
.login h1 {
    text-align:left;
}
.login h1 a {
    display:none;
}
.login .message, .login form {
    border:none;
    box-shadow:none;
    padding:0;
}
body.login-action-login #loginform {
    display:none;
}

#no_mobile { display:none; }

@media (max-width: 766px) {
    #no_mobile {
        display:block;
        position:fixed;
        left:0px;
        top:0px;
        right:0px;
        bottom:0px;
        background:#fff url(../images/no_mobile.png) no-repeat center center;
        background-size:contain;
        z-index:9999;
    }
}

.form\:animate-contain [data-animate-label].translate-label .form__label {
    font-weight: bold;
    opacity: 0.6;
    -webkit-transform: translateY(-12px) scale(0.8);
    transform: translateY(-12px) scale(0.8)
}
.form\:animate-contain [data-animate-label] input.input\:text {
    line-height: 38px;
    padding-top: 12px
}
.form\:animate-contain [data-animate-label] textarea.input\:text { padding-top: 20px }
.form\:animate-break [data-animate-label] .form__label, .login-username label, .login-password label, #lostpasswordform label {
    left: .5em;
    padding: 0 .5em
}
.form\:animate-break [data-animate-label] .form__label::before, .login-username label::before,
.login-password label::before, #lostpasswordform label::before {
    content: '';
    background-color: #fff;
    border-radius: 3px;
    display: block;
    height: 1.6em;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    z-index: -1;
    opacity: 0
}
.form\:animate-break [data-animate-label].translate-label .form__label, #loginform p.translate-label label,
    #lostpasswordform p.translate-label label {
    font-weight: bold;
    opacity: 1;
    -webkit-transform: translateY(-50%) scale(0.8);
    transform: translateY(-50%) scale(0.8)
}
.form\:animate-break [data-animate-label].translate-label .form__label::before,
    #loginform p.translate-label label::before, #lostpasswordform p.translate-label label::before {
    opacity: 1
}

@supports (grid-area: auto) and (--css: variables) {
    .form__grid {
        --gap: 14px;
        --width: 300px;
        --fit: auto-fit;
        display: grid;
        grid-gap: var(--gap);
        grid-template-columns: repeat(var(--fit), minmax(var(--width), 1fr));
        margin-bottom: 14px
    }
    .form__grid>* {
        margin: 0;
        max-width: calc(100vw - 6vw);
        min-width: 0
    }
    .form__row .form__grid { margin-bottom: 0 }
    .form__grid>.form__toggle-wrap { margin: 0 !important }
    .form__grid--fill { --fit: auto-fill }
}

.form__group {
    border-top: 1px solid currentcolor;
    border-top-color: #e3e3e3;
    padding: 28px 0
}
.form__group:first-child { border-top-width: 0 }
.form__group .form__grid:last-child, .form__group .form__group-inputs .form__row:last-child { margin-bottom: 0 }
.form__group .form__group-text { padding-bottom: 28px }
.form__group .form__group-title { font-weight: bold }
.form__group .form__group-desc { color: #878787 }

@media (min-width: 641px) {
    .form__group {
        display: -webkit-flex;
        display: flex
    }
    .form__group .form__group-text {
        -webkit-flex: 0 0 33%;
        flex: 0 0 33%;
        padding-bottom: 0;
        padding-right: 20px
    }
    .form__group .form__group-inputs {
        -webkit-flex: 1 1 100px;
        flex: 1 1 100px
    }
}

@media (min-width: 641px) {
    .form__group+.form__submit { padding-left: 33% }
}

.input\:reset, .input\:text, .select select, .acf-field input[type="text"], #user_login, #user_pass {
    -webkit-appearance: none;
    box-shadow: none;
    display: block;
    min-width: 0;
    outline: none;
    text-align: inherit;
    width: 100%
}
.input\:text, .select, .acf-field input[type="text"], #user_login, #user_pass {
    background-color: #fff;
    border: 1px solid;
    border-color: #454545;
    border-radius: 0px;
    height: 50px;
    line-height: calc(50px - 1px * 2);
    padding: 0 1em;
    transition: border-color 0.2s linear
}
.select:focus-within, .input\:text:focus, #user_login:focus, #user_pass:focus {
    border-color: #1f1f1f;
    outline: none
}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    color: inherit;
    opacity: var(--input--placeholder-opacity)
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
    color: inherit;
    opacity: var(--input--placeholder-opacity)
}
input::-ms-input-placeholder, textarea::-ms-input-placeholder {
    color: inherit;
    opacity: var(--input--placeholder-opacity)
}
input::placeholder, textarea::placeholder {
    color: inherit;
    opacity: var(--input--placeholder-opacity)
}
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder { opacity: 0.1 }
input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder { opacity: 0.1 }
input:focus::-ms-input-placeholder, textarea:focus::-ms-input-placeholder { opacity: 0.1 }
input:focus::placeholder, textarea:focus::placeholder { opacity: 0.1 }

textarea.input\:text {
    height: auto;
    line-height: 1.5;
    padding: 1em;
    resize: vertical
}
.select {
    padding: 0;
    position: relative
}
.select::after {
    border: 2px solid currentColor;
    border-right-width: 0px;
    border-top-width: 0px;
    content: '';
    height: 6px;
    pointer-events: none;
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    width: 6px
}
.select select {
    height: calc(50px - 1px * 2);
    padding: 0 1em
}
.select option { background-color: #fff }

@media (max-width: 860px) {
    .input\:text, .input\:reset, .select, #user_login, #user_pass { font-size: 16px }
}

.selectric-wrapper {
    border: inherit;
    border-width: 1px;
    border-radius: inherit;
    position: relative;
    cursor: pointer;
    margin: -1px;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0)
}
.select__row .selectric-wrapper {
    border:1px solid #000;
    text-transform:uppercase;
}
.select__row .selectric .button {
    color:#000;
    padding-left:1em;
    padding-right:1em;
    font-weight:normal;
    text-transform:none;
    font-family:'Lato';
}
.selectric-responsive { width: 100% }
.selectric {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    height: 48px;
    border-radius: inherit;
    border-width: 0px;
    border-style: solid;
    border-color: inherit
}
.label {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin: 0;
    padding: 0;
    padding-left: 1em;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto
}
.selectric-button { display: none }
.selectric-open { z-index: 9999 }
.selectric-open .selectric-items { display: block }
.selectric-disabled {
    opacity: 0.45;
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}
.selectric-hide-select {
    position: relative;
    overflow: hidden;
    width: 0;
    height: 0
}
.selectric-hide-select select {
    position: absolute;
    left: -100%;
    display: none
}
.selectric-input {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    margin: 0;
    padding: 0;
    width: 1px;
    height: 1px;
    outline: none;
    border: none;
    background: none
}
.selectric-temp-show {
    position: absolute !important;
    visibility: hidden !important;
    display: block !important
}
.selectric-items {
    left: -1px;
    right: -1px;
    width: auto !important;
    display: none;
    position: absolute;
    top: 100%;
    margin-top: -1px;
    z-index: 10;
    border-width: 0px 1px 1px 1px;
    border-style: solid;
    border-color: inherit;
    border-radius: inherit
}
body .selectric-open:not(.selectric-above) .selectric, body .selectric-open.selectric-above .selectric-items {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}
body .selectric-open.selectric-above .selectric, body .selectric-open:not(.selectric-above) .selectric-items {
    border-top-left-radius: 0;
    border-top-right-radius: 0
}
.selectric-scroll { border-radius: inherit }
.selectric-items .selectric-scroll {
    height: 100%;
    overflow: auto
}
.selectric-above .selectric-items {
    top: auto;
    bottom: 100%;
    margin-top: auto;
    margin-bottom: -1px;
    border-width: 1px 1px 0px 1px
}
.selectric-items ul, .selectric-items li {
    list-style: none;
    padding: 0;
    margin: 0;
    line-height: 20px;
    min-height: 20px
}
.selectric-items li {
    display: block;
    padding: 8px;
    cursor: pointer;
    background-clip: content-box;
    color: currentColor;
    padding-left: 1em;
    position: relative
}
.selectric-items .disabled, .selectric-items .disabled:hover {
    opacity: 0.5;
    cursor: default;
    background: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}
.selectric-items .selectric-group .selectric-group-label {
    font-weight: bold;
    padding-left: 10px;
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background: none
}
.selectric-items .selectric-group.disabled li { opacity: 1 }
.selectric-items .selectric-group li { padding-left: 25px }
.selectric-items li:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: currentcolor;
    z-index: -1;
    pointer-events: none;
    opacity: 0
}
.selectric-items li:not(.disabled):hover:before { opacity: 0.03 }
.selectric-items li.selected:before, .selectric-items li.selected:not(.disabled):hover:before { opacity: 0.12 }
.selectric-items li.selected:not(.disabled):after {
    content: "\f00c";
    font-family: 'FontAwesome';
    display: inline-block;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    font-size: 14px;
    margin-left: 5px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 0.3
}
.selectric-items li.selected.disabled { display: none }
.selectric-wrapper:not(.selectric-chosen) .label {
    color: inherit;
    opacity: var(--input--placeholder-opacity)
}
.selectric-items, .selectric-open .selectric { background: #fff }
.selectric-items { box-shadow: rgba(0, 0, 0, 0.06) 0px 10px 10px }
.selectric-above .selectric-items { box-shadow: rgba(0, 0, 0, 0.06) 0px -10px 10px }
.form__toggle-wrap {
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-flex;
    display: flex
}
.form__toggle-wrap>* {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}
.form__toggle-wrap>*:not(:first-child) { padding-left: 8px }
.form__toggle-wrap+.form__toggle-wrap { margin-top: 10px }

.input\:toggle {
    color: inherit;
    display: inline-block;
    font-size: 16px;
    height: 1em;
    position: relative;
    vertical-align: middle;
    width: 1em
}
.input\:toggle input {
    cursor: pointer;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1
}
.input\:toggle input:disabled { cursor: default }
.input\:toggle input~i {
    background-color: #fff;
    border-color: currentColor;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center
}
.input\:toggle input~i::after {
    opacity: 0.4;
    transition: opacity 0.1s ease-in-out;
    content: '';
    border-radius: inherit;
    border-width: 1px;
    border-style: solid;
    border-color: inherit
}
.input\:toggle input:not(:disabled):hover~i::after, .input\:toggle input:not(:disabled):focus~i::after,
.input\:toggle input:checked~i::after {
    opacity: 1
}
.input\:toggle input:not(:disabled):focus~i::after { box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 0px 3px }
.input\:toggle input:disabled~i { opacity: 0.4 }
.input\:toggle input[type='checkbox']~i {
    border-radius: 3px;
    transition: background 0.15s ease-in-out
}
.input\:toggle input[type='checkbox']~i::before {
    color: #fff;
    content: '';
    width: 1em;
    height: .7em;
    border: .25em solid transparent;
    border-color: transparent transparent currentcolor currentcolor;
    -webkit-transform: rotate(-45deg) translate(15%, -15%) scale(0);
    transform: rotate(-45deg) translate(15%, -15%) scale(0);
    opacity: 0;
    transition: all 0.15s ease-in-out;
    font-size: 0.6em;
    line-height: 1
}
.input\:toggle input[type='checkbox']:checked~i { background: currentColor }
.input\:toggle input[type='checkbox']:checked~i::before {
    -webkit-transform: rotate(-45deg) translate(15%, -15%) scale(1);
    transform: rotate(-45deg) translate(15%, -15%) scale(1);
    opacity: 1
}
.input\:toggle input[type='radio']~i { border-radius: 50% }
.input\:toggle input[type='radio']~i::before {
    content: "";
    background: currentcolor;
    border-radius: inherit;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: -webkit-transform 0.15s ease-in-out;
    transition: transform 0.15s ease-in-out;
    transition: transform 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;
    display: block
}
.input\:toggle input[type='radio']:checked~i::before {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.nf-form-cont {
    margin-top:60px;
}
.nf-form-content {
    padding:0 !important;
}
.nf-form-title h3 {
    background:#394553;
    color:#fff;
    text-transform:uppercase;
    font-size:1.4rem;
    font-weight:700;
    padding-top:20px;
    padding-bottom:20px;
    padding-left:30px;
    padding-right:30px;
}
.nf-field-container {
    margin-top:12px !important;
    margin-bottom:0 !important;
}
.nf-form-content input:not([type=button]), .nf-form-content textarea {
    background:#fff !important;
    border:1px solid #000 !important;
    color:#000 !important;
}
.firstcol, .lastcol {
    float:left;
    width:49.2%;
    clear:none !important;
}
.firstcol {
    margin-right:12px;
}
.submit-wrap input {
    display:inline-block;
    background:#394553 !important;
    text-transform:uppercase;
    font-weight:bold;
    line-height:1.2;
    padding:1em 3em !important;
    margin-top:6px !important;
}
body .label-left .nf-field-label {
    width:70%;
}
body .label-left .nf-field-label label {
    font-size:16px;
}
body .label-left .nf-field-element {
    width:30%;
}
body .label-left .nf-field-description {
    margin-left:0;
    margin-top:-20px;
    width:70%;
    padding-right:2%;
    text-align:right;
}
body .nf-form-content hr.ninja-forms-field {
    margin-top:10px;
    margin-bottom:10px;
}

section figure {
    display: block;
    position: relative;
    overflow: hidden;
    margin-bottom:30px !important;
}
section figure::before {
    content: '';
    display: block;
    padding-bottom: 56.25%;
}
body.single-modules section figure::before { padding-bottom:70%; }
section figure img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.hero {
    background-color: #e3e3e3;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    position: relative
}
.hero__content { position: relative }
.hero--mini {
    background-color: #ced7cf;
    background-image: url("../images/hero--mini.jpg");
    height: 10vh;
    max-height: 150px;
    padding: 0 !important
}

[data-modal] {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    visibility: hidden;
    opacity: 0
}
[data-modal].modal--visible {
    visibility: visible;
    opacity: 1
}
[data-modal], .modal { transition: all .25s ease-in-out }
.modal-overlay {
    background: #394553;
    opacity: .9
}
.modal {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    background-color: #f9f9f9;
    position: relative;
    width: 98%;
    max-width: 750px;
    max-height: 90vh;
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
    border-radius: 0
}
.modal--visible .modal {
    -webkit-transform: translateY(0px);
    transform: translateY(0px)
}
.modal__close {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
    width: 50px;
    height: 50px;
    border-radius: 0;
    color: #fff
}
.modal__close svg {
    width: 14px;
    position: relative
}
.modal__close svg line {
    fill: none;
    stroke: currentColor;
    stroke-width: 2
}
.modal__close::before {
    content: '';
    border-radius: inherit;
    transition: opacity 0.1s linear;
    background: #394553;
    opacity: 1
}
.modal>.modal__close {
    position: absolute;
    top: 0;
    right: 0
}
.modal__header {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    font-size: 1.5em
}
.modal__content {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    overflow: auto
}
.modal__footer {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}
.modal__header, .modal__footer { border-color: #f1f1f1 }

.pagination div {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    justify-content: center;
}
.pagination div a, .pagination div span {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}
.pagination div a, .pagination div span { margin-right: 5px }
.pagination a, .pagination span {
    background-color: #f1f1f1;
    color: #5e5e5e;
    border-radius: 3px;
    display: block;
    padding: .5em 1em;
    font-size: 1.4rem;
    font-weight: 600
}
.pagination a:active {
    position: relative;
    top: 1px
}
.pagination a:focus, .pagination a:hover { background-color: #e3e3e3 }
.pagination .is-active a {
    background-color: #454545;
    color: #f1f1f1
}

[data-parallax] {
    position: relative;
    --parallax: 15vmin
}
.ratio [data-parallax] { position: absolute }
.parallax {
    overflow: hidden;
    z-index: 0;
    transition: opacity 0.2s ease-in-out
}
.parallax::before {
    content: '';
    background-image: inherit;
    background-size: inherit;
    background-position: inherit
}
.parallax--top .parallax::before { top: 0 }

@supports (--variables: 1px) {
    .parallax::before {
        top: calc(-1 * var(--parallax));
        -webkit-transform: translateY(calc(var(--scroll) * var(--parallax)));
        transform: translateY(calc(var(--scroll) * var(--parallax)));
        will-change: transform
    }
}

.parallax~* { position: relative }
.parallax--fade { opacity: 0 }

.ratio--50::before { padding-bottom: 50% }
.ratio--60::before { padding-bottom: 60% }
.ratio--66::before { padding-bottom: 66% }
.ratio--70::before { padding-bottom: 70% }
.ratio--75::before { padding-bottom: 75% }
.ratio--80::before { padding-bottom: 80% }
.ratio--90::before { padding-bottom: 90% }
.ratio--wide::before { padding-bottom: 56.25% }

.social-icons {
    display: -webkit-flex;
    display: flex;
    font-size: 20px;
    color: #fff
}
.social-icons li {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-right: 5px
}
.social-icons li:last-of-type { margin-right: 0 }
.social-icons a {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    position: relative;
    width: 32px;
    height: 32px;
    background: #000;
    color: inherit !important;
    border-radius: 50%
}
.social-icons a::before {
    content: '';
    border-radius: inherit;
    background: rgba(255, 255, 255, 0.15);
    opacity: 0
}
.social-icons a:hover::before { opacity: 1 }
.social-icons span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden
}
.social-icons svg { height: 50% }

.table__row {
    display: -webkit-flex;
    display: flex;
    padding: 2rem;
    padding: var(--space-2)
}
.table__row>* {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}
.table__row>*+* {
    padding-left: 3rem;
    padding-left: var(--space-3)
}

.thumbnail { background-color: #878787 }
.thumbnail::before { padding-bottom: 70% }
.thumbnail img {
    transition: -webkit-transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out
}
.thumbnail:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.site-wrap {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    min-height: 100vh
}
.site-main {
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto
}

.site-header {
    background: #fff;
    color: #394553;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    position: relative;
    /*overflow: hidden;*/
    z-index: 50
}
.site-header__align {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    min-height: 70px;

    max-width:1183px;
    width:auto;
    /*margin-right:0;*/
}

.logo {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    font-size: 2rem;
    font-weight: bold
}
.logo a {
    display: block;
    color: inherit;
    line-height: 46px
}
.logo svg {
    margin-left:18px;
    height: 46px
}

.site-header__world-federation {
    max-width: 110px;
    margin-left: 20px;
    margin-right:30px;
}
.site-header__world-federation img { display: block }

.site-header__user {
    background: #394553;
    color: #fff;
    line-height: 70px;
    text-transform: uppercase;
    font-weight: bold;
    margin-left: 20px;
    -webkit-flex: 0 1 242px;
    flex: 0 1 242px;
    transition: all 0.2s ease-in-out
}
.site-header__user a {
    color: inherit;
    display: -webkit-flex;
    display: flex;
    padding: 0 1em;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center
}
.site-header__user:hover { background: #506074 }
.site-header__user svg {
    height: .8em;
    margin-right: .8em
}

.site-navigation {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    font-size: 1.5rem;
    line-height: 36px;
    margin-left: auto;
    white-space: nowrap;
    position:relative;
}
.site-navigation > a {
    font-size:1.6rem;
    font-weight:600;
    text-transform:uppercase;
    color:#000;
    margin-right:20px;
}
.site-navigation a span {
    vertical-align:middle;
}
.site-navigation svg {
    display:inline-block;
    width:16px;
    vertical-align: middle;
}
.site-navigation-menu {
    display:none;
    position:absolute;
    left:-5px;
    top:54px;
    z-index:10;
}
.site-navigation-menu.active {
    display:block;
}
.site-navigation .nav {
    /*display: -webkit-flex;
    display: flex*/
}
.site-navigation .nav__item {
    /*
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    position: relative*/
    margin-bottom:5px;
}
.site-navigation .nav__item:not(:first-child) {
    /*border-left: 1px solid rgba(57, 69, 83, 0.2)*/
}
.site-navigation .nav__link {
    /*font-weight: 600;*/
    display:block;
    font-size:1.6rem;
    line-height:50px;
    color: #000;
    display: block;
    position: relative;
    text-transform: uppercase;
    background:rgba(242,242,240, 0.95);
    border-left:5px solid #394553;
    padding-left:20px;
    min-width:200px;
}
.site-navigation .nav__link:hover {
    background:#394553;
    color:#fff;
}

.mobile-header-wrap {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    -webkit-order: -1;
    order: -1;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 50
}
.mobile-header {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    color: #394553;
    background: #fff;
    height: 55px;
    padding: 0 10px;
    position: relative;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    z-index: 10
}
.mobile-header a { color: currentColor }
.mobile-logo {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    margin-right: auto;
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 55px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.mobile-logo img, .mobile-logo svg {
    height: auto;
    max-height: 35px
}

.mobile-nav-toggle {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    border-radius: 3px;
    cursor: pointer;
    font-size: 1.1rem;
    font-weight: bold;
    height: 40px;
    padding: 0 15px;
    position: relative;
    text-transform: uppercase;
    margin-left: 5px;
    z-index: 0
}
.mobile-nav-toggle::before {
    content: '';
    background: #394553;
    border-radius: inherit;
    opacity: 0.1;
    z-index: -1
}
.mobile-nav-toggle .mobile-nav-toggle__icon { margin-right: 10px }
.mobile-nav-toggle__user { color: #fff !important }
.mobile-nav-toggle__user::before {
    background: #394553;
    opacity: 1
}
.mobile-nav-toggle__user svg { margin-right: 6px }
.mobile-nav-toggle__icon {
    font-size: 2px;
    color: inherit;
    width: 19px;
    height: 13px;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer
}
.mobile-nav-toggle__icon::before, .mobile-nav-toggle__icon::after, .mobile-nav-toggle__icon>i::before,
    .mobile-nav-toggle__icon>i::after {
    content: '';
    display: block;
    width: 100%;
    height: 1em;
    background: currentColor;
    border-radius: 2px;
    position: absolute;
    top: 50%;
    left: 0;
    transition: all 0.2s ease-in-out
}
.mobile-nav-toggle__icon::before { top: 0 }
.mobile-nav-toggle__icon::after {
    top: auto;
    bottom: 0
}
.mobile-nav-toggle__icon>i::before, .mobile-nav-toggle__icon>i::after {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    margin-top: -0.5em
}
.mobile-nav-active .mobile-nav-toggle__icon::before {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
    opacity: 0
}
.mobile-nav-active .mobile-nav-toggle__icon::after {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
    opacity: 0
}
.mobile-nav-active .mobile-nav-toggle__icon>i::before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}
.mobile-nav-active .mobile-nav-toggle__icon>i::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}
.mobile-nav-panel {
    background: #f1f1f1;
    color: #1f1f1f;
    height: 100%;
    right: 0;
    padding-top: 55px;
    overflow: auto;
    overflow-x: hidden;
    position: fixed;
    top: 0;
    -webkit-transform: translateX(101%);
    transform: translateX(101%);
    transition: -webkit-transform ease-in-out 0.3s;
    transition: transform ease-in-out 0.3s;
    transition: transform ease-in-out 0.3s, -webkit-transform ease-in-out 0.3s;
    width: 100%;
    max-width: 480px;
    z-index: 5;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-overflow-scrolling: touch
}
.mobile-nav-panel a { color: inherit }
.mobile-nav-active .mobile-nav-panel {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 20px;
    -webkit-transform: translateX(0);
    transform: translateX(0)
}
.mobile-nav-panel::after {
    content: '';
    display: block;
    height: 90px
}
.mobile-nav-panel-overlay {
    position: fixed;
    background: #1f1f1f;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0.001;
    visibility: hidden;
    transition: all 0.2s ease-in-out
}
.mobile-nav-active .mobile-nav-panel-overlay {
    visibility: visible;
    opacity: 0.8
}
.mobile-nav .nav__item {
    -webkit-transform:translateX(40px); transform:translateX(40px);
    transition:all 0.15s ease-in-out;
    opacity:0;
    position:relative
}
.mobile-nav .nav__item::after {
    content: '';
    height: 1px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    background: currentColor;
    opacity: 0.1;
    pointer-events: none
}
.mobile-nav-active .mobile-nav .nav__item {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
}
.mobile-nav-active .mobile-nav .nav__item:nth-child(1) { transition-delay: .1s }
.mobile-nav-active .mobile-nav .nav__item:nth-child(2) { transition-delay: .15s }
.mobile-nav-active .mobile-nav .nav__item:nth-child(3) { transition-delay: .2s }
.mobile-nav-active .mobile-nav .nav__item:nth-child(4) { transition-delay: .25s }
.mobile-nav-active .mobile-nav .nav__item:nth-child(5) { transition-delay: .3s }
.mobile-nav-active .mobile-nav .nav__item:nth-child(6) { transition-delay: .35s }
.mobile-nav-active .mobile-nav .nav__item:nth-child(7) { transition-delay: .4s }
.mobile-nav-active .mobile-nav .nav__item:nth-child(8) { transition-delay: .45s }
.mobile-nav-active .mobile-nav .nav__item:nth-child(9) { transition-delay: .5s }
.mobile-nav-active .mobile-nav .nav__item, .mobile-nav-active .mobile-nav .nav__item:nth-child(10) {
    transition-delay: .55s
}
.mobile-nav .nav__link {
    display: block;
    padding: 15px;
    position: relative
}

.site-footer {
    background: #394553;
    color: #fff;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}
.site-footer a { color: inherit }
.site-footer__logo svg { height: auto }
.site-footer__links {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    font-size: 1.2rem
}
.site-footer__links li { margin: 4px 0 }
.site-footer__links li:not(:last-child) {
    padding-right: 10px;
    margin-right: 10px;
    border-right: 1px solid currentcolor
}

.page-header {
    background: #e3e3e3;
    color: #1f1f1f
}
.page-header__title { font-weight: bold }

.section {
    padding-top: 6rem;
    padding-bottom: 6rem;
    padding-top: var(--push);
    padding-bottom: var(--push)
}
.section_right {
    background-repeat:no-repeat;
    background-position:center top;
    background-size:cover;
    padding-top:10rem;
    padding-bottom:16rem;
}
.section_right .width > div {
    max-width:370px;
    margin-left:auto;
}
@media (max-width: 767px) {
    .section_right .width > div {
        text-align:center;
        margin-right:auto;
    }
}
.section_right .wp-block-buttons {
    margin-top:1.2em;
    text-transform:uppercase;
}
.section--alt { background: #f1f1f1 }
.svg-icon svg {
    width: 50px;
    height: 50px
}

.hero--index::after {
    content: '';
    display: block;
    height: 70px
}
.index-info-shift {
    position: relative;
    margin-top: -70px
}

.thumbnail__name {
    position: absolute;
    background: #394553;
    color: #fff;
    bottom: 10px;
    right: 0;
    width: 100%;
    max-width: 200px;
    padding-left: .7em;
    line-height: 36px;
    font-weight: bold;
    text-transform: uppercase;
    display: -webkit-flex;
    display: flex
}
.thumbnail__letter {
    background: #ff0000;
    padding: 0 .7em;
    margin-left: -.7em;
    margin-right: .7em
}

.news-read-more {
    display: inline-block;
    text-transform: uppercase;
    font-weight: bold;
    padding: 10px 0;
    border-top: 2px solid #0860a8;
    min-width: 150px
}

.tarbiyah-register { overflow-x: hidden }
.tarbiyah-register .width {
    width: auto;
    max-width: 1200px
}
.tarbiyah-register .form__label { font-size: .8em }
.tarbiyah-register__cells {
    min-height: 100vh;
    -webkit-align-items: stretch;
    align-items: stretch
}
.tarbiyah-register__text {
    position: relative;
    color: #fff
}
.tarbiyah-register__text::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100vw;
    background: #394553;
    z-index: -1
}
.tarbiyah-register__social li+li { margin-top: 8px }
.tarbiyah-register__social a {
    font-size: .8em;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    background: #555;
    color: #fff;
    padding: 1.2rem 0 1.2rem 2rem;
    text-transform: uppercase
}
.tarbiyah-register__social a[href*='facebook.com'] { background: #0a51a1 }
.tarbiyah-register__social a[href*='linkedin.com'] { background: #0177b5 }
.tarbiyah-register__social svg { margin-right: 2rem }

.m_\:1>*+* {
    margin-top: 1rem;
    margin-top: var(--space-1)
}
.m_\:2>*+* {
    margin-top: 2rem;
    margin-top: var(--space-2)
}
.m_\:3>*+* {
    margin-top: 3rem;
    margin-top: var(--space-3)
}
.m_\:4>*+* {
    margin-top: 4rem;
    margin-top: var(--space-4)
}
.m_\:5>*+* {
    margin-top: 5rem;
    margin-top: var(--space-5)
}
.m_\:6>*+* {
    margin-top: 6rem;
    margin-top: var(--space-6)
}
.m_\:7>*+* {
    margin-top: 7rem;
    margin-top: var(--space-7)
}
.m_\:8>*+* {
    margin-top: 8rem;
    margin-top: var(--space-8)
}
.m_\:9>*+* {
    margin-top: 9rem;
    margin-top: var(--space-9)
}
.m_\:push>*+* {
    margin-top: 6rem;
    margin-top: var(--push)
}
.m_\:0>*+* { margin-top: 0 }
.mt\:1, .my\:1 {
    margin-top: 1rem;
    margin-top: var(--space-1)
}
.mb\:1, .my\:1 {
    margin-bottom: 1rem;
    margin-bottom: var(--space-1)
}
.mt\:2, .my\:2 {
    margin-top: 2rem;
    margin-top: var(--space-2)
}
.mb\:2, .my\:2 {
    margin-bottom: 2rem;
    margin-bottom: var(--space-2)
}
.mt\:3, .modal__content, .my\:3 {
    margin-top: 3rem;
    margin-top: var(--space-3)
}
.mb\:3, .my\:3 {
    margin-bottom: 3rem;
    margin-bottom: var(--space-3)
}
.mt\:4, .my\:4 {
    margin-top: 4rem;
    margin-top: var(--space-4)
}
.mb\:4, .my\:4 {
    margin-bottom: 4rem;
    margin-bottom: var(--space-4)
}
.mt\:5, .my\:5 {
    margin-top: 5rem;
    margin-top: var(--space-5)
}
.mb\:5, .my\:5 {
    margin-bottom: 5rem;
    margin-bottom: var(--space-5)
}
.mt\:6, .my\:6 {
    margin-top: 6rem;
    margin-top: var(--space-6)
}
.mb\:6, .my\:6 {
    margin-bottom: 6rem;
    margin-bottom: var(--space-6)
}
.mt\:7, .my\:7 {
    margin-top: 7rem;
    margin-top: var(--space-7)
}
.mb\:7, .my\:7 {
    margin-bottom: 7rem;
    margin-bottom: var(--space-7)
}
.mt\:8, .my\:8 {
    margin-top: 8rem;
    margin-top: var(--space-8)
}
.mb\:8, .modal__content, .my\:8 {
    margin-bottom: 8rem;
    margin-bottom: var(--space-8)
}
.mt\:9, .my\:9 {
    margin-top: 9rem;
    margin-top: var(--space-9)
}
.mb\:9, .my\:9 {
    margin-bottom: 9rem;
    margin-bottom: var(--space-9)
}
.mt\:push, .my\:push {
    margin-top: 6rem;
    margin-top: var(--push)
}
.mb\:push, .my\:push {
    margin-bottom: 6rem;
    margin-bottom: var(--push)
}
.mt\:0, .my\:0 { margin-top: 0 }
.mb\:0, .my\:0 { margin-bottom: 0 }
.px\:1, .p\:1 {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-left: var(--space-1);
    padding-right: var(--space-1)
}
.pt\:1, .py\:1, .p\:1 {
    padding-top: 1rem;
    padding-top: var(--space-1)
}
.pb\:1, .py\:1, .p\:1 {
    padding-bottom: 1rem;
    padding-bottom: var(--space-1)
}
.px\:2, .p\:2 {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-left: var(--space-2);
    padding-right: var(--space-2)
}
.pt\:2, .py\:2, .p\:2 {
    padding-top: 2rem;
    padding-top: var(--space-2)
}
.pb\:2, .py\:2, .p\:2 {
    padding-bottom: 2rem;
    padding-bottom: var(--space-2)
}
.px\:3, .p\:3 {
    padding-left: 3rem;
    padding-right: 3rem;
    padding-left: var(--space-3);
    padding-right: var(--space-3)
}
.pt\:3, .py\:3, .p\:3 {
    padding-top: 3rem;
    padding-top: var(--space-3)
}
.pb\:3, .site-footer, .py\:3, .p\:3 {
    padding-bottom: 3rem;
    padding-bottom: var(--space-3)
}
.px\:4, .p\:4 {
    padding-left: 4rem;
    padding-right: 4rem;
    padding-left: var(--space-4);
    padding-right: var(--space-4)
}
.pt\:4, .py\:4, .p\:4 {
    padding-top: 4rem;
    padding-top: var(--space-4)
}
.pb\:4, .py\:4, .p\:4 {
    padding-bottom: 4rem;
    padding-bottom: var(--space-4)
}
.px\:5, .p\:5, .modal {
    padding-left: 5rem;
    padding-right: 5rem;
    padding-left: var(--space-5);
    padding-right: var(--space-5)
}
.pt\:5, .py\:5, .p\:5, .modal {
    padding-top: 5rem;
    padding-top: var(--space-5)
}
.pb\:5, .py\:5, .p\:5, .modal {
    padding-bottom: 5rem;
    padding-bottom: var(--space-5)
}
.px\:6, .p\:6 {
    padding-left: 6rem;
    padding-right: 6rem;
    padding-left: var(--space-6);
    padding-right: var(--space-6)
}
.pt\:6, .site-footer, .py\:6, .page-header, .p\:6 {
    padding-top: 6rem;
    padding-top: var(--space-6)
}
.pb\:6, .py\:6, .page-header, .p\:6 {
    padding-bottom: 6rem;
    padding-bottom: var(--space-6)
}
.px\:7, .p\:7 {
    padding-left: 7rem;
    padding-right: 7rem;
    padding-left: var(--space-7);
    padding-right: var(--space-7)
}
.pt\:7, .py\:7, .p\:7 {
    padding-top: 7rem;
    padding-top: var(--space-7)
}
.pb\:7, .py\:7, .p\:7 {
    padding-bottom: 7rem;
    padding-bottom: var(--space-7)
}
.px\:8, .p\:8 {
    padding-left: 8rem;
    padding-right: 8rem;
    padding-left: var(--space-8);
    padding-right: var(--space-8)
}
.pt\:8, .py\:8, .p\:8 {
    padding-top: 8rem;
    padding-top: var(--space-8)
}
.pb\:8, .py\:8, .p\:8 {
    padding-bottom: 8rem;
    padding-bottom: var(--space-8)
}
.px\:9, .p\:9 {
    padding-left: 9rem;
    padding-right: 9rem;
    padding-left: var(--space-9);
    padding-right: var(--space-9)
}
.pt\:9, .py\:9, .p\:9 {
    padding-top: 9rem;
    padding-top: var(--space-9)
}
.pb\:9, .py\:9, .p\:9 {
    padding-bottom: 9rem;
    padding-bottom: var(--space-9)
}
.px\:push, .p\:push {
    padding-left: 6rem;
    padding-right: 6rem;
    padding-left: var(--push);
    padding-right: var(--push)
}
.pt\:push, .py\:push, .hero, .p\:push {
    padding-top:6rem;
    padding-top: var(--push)
}
.pb\:push, .py\:push, .hero, .p\:push {
    padding-bottom:6rem;
    padding-bottom: var(--push)
}
.px\:0, .p\:0 {
    padding-left:0;
    padding-right:0;
}
.pt\:0, .py\:0, .p\:0 { padding-top:0 }
.pb\:0, .py\:0, .p\:0 { padding-bottom:0 }

.c\:primary, a.c\:primary, .hover__c\:primary:hover, .link__c\:primary a, .link-hover__c\:primary a:hover {
    color: #394553
}
.c\:primary-light { color: #506074 }
.c\:primary-dark { color: #2e3742 }
.c\:secondary { color: #000 }
.c\:secondary-light { color: #1a1a1a }
.c\:secondary-dark { color: #000 }
.c\:soft, a.c\:soft { color: #878787 }
.c\:heavy, a.c\:heavy { color: #1f1f1f }
.c\:light, a.c\:light { color: #f1f1f1 }
.c\:dark, a.c\:dark { color: #1f1f1f }
.c\:white, a.c\:white { color: #fff }
.c\:inherit, a.c\:inherit, .link__c\:inherit a { color: inherit }
.c\:reset, a.c\:reset, .hover__c\:reset:hover, .link__c\:reset a, .link-hover__c\:reset a:hover { color: #000 }
.c\:1, a.c\:1, .hover__c\:1:hover, .link__c\:1 a, .link-hover__c\:1 a:hover { color: #f9f9f9 }
.c\:2, a.c\:2, .hover__c\:2:hover, .link__c\:2 a, .link-hover__c\:2 a:hover { color: #f1f1f1 }
.c\:3, a.c\:3, .hover__c\:3:hover, .link__c\:3 a, .link-hover__c\:3 a:hover { color: #e3e3e3 }
.c\:4, a.c\:4, .hover__c\:4:hover, .link__c\:4 a, .link-hover__c\:4 a:hover { color: #d1d1d1 }
.c\:5, a.c\:5, .hover__c\:5:hover, .link__c\:5 a, .link-hover__c\:5 a:hover { color: #ababab }
.c\:6, a.c\:6, .hover__c\:6:hover, .link__c\:6 a, .link-hover__c\:6 a:hover { color: #878787 }
.c\:7, a.c\:7, .hover__c\:7:hover, .link__c\:7 a, .link-hover__c\:7 a:hover { color: #5e5e5e }
.c\:8, a.c\:8, .hover__c\:8:hover, .link__c\:8 a, .link-hover__c\:8 a:hover { color: #454545 }
.c\:9, a.c\:9, .hover__c\:9:hover, .link__c\:9 a, .link-hover__c\:9 a:hover { color: #1f1f1f }

.bg\:primary { background-color: #394553 }
.bg\:primary-light { background-color: #506074 }
.bg\:primary-dark { background-color: #2e3742 }
.bg\:secondary { background-color: #000 }
.bg\:secondary-light { background-color: #1a1a1a }
.bg\:secondary-dark { background-color: #000 }
.bg\:reset, .hover__bg\:reset:hover { background-color: #fff }
.bg\:1, .hover__bg\:1:hover { background-color: #f9f9f9 }
.bg\:2, .hover__bg\:2:hover { background-color: #f1f1f1 }
.bg\:3, .hover__bg\:3:hover { background-color: #e3e3e3 }
.bg\:4, .hover__bg\:4:hover { background-color: #d1d1d1 }
.bg\:5, .hover__bg\:5:hover { background-color: #ababab }
.bg\:6, .hover__bg\:6:hover { background-color: #878787 }
.bg\:7, .hover__bg\:7:hover { background-color: #5e5e5e }
.bg\:8, .hover__bg\:8:hover { background-color: #454545 }
.bg\:9, .hover__bg\:9:hover { background-color: #1f1f1f }

.screen-reader-text { display:none; }

.page-numbers, .pagination {
    display:-webkit-flex;
    display:flex;
    -webkit-align-items:center;
    align-items:center
}
.pagination li{
    -webkit-flex:0 0 auto;
    flex:0 0 auto
}
.pagination li:not(:last-of-type) { margin-right:5px; }
.pagination a { 
    background-color:#f1f1f1;
    color:#5e5e5e;
    border-radius:3px;
    display:block;
    padding:.5em 1em;
    font-size:1.4rem;
    font-weight:600
}
.pagination a:active {
    position:relative;
    top:1px
}
.pagination a:focus, .pagination a:hover { background-color:#e3e3e3 }
.pagination .is-active a {
    background-color:#454545;
    color:#f1f1f1
}
.index-info-shift h2 { font-size:21px; }

.register-modal {
    background:#394553;
    color:#fff;
    max-width:640px;
}
.register-modal h2 {
    font-size:42px;
    line-height:1em;
    font-weight:bold;
    margin-top:0.5em;
    margin-bottom:0.25em;
}
.register-modal p {
    font-size:19px;
    margin-bottom:2em;
}
.register-modal a.button {
    background-color:#fff;
    color:#394553;
    width:auto;
}
.register-modal label {
    display:block;
    margin-top:20px;
}
.register-modal a.button::before { content:none; }
#cookie_popup {
    background:#394553;
    border-left:1px solid #fff;
    border-top:1px solid #fff;
    border-right:1px solid #fff;
    color:#fff;
    position:fixed;
    right:60px;
    bottom:0px;
    height:200px;
    width:295px;
    font-size:14px;
    line-height:1.4em;
    transform:translateY(200px);
    transition:all 0.5s;
    -webkit-transform:all 0.5s;
    z-index:200000;
}
body.locale-fr_FR #cookie_popup {
    height:220px;
}
#cookie_popup h2 {
    font-weight:bold;
    margin-bottom:1em;
}
#cookie_popup.visible {
    bottom:0px;
    transform:translateY(0px);
}
#cookie_popup > div {
    padding:15px;
}
#btn_accept_cookies {
    font-size:14px;
    padding-top:0.7em;
    padding-bottom:0.7em;
    margin-top:1em;
    margin-bottom:0;
    background-color:#fff;
    color:#394553;
    width:100%;
}

body.page-template-template_demonstrations main section a.wp-block-button__link {
    text-transform:uppercase;
    margin-top:3em;
}
#demos {
    list-style:none;
    margin-left:-40px;
    padding:0;
}
#demos::after {
    content:'';
    display:table;
    clear:both;
}
#demos li {
    display:block;
    float:left;
    width:480px;
    height:450px;
    background:#E4E7E8;
    margin-left:40px;
    margin-bottom:30px;
}
#demos li .thumb {
    display:block;
    position:relative;
    width:480px;
    height:318px;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
}
@media (max-width: 1023px) {
    #demos { margin-left:0; }
    #demos li {
        float:none;
        margin-left:auto;
        margin-right:auto;
        height:auto;
        padding-bottom:20px;
    }
}
@media (max-width: 767px) {
    #demos li { width:300px; }
    #demos li .thumb {
        width:300px;
        height:199px;
    }
}
#demos li .thumb h2 {
    position:absolute;
    bottom:12px;
    right:0px;
    background:#394553;
    color:#fff;
    font-size:14px;
    font-weight:900;
    height:30px;
    line-height:30px;
    padding-left:18px;
    width:194px;
    text-transform:uppercase;
}
#demos li div {
    margin-top:20px;
    margin-left:40px;
    margin-right:40px;
    font-size:14px;
}
.button_watch {
    margin-top:1em;
    display:inline-block;
    font-size:14px;
    height:30px;
    line-height:30px;
    text-transform:uppercase;
    background:url(../images/ico_play.png) no-repeat left center;
    background-size:contain;
    padding-left:50px;
}
.video-modal {
    width:640px;
    height:445px;
    padding:0;
}
.video-modal iframe { display:block; }
.video-modal h2 {
    margin:0;
    background:#fff;
    font-size:21px;
    line-height:45px;
    text-transform:uppercase;
    padding-left:20px;
    padding-right:20px;
}
.card_field {
    border: 1px solid #8f8989;
    padding-left: 1em;
    padding-right: 1em;
}
