﻿:root {
    --gutter: calc((100vw - 1400px) / 2);
    --gutter-left: calc((100vw - 1400px) / 2);
    --gutter-right: calc((100vw - 1400px) / 2);
    --scrollbarWidth: 0px;
    --viewportWidth: calc(100vw - var(--scrollbarWidth, 0));
    --blockMargin: 4rem;
}

@media screen and (max-width: 1505.376344086px) {
    :root {
        --gutter-left: 3.5vw;
        --gutter-right: 3.5vw;
        --gutter: 3.5vw;
    }
}

@media screen and (max-width: 767px) {
    :root {
        --blockMargin: 3rem;
    }
}

@keyframes loading {
    100% {
        background-position: 0 -570px;
    }
}

@keyframes loop {
    from {
        transform: translate(0%, 0%);
    }

    to {
        transform: translate(-50%, 0%);
    }
}

@keyframes pulse {
    0% {
        opacity: 1;
    }

    25% {
        opacity: 1;
    }

    50% {
        opacity: .2;
    }

    75% {
        opacity: 1;
    }

    100% {
        opacity: 1;
    }
}

xmp {
    margin: 0 0 1em;
    background: #ff0;
    color: #000;
    overflow: hidden;
    font-size: 10px;
}

img.sample {
    background: #0ae;
}

html,
body {
    margin: 0;
    padding: 0;
    font-family: proxima-nova, sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.55;
    color: #444;
    text-align: left;
    min-width: 320px;
    -webkit-font-smoothing: antialiased;
}

html {
    overflow-y: scroll;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    background: #122748;
}

body {
    padding: 0 0 0 0;
    background: #fff;
    overflow-anchor: none;
}

body.rtl {
    direction: rtl;
    unicode-bidi: embed;
    text-align: right;
}

strong,
b {
    font-weight: 700;
}

em,
i {
    font-style: italic;
}

em strong,
strong em {
    font-weight: 700;
    font-style: italic;
}

.hidden {
    display: block;
    position: absolute !important;
    top: -10000px !important;
    height: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    visibility: hidden !important;
}

.clear {
    clear: both;
}

.alignleft {
    float: left;
}

.alignright {
    float: right;
}

.entity {
    font-family: "Lucida Sans Unicode", "Arial Unicode MS", Arial, Helvetica, sans-serif;
}

.text-sans-serif {
    font-family: proxima-nova, sans-serif;
}

.text-serif {
    font-family: loretta, serif;
}

.text-headline {
    font-family: loretta, serif;
}

.text-cursive {
    font-family: cursive;
}

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

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

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

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

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

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

.text-nowrap {
    white-space: nowrap;
}

img {
    max-width: 100%;
    height: auto;
}

img[align=left],
img.alignleft {
    margin: 0 15px 15px 0;
}

img[align=right],
img.alignright {
    margin: 0 0 15px 15px;
}

img.aligncenter {
    display: block;
    margin: 0 auto 15px auto;
}

img.circle {
    border-radius: 50%;
}

img,
a>img {
    border: 0;
}

a {
    color: currentColor;
    transition: color .2s ease;
}

a.more {
    white-space: nowrap;
}

iframe {
    max-width: 100%;
}

.fb_iframe_widget iframe {
    max-width: none;
}

.clickable {
    cursor: pointer;
}

.anchor:before {
    content: "";
    display: block;
    height: 120px;
    margin: -120px 0 0;
}

th,
td {
    border: 0;
}

.toggle {
    cursor: pointer;
}

address {
    font-style: normal;
}

address a {
    text-decoration: none;
    display: inline-block;
}

@media screen and (min-width: 768px) {

    .mobile-only,
    .desktop-hide {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {

    .mobile-hide,
    .desktop-only {
        display: none !important;
    }
}

.fb_iframe_widget,
.fb_iframe_widget>span {
    max-width: 100%;
    width: 100%;
}

#wpadminbar {
    z-index: 1101;
}

.has-padding-top {
    padding-top: calc(var(--blockMargin, 4rem) * 1) !important;
}

.has-padding-bottom {
    padding-bottom: calc(var(--blockMargin, 4rem) * 1) !important;
}

.has-no-padding-top {
    padding-top: 0 !important;
}

.has-no-padding-bottom {
    padding-bottom: 0 !important;
}

.has-no-padding {
    padding: 0 !important;
}

.has-margin-top {
    margin-top: calc(var(--blockMargin, 4rem) * 1) !important;
}

.has-margin-bottom {
    margin-bottom: calc(var(--blockMargin, 4rem) * 1) !important;
}

.has-half-margin-top {
    margin-top: calc(var(--blockMargin, 4rem) * .5) !important;
}

.has-half-margin-bottom {
    margin-bottom: calc(var(--blockMargin, 4rem) * .5) !important;
}

.has-neg-margin-top {
    margin-top: calc(var(--blockMargin, 4rem) * -1) !important;
}

.has-neg-margin-bottom {
    margin-bottom: calc(var(--blockMargin, 4rem) * -1) !important;
}

.has-neg-half-margin-top {
    margin-top: calc(var(--blockMargin, 4rem) * -.5) !important;
}

.has-neg-half-margin-bottom {
    margin-bottom: calc(var(--blockMargin, 4rem) * -.5) !important;
}

.has-no-margin-top {
    margin-top: 0 !important;
}

.has-no-margin-bottom {
    margin-bottom: 0 !important;
}

.has-auto-margin-horizontal {
    margin-left: auto !important;
    margin-right: auto !important;
}

.has-max-width-400 {
    max-width: 400px;
}

.has-max-width-400.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

.has-max-width-500 {
    max-width: 500px;
}

.has-max-width-500.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

.has-max-width-600 {
    max-width: 600px;
}

.has-max-width-600.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

.has-max-width-700 {
    max-width: 700px;
}

.has-max-width-700.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

.has-max-width-800 {
    max-width: 800px;
}

.has-max-width-800.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

.has-max-width-900 {
    max-width: 900px;
}

.has-max-width-900.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

.has-max-width-1000 {
    max-width: 1000px;
}

.has-max-width-1000.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

.has-max-width-1100 {
    max-width: 1100px;
}

.has-max-width-1100.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

.has-max-width-1200 {
    max-width: 1200px;
}

.has-max-width-1200.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

.has-black-color {
    --color: #000;
}

.has-white-color {
    --color: #fff;
}

.has-black-background-color {
    --background-color: #000;
}

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

.query-posts {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    --gap: 2.4rem;
    --column-count: 1;
    --hentry-width: calc((100% / var(--column-count)) - ((var(--gap) * (var(--column-count) - 1)) / var(--column-count)));
    gap: var(--gap);
    justify-content: start;
    flex-wrap: wrap;
    margin-bottom: var(--gap);
}

.query-posts:last-child {
    margin-bottom: 0;
}

.query-posts .extended-info {
    --hentry-width: 100%;
    margin: 0 auto;
    width: 100%;
}

.query-posts .no-results {
    margin: calc(var(--blockMargin, 4rem) * .5) auto;
    width: 100% !important;
    margin-left: 0 !important;
    text-align: center;
}

.query-posts .hentry.load-more {
    order: 100000;
}

.query-posts .hentry.promo-wide {
    margin-top: var(--gap);
    margin-bottom: var(--gap);
}

.query-posts .hentry.empty.static {
    order: 10000 !important;
}

.query-posts .hentry.heading {
    width: 100% !important;
}

.query-posts .hentry:not(.wide) {
    width: var(--hentry-width);
}

.query-posts.one-across {
    --gap: 2rem;
    --column-count: 1;
    display: flex;
}

.query-posts.two-across {
    --gap: 2.5rem;
    --column-count: 2;
    display: flex;
}

@media screen and (max-width: 1024px) {
    .query-posts.two-across {
        --gap: 1.5rem;
    }
}

@media screen and (max-width: 980px) {
    .query-posts.two-across {
        --column-count: 1;
        --gap: 1rem;
    }
}

.query-posts.three-across {
    --gap: 1.5rem;
    --column-count: 3;
    display: flex;
}

.query-posts.three-across>.hentry:not(.promo-wide) {
    margin-bottom: 0;
}

@media screen and (max-width: 1200px) {
    .query-posts.three-across {
        --gap: 1rem;
    }
}

@media screen and (max-width: 767px) {
    .query-posts.three-across {
        --gap: 1rem;
    }

    .query-posts.three-across:not(.related-posts) {
        --column-count: 1;
    }
}

@media screen and (max-width: 500px) {
    .query-posts.three-across.related-posts {
        --gap: 1rem;
    }
}

@media screen and (max-width: 940px) {
    .query-posts.three-across:not(.post-type-location, .post-type-case-study) {
        --column-count: 1;
    }
}

.query-posts.four-across {
    --gap: 2rem;
    --column-count: 4;
    display: flex;
}

@media screen and (max-width: 1200px) {
    .query-posts.four-across {
        --column-count: 3;
    }
}

@media screen and (max-width: 1024px) {
    .query-posts.four-across {
        --column-count: 2;
    }
}

@media screen and (max-width: 767px) {
    .query-posts.four-across {
        --column-count: 1;
        --gap: 1rem;
    }
}

.query-posts.five-across {
    --gap: 1rem;
    --column-count: 5;
    display: flex;
}

@media screen and (max-width: 1200px) {
    .query-posts.five-across {
        --column-count: 3;
    }

    .query-posts.five-across .hentry.client.is-promoted {
        --column-count: 4;
    }
}

@media screen and (max-width: 1024px) {
    .query-posts.five-across {
        --column-count: 2;
    }
}

@media screen and (max-width: 767px) {
    .query-posts.five-across {
        --column-count: 1;
        --gap: 1rem;
    }
}

input[type=submit],
input[type=button],
button,
.button,
.btn {
    position: relative;
    display: inline-block;
    margin: 0 0 0;
    font-family: proxima-nova, sans-serif;
    text-decoration: none;
    line-height: 1;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border-radius: 0;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
    color: var(--color, #000);
    border: 1px solid currentColor;
    letter-spacing: 0;
    font-size: .95em;
    font-weight: 600;
    padding: .8em 2em;
    transition: all .2s linear;
}

input[type=submit].aligncenter,
input[type=submit].center,
input[type=button].aligncenter,
input[type=button].center,
button.aligncenter,
button.center,
.button.aligncenter,
.button.center,
.btn.aligncenter,
.btn.center {
    display: block;
    max-width: 250px;
    margin: 0 auto 1em;
}

input[type=submit]:hover,
input[type=button]:hover,
button:hover,
.button:hover,
.btn:hover {
    text-decoration: none;
    background: #b9c5d6;
    border-color: #b9c5d6;
}

input[type=submit].loading:after,
input[type=button].loading:after,
button.loading:after,
.button.loading:after,
.btn.loading:after {
    position: absolute;
    right: -40px;
    top: 50%;
    margin: -15px 0 0 0;
    display: block;
    background: url(../image/loading.png) no-repeat center top;
    width: 30px;
    height: 30px;
    content: " ";
    animation: loading 1s steps(19) infinite;
}

input[type=submit].done,
input[type=button].done,
button.done,
.button.done,
.btn.done {
    cursor: default;
    color: #555;
    border-color: #555;
}

input[type=submit].done:hover,
input[type=button].done:hover,
button.done:hover,
.button.done:hover,
.btn.done:hover {
    color: #555;
    background: none;
}

button.unstyled,
.button.unstyled {
    padding: 3px 5px;
    background: none;
    color: #363636;
    font-size: 100%;
    font-family: arial, sans-serif;
    background: #eee;
    border: 1px solid #ccc;
    border-radius: 3px;
}

button.unstyled:hover {
    background: #eee;
}

input[type=text],
input[type=password],
input[type=email],
input[type=tel],
textarea {
    line-height: 1;
    margin: 0;
    padding: .5rem 1rem;
    border: 1px solid #b9c5d6;
    background: #fff;
    border-radius: 0;
    box-sizing: border-box;
    font-family: proxima-nova, sans-serif;
    font-size: 1rem;
    font-weight: 400;
}

textarea {
    width: 100%;
}

.input.select {
    --input-icon-size: var(--icon-size, .8em);
    --input-padding: var(--padding, .5em);
    --input-font-size: var(--font-size, .833em);
    position: relative;
    z-index: 1;
    padding: 0;
    background: #edeff2;
    box-sizing: border-box;
    cursor: pointer;
    font-size: .833em;
    font-weight: 700;
    line-height: 1;
}

.input.select .label {
    --line-width: 2px;
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    padding: .5em .8em;
    text-transform: uppercase;
    border-radius: 0;
    background: var(--background-color, transparent) none;
    opacity: 1;
    transition: min-width .2s ease;
}

.input.select .label>.icon {
    position: relative;
    --line-width: 2px;
    display: inline-block;
    margin: 0 0 0 var(--gap);
    width: .7rem;
    height: .7rem;
    color: var(--icon-color, inherit);
    transition: .2s ease;
    transform-origin: 50% 50%;
}

.input.select .label>.icon:before,
.input.select .label>.icon:after {
    content: " ";
    display: block;
    position: absolute;
    box-sizing: border-box;
    top: 50%;
}

.input.select .label>.icon:before {
    left: 0;
    width: 100%;
    height: var(--line-width);
    transform: translate(0, -50%);
    background: currentColor;
}

.input.select .label>.icon:after {
    top: 50%;
    right: 0;
    width: .5rem;
    height: .5rem;
    margin: 0 calc(var(--line-width) * -.5) 0 0;
    border: 1px solid currentColor;
    border-width: var(--line-width) var(--line-width) 0 0;
    transform-origin: 100% 0;
    transform: rotate(45deg);
}

.input.select:not(.on) .label:hover>.icon {
    transform: rotate(90deg);
}

.input.select.on .label>.icon {
    transform: rotate(270deg);
}

.input.select .options {
    display: block;
    max-height: 0;
    overflow: hidden;
    transition: max-height .2s ease, padding .2s ease;
    position: absolute;
    z-index: 5;
    top: 100%;
    left: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    background: var(--background-color, #edeff2) none;
    font-weight: 500;
    line-height: 1.1;
    opacity: 0;
}

.input.select .options .optgroup {
    display: block;
    padding: .2em .8em;
    cursor: default;
    font-size: .8em;
    opacity: .6;
}

.input.select .options .option {
    position: relative;
    display: block;
    padding: .5em .8em;
    margin: 0;
    transition: background-color .2s ease;
}

.input.select .options .option:before {
    content: " ";
    display: block;
    position: absolute;
    top: auto;
    bottom: -1px;
    left: .8em;
    width: calc(100% - 1.6em);
    height: 1px;
    background: #b9c5d6;
    margin: 0;
    transition: .2s ease;
}

.input.select .options .option.selected {
    font-weight: 700;
}

.input.select .options .option:last-child {
    margin-bottom: 0;
    padding-bottom: calc(var(--input-padding) + var(--input-padding) * .5);
}

.input.select .options .option:hover {
    background-color: #b9c5d6;
}

.input.select .options .option:hover:before {
    opacity: 0;
}

.input.select.on .label {
    min-width: 200px;
}

.input.select.on .label:after {
    transform: rotate(135deg) translate(0, -5px);
    margin-top: calc(var(--input-icon-size) / -2 - .4em);
}

.input.select.on .options {
    max-height: -moz-fit-content;
    max-height: fit-content;
    opacity: 1;
    margin-top: -.5em;
    padding-top: .5em;
}

.input.select select {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border: 0;
    background: 0;
    opacity: 0;
    visibility: hidden;
    cursor: pointer;
}

@media screen and (max-width: 600px) {
    .input.select select {
        z-index: 2;
        width: 100%;
        height: 100%;
        visibility: visible;
    }

    .input.select .options {
        display: none !important;
    }
}

.gform_heading {
    margin-bottom: 2rem;
}

#gform_page_1_1 .gfield_label.gform-field-label {
    display: none;
}

.gform_wrapper .gfield.buttonized .gfield_radio,
.gform_wrapper .gfield.buttonized .gfield_checkbox {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    row-gap: .8rem;
    margin-bottom: 1.5rem;
}

.gform_wrapper .gfield.buttonized .gfield_radio .gchoice,
.gform_wrapper .gfield.buttonized .gfield_checkbox .gchoice {
    display: grid;
    grid-template-columns: 1em auto;
    align-items: center;
    gap: .5em;
    max-width: 100%;
    width: 100%;
    color: #000;
    padding: 0 .75rem 0;
    background-color: #edeff2;
}

.gform_wrapper .gfield.buttonized .gfield_radio .gchoice:hover,
.gform_wrapper .gfield.buttonized .gfield_checkbox .gchoice:hover {
    background-color: #1c355e;
    color: #b9c5d6;
    transition: .2s ease;
}

.gform_wrapper .gfield.buttonized .gfield_radio .gchoice:hover label::after,
.gform_wrapper .gfield.buttonized .gfield_checkbox .gchoice:hover label::after {
    color: #b9c5d6;
}

.gform_wrapper .gfield.buttonized .gfield_radio label,
.gform_wrapper .gfield.buttonized .gfield_checkbox label {
    padding: 1.3rem 0;
    line-height: 2.2;
    font-family: proxima-nova, sans-serif;
    -webkit-font-smoothing: antialiased;
    letter-spacing: 0;
    font-size: 1.3em;
    font-weight: 500;
    text-transform: none;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.gform_wrapper .gfield.buttonized .gfield_radio label::after,
.gform_wrapper .gfield.buttonized .gfield_checkbox label::after {
    content: "";
    font-family: "Font Awesome 6 Free";
    color: #54c8e8;
    font-style: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-size: 25px;
}

@media screen and (max-width: 767px) {

    .gform_wrapper .gfield.buttonized .gfield_radio label,
    .gform_wrapper .gfield.buttonized .gfield_checkbox label {
        padding: 1rem 0;
        line-height: 1.4;
    }

    .gform_wrapper .gfield.buttonized .gfield_radio label::after,
    .gform_wrapper .gfield.buttonized .gfield_checkbox label::after {
        margin-left: 1rem;
    }
}

.gform_wrapper .gfield.buttonized input[type=radio]:focus+label,
.gform_wrapper .gfield.buttonized input[type=checkbox]:focus+label,
.gform_wrapper .gfield.buttonized input[type=radio]:checked+label,
.gform_wrapper .gfield.buttonized input[type=checkbox]:checked+label {
    transition: .2s ease;
}

.gform_wrapper .gfield.buttonized input[type=radio],
.gform_wrapper .gfield.buttonized input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
}

.gform_wrapper.gravity-theme .gfield input,
.gform_wrapper.gravity-theme .gfield select {
    max-width: revert !important;
}

.gform_wrapper.gravity-theme .gfield textarea,
.ginput_container.ginput_container_text input,
.ginput_container.ginput_container_website input,
.ginput_container.ginput_container_phone input,
.ginput_container.ginput_container_email input,
.ginput_container.ginput_container--name .name_first input,
.ginput_container.ginput_container--name .name_last input {
    font-family: proxima-nova, sans-serif;
    font-size: .94rem;
    padding: 10px;
    color: #444;
}

.ginput_container.ginput_container_website input,
.ginput_container.ginput_container_phone input,
.ginput_container.ginput_container_email input,
.ginput_container.name_first input,
.ginput_container.name_last input {
    border: 1px solid #ccc;
}

.gform_wrapper.gravity-theme .gform_validation_errors>h2 {
    font-size: 15px;
    letter-spacing: 0;
}

.gform_wrapper.gravity-theme .gfield_validation_message,
.gform_wrapper.gravity-theme .validation_message {
    border-radius: 15px;
}

input.gform_button,
input.gform_previous_button,
input.gform_next_button,
input.gform-theme-button,
.gform_wrapper.gravity-theme .gform_previous_button.button,
.gform_wrapper.gravity-theme .gform_next_button.button {
    font-weight: 600;
    text-transform: none;
    color: #122748 !important;
    border: 2px solid #122748;
    letter-spacing: 0;
    font-size: .94em;
    padding: .75rem 1.75rem .82rem;
    font-family: proxima-nova, sans-serif;
}

input.gform_button:hover,
input.gform_previous_button:hover,
input.gform_next_button:hover,
input.gform-theme-button:hover,
.gform_wrapper.gravity-theme .gform_previous_button.button:hover,
.gform_wrapper.gravity-theme .gform_next_button.button:hover {
    background-color: #1c355e;
    color: #b9c5d6 !important;
    border: 2px solid #1c355e;
}

.gform_page_fields {
    margin-bottom: 36px;
}

.gform_wrapper.gravity-theme .gform_footer,
.gform_wrapper.gravity-theme .gform_page_footer {
    margin-bottom: 2.5rem !important;
}

@media screen and (max-width: 767px) {
    .wp-block-group.has-background>.gform_wrapper {
        padding: 0;
    }

    input.gform_button,
    input.gform_previous_button,
    input.gform_next_button,
    input.gform-theme-button,
    .gform_wrapper.gravity-theme .gform_previous_button.button,
    .gform_wrapper.gravity-theme .gform_next_button.button {
        line-height: 1 !important;
    }

    .gform_wrapper .gfield.buttonized .gfield_radio .gchoice,
    .gform_wrapper .gfield.buttonized .gfield_checkbox .gchoice {
        -moz-column-gap: 0;
        column-gap: 0;
    }
}

.posts-nav {
    grid-area: posts-nav;
    clear: both;
    margin: 4em 0 2em;
    white-space: nowrap;
}

.posts-nav.max-page-1 {
    display: none;
}

.posts-nav.no-ajax {
    visibility: visible;
}

.posts-nav.ajax-pager {
    visibility: visible;
    text-align: center;
    margin: 0;
}

.posts-nav:after {
    content: " ";
    display: block;
    clear: both;
}

.posts-nav ul {
    margin: 0;
    padding: 0;
    text-align: center;
}

.posts-nav ul li {
    display: inline-block;
    vertical-align: middle;
    margin: 0 5px 0 0;
    padding: 0;
    list-style: none;
    color: #aaa;
}

.posts-nav ul li.page_info {
    display: none;
}

.posts-nav ul li a {
    display: block;
    padding: .5em .7em;
    line-height: normal;
    text-decoration: none;
    border: 0;
}

.posts-nav ul li a:hover {
    color: #fff;
    background: #767676;
}

.posts-nav ul li.active_page {
    color: #fff;
    background: #1c355e;
}

.posts-nav ul li.active_page a {
    padding: .5em 1em;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .query-posts.mobile-carousel+.posts-nav {
        display: none;
    }
}

.hentry {
    --padding: 1.5em;
    display: flex;
    flex-direction: column;
    justify-content: end;
    position: relative;
    box-sizing: border-box;
    padding: var(--padding);
    background: var(--hentry-background-color, #fff);
    color: var(--hentry-color, inherit);
}

.hentry .title {
    grid-area: title;
    color: var(--hentry-color, #1c355e);
}

.hentry .thumbnail {
    grid-area: thumbnail;
    display: block;
    position: relative;
    margin: calc(var(--padding) * -1) calc(var(--padding) * -1) var(--padding) calc(var(--padding) * -1);
    padding: 0 0 75%;
    background-size: 50% auto;
}

.hentry .thumbnail img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.hentry .content {
    grid-area: content;
    flex-grow: 1;
}

.hentry .date {
    grid-area: date;
}

.hentry .meta {
    grid-area: meta;
}

.hentry.empty {
    opacity: 0;
    visibility: hidden;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.hentry.excerpt {
    --thumbnail-size: 230px;
    display: grid;
    grid-template-columns: var(--thumbnail-size) 1fr;
    grid-template-areas: "thumbnail border" "thumbnail date" "thumbnail title" "thumbnail meta" "thumbnail .";
    grid-template-rows: 1fr auto auto auto 1em;
    -moz-column-gap: 1em;
    column-gap: 1em;
    padding: 0;
}

.hentry.excerpt:before {
    content: " ";
    display: block;
    grid-area: border;
    width: 100%;
    height: 1px;
    background: #b9c5d6;
}

.hentry.excerpt .thumbnail {
    padding: 0 0 100%;
    margin: 0;
    background: #eeeff1 url(images/placeholder-fallback-posts-image.jpg) no-repeat 50% 50%;
    background-size: 50% auto;
}

.has-post-thumbnail.hentry.excerpt .thumbnail {
    background-image: none;
}

.hentry.excerpt .date,
.hentry.excerpt .meta {
    font-size: .833em;
    color: #767676;
}

.hentry.excerpt .date {
    text-transform: uppercase;
    margin-bottom: .25em;
    font-weight: 600;
}

.hentry.excerpt .meta {
    margin-top: .25em;
}

.hentry.excerpt .meta a {
    text-decoration: none;
}

.hentry.excerpt .meta a:hover {
    text-decoration: underline;
}

.hentry.excerpt .title {
    margin: 0;
    font-family: proxima-nova, sans-serif;
    font-weight: 600;
    font-size: 1.2rem;
}

.hentry.excerpt.case-study .date {
    display: none;
}

.hentry.excerpt.content-type-podcast .thumbnail,
.hentry.excerpt.content-type-video .thumbnail,
.hentry.excerpt.content-type-audio .thumbnail {
    --icon-size: 80px;
}

.hentry.excerpt.content-type-podcast .thumbnail:before,
.hentry.excerpt.content-type-podcast .thumbnail:after,
.hentry.excerpt.content-type-video .thumbnail:before,
.hentry.excerpt.content-type-video .thumbnail:after,
.hentry.excerpt.content-type-audio .thumbnail:before,
.hentry.excerpt.content-type-audio .thumbnail:after {
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: .2s ease;
}

.hentry.excerpt.content-type-podcast .thumbnail:before,
.hentry.excerpt.content-type-video .thumbnail:before,
.hentry.excerpt.content-type-audio .thumbnail:before {
    width: var(--icon-size);
    height: var(--icon-size);
    border-radius: 50%;
    background: rgba(255, 255, 255, .7);
}

.hentry.excerpt.content-type-podcast .thumbnail:after,
.hentry.excerpt.content-type-video .thumbnail:after,
.hentry.excerpt.content-type-audio .thumbnail:after {
    margin-left: 5px;
    width: calc(var(--icon-size) * .35);
    height: calc(var(--icon-size) * .4);
    -webkit-clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
    background-color: #1c355e;
}

.hentry.excerpt.content-type-podcast:hover .thumbnail:before,
.hentry.excerpt.content-type-video:hover .thumbnail:before,
.hentry.excerpt.content-type-audio:hover .thumbnail:before {
    background-color: #fff;
}

@media screen and (max-width: 1000px) and (min-width: 601px) {
    .query-posts.two-across .hentry.excerpt {
        --thumbnail-size: 180px;
    }
}

.hentry.excerpt.promoted {
    background: #edeff2;
}

.hentry.excerpt.promoted:before {
    opacity: 0;
}

.hentry.excerpt.promoted:after {
    content: "Pinned";
    text-transform: uppercase;
    position: absolute;
    top: 0;
    right: 0;
    padding: .5em;
    background: #54c8e8;
    color: #1c355e;
    font-size: .66em;
    line-height: 1;
    font-weight: 700;
}

.hentry.excerpt.promoted .date,
.hentry.excerpt.promoted .meta {
    color: #666;
}

@media screen and (max-width: 600px) {
    .hentry.excerpt {
        --thumbnail-size: 180px;
    }
}

@media screen and (max-width: 500px) {
    .hentry.excerpt {
        display: block;
        padding-bottom: 1em;
        --thumbnail-size: 100%;
        grid-template-columns: auto;
        grid-template-rows: auto;
        grid-template-areas: "thumbnail" "date" "title" "meta";
    }

    .hentry.excerpt:before {
        display: none;
    }

    .hentry.excerpt .thumbnail {
        margin-bottom: 1em;
    }
}

.hentry.type-team {
    --padding: 0px;
    background: none;
    text-align: left;
    padding-bottom: 0;
    justify-content: start;
}

.hentry.type-team .thumbnail {
    margin-top: 0;
    margin-bottom: calc(var(--blockMargin, 4rem) * .25);
    padding-bottom: 100%;
}

.hentry.type-team .title {
    font-size: 1.22rem;
    font-family: proxima-nova, sans-serif;
    font-weight: 500;
    word-break: break-word;
}

.hentry.type-team .meta {
    font-size: .833rem;
    letter-spacing: normal;
    text-transform: none;
    color: #444;
    font-weight: revert;
}

.hentry.type-case-study {
    --padding: 5px;
    padding-top: 1.5em;
    background-color: transparent;
    text-align: center;
    transition: .2s ease;
}

.hentry.type-case-study .thumbnail {
    transition: .2s ease;
    margin: 0 calc(var(--padding) * -1);
}

.hentry.type-case-study .title {
    font-family: proxima-nova, sans-serif;
}

.hentry.type-case-study .heading.h5 {
    text-transform: none;
    letter-spacing: normal;
    font-weight: 400;
    color: #444;
}

.hentry.type-case-study .offering {
    transition: .2s ease;
    padding: .4em 0;
    line-height: 1;
    font-size: .8em;
    color: #fff;
    background: #1c355e;
    font-family: proxima-nova, sans-serif;
    margin-left: -5px;
    margin-right: -5px;
}

.hentry.type-case-study:hover {
    background-color: #fff;
}

.hentry.type-case-study:hover .offering {
    margin-left: 0;
    margin-right: 0;
}

.hentry.type-case-study:hover .thumbnail {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0;
}

.single-case-study .hentry.type-case-study:hover {
    background-color: #edeff2;
}

.hentry.excerpt-card.type-location {
    background: var(--hentry-background-color, #edeff2);
    color: var(--hentry-color, #444);
    font-size: .833em;
    line-height: 1.2;
}

.hentry.excerpt-card.type-location.hidden {
    display: none;
}

.hentry.excerpt-card.type-location .title {
    font-family: proxima-nova, sans-serif;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--hentry-highlight-color, #1c355e);
}

.hentry.excerpt-card.type-location .thumbnail {
    margin-bottom: calc(var(--padding) + .5em);
}

.hentry.excerpt-card.type-location .location-status {
    position: absolute;
    left: var(--padding);
    bottom: 0;
    transform: translate(0, 50%);
    display: inline-block;
    padding: .5em .8em;
    line-height: 1;
    text-transform: uppercase;
    font-size: .66em;
    font-weight: 700;
    color: #1c355e;
    background: #b9c5d6;
    font-family: proxima-nova, sans-serif;
}

.hentry.excerpt-card.type-location .location-status.open {
    background-color: #54c8e8;
}

.hentry.excerpt-card.type-location .meta-bottom {
    line-height: 1;
    font-size: .77rem;
    padding: 1em 0 0;
    margin: 2em 0 0;
    border-top: 1px solid #b9c5d6;
    display: flex;
    flex-direction: column;
    gap: .5em;
    font-family: proxima-nova, sans-serif;
}

.hentry.excerpt-card.type-location .meta-bottom .icon,
.hentry.excerpt-card.type-location .meta-bottom a:before {
    width: 1em;
    text-align: center;
    margin: 0 .5em 0 0;
    color: var(--hentry-highlight-color, #1c355e);
}

.hentry.excerpt-card.type-location .meta-bottom a {
    text-decoration: none;
}

.hentry.excerpt-card.type-location .meta-bottom a:hover {
    text-decoration: underline;
}

.hentry.excerpt-card.type-location .meta-bottom .terms {
    display: flex;
    flex-direction: column;
    gap: .5em;
}

.hentry.excerpt-card.type-location .meta-bottom .terms a {
    display: block;
}

.hentry.excerpt-card.type-location .meta-bottom .terms a:before {
    font-family: "Font Awesome 6 Free";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: 900;
    text-transform: none;
    content: "";
}

.hentry.search {
    --padding: 0;
    margin-bottom: 1.75rem;
}

.hentry.search .title {
    margin: 0 0 .25em;
    font-family: loretta, serif;
    font-size: 1.66rem;
}

.hentry.search .url {
    font-size: .8em;
    margin-top: .25rem;
}

p {
    margin: 0 0 1em 0;
    margin-block-start: 0;
    margin-block-end: 1em;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

p:last-child {
    margin-bottom: 0;
}

p a {
    text-decoration: underline;
    transition: all .2s ease;
}

p a:hover {
    color: #1c355e;
    text-decoration-color: transparent;
}

p.has-drop-cap:not(:focus)::first-letter {
    display: block;
    float: left;
    margin: .1em .05em 0 0;
    color: #f00;
    font-size: 3.5em;
    font-weight: 600;
    line-height: .7;
}

p.has-text-align-center,
.is-layout-constrained p.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
    max-width: 630px;
}

p.has-text-align-center.has-x-large-font-size,
.is-layout-constrained p.has-text-align-center.has-x-large-font-size {
    max-width: 756px;
}

p.has-large-font-size,
p.has-x-large-font-size {
    line-height: 1.2;
}

p.is-style-intro {
    font-size: 1.22em;
    color: #1c355e;
    font-family: proxima-nova, sans-serif;
    font-weight: 500;
    line-height: 1.78rem;
}

@media screen and (max-width: 767px) {
    p.is-style-intro {
        font-size: 1.11rem;
    }
}

#search-top {
    position: fixed;
    z-index: 1101;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    padding: 5em var(--gutter-right) 2em var(--gutter-left);
    margin: var(--wp-admin--admin-bar--height, 0) 0 0;
    background: #edeff2;
    transition: translate .25s ease-in-out, opacity .25s ease-in-out;
    translate: 0 -105%;
    opacity: 0;
}

body.search-on #search-top {
    translate: 0 0%;
    opacity: 1;
}

#search-top .field {
    display: flex;
    justify-content: center;
}

#search-top .field input[type=text] {
    flex-grow: 1;
    background: none;
    border: 0;
    padding: .5em 0;
    font-size: 1.2rem;
    line-height: 1;
    max-width: 730px;
    width: 730px;
    border-bottom: 2px solid #b9c5d6;
}

#search-top .field input[type=text]:focus-visible {
    outline: none;
    border-bottom: 2px solid #1c355e;
}

#search-top .field button {
    display: inline-block;
    background: none;
    padding: 0 .5em;
    margin: 0;
    border: 0;
    border-radius: 0;
    color: #767676;
}

#search-top .toggle.search {
    --bar-thickness: 2px;
    --color: #767676;
    position: absolute;
    top: 0;
    right: var(--gutter-right);
    width: 20px;
    height: 70px;
    transform-origin: 50% 50%;
    transition: .2s ease;
    transform: rotate(0deg);
}

#search-top .toggle.search:hover {
    transform: rotate(90deg);
}

#search-top .toggle.search:before,
#search-top .toggle.search:after {
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    left: 0%;
    width: 100%;
    height: var(--bar-thickness);
    margin: calc(var(--bar-thickness) / -2) 0 0;
    transform-origin: 50% 50%;
    transition: opacity .25s ease-in-out, transform .25s ease-in-out;
    transform: rotate(0deg);
    opacity: 1;
    background: var(--color);
}

#search-top .toggle.search:before {
    transform: rotate(45deg);
}

#search-top .toggle.search:after {
    transform: rotate(-45deg);
}

#header {
    --logo-width: 245px;
    --vertical-padding: 1.25em;
    --background-color: var(--page-top-background-color, #fff);
    --highlight-color: var(--page-top-highlight-color, #edeff2);
    position: fixed;
    z-index: 1001;
    top: 0;
    left: 0;
    width: 100%;
    padding: var(--alert-height, 0) 0 0 0;
    margin: var(--wp-admin--admin-bar--height, 0) 0 0;
    background: var(--background-color) no-repeat;
    transition: background-color .25s ease-in-out, transform .4s ease-in-out;
    transform: translate(0, 0);
}

body.scrolled #header {
    --background-color: #fff;
}

body.scrolled:not(.scroll-up, .menu-on) #header {
    transform: translate(0, -110%);
}

#header ul,
#header li {
    margin: 0;
    padding: 0;
    list-style: none;
}

#header>.layout {
    display: grid;
    grid-template-columns: [start] var(--gutter-left) var(--logo-width) 1fr auto var(--gutter-right) [end];
    grid-template-rows: auto 1px var(--vertical-padding) auto var(--vertical-padding);
    grid-template-areas: ".   top  top top ." "sep sep  sep sep sep" ".   .    .   .   ." ".   logo nav nav ." ".   .    .   .   .";
}

#header>.layout:before {
    content: " ";
    display: block;
    width: 100%;
    margin: 0;
    background: #b9c5d6;
    grid-area: sep;
}

#header .block-logo {
    grid-area: logo;
    padding: 0 var(--vertical-padding) 0 0;
    align-self: end;
}

#header .block-logo a {
    display: block;
}

#header .block-logo a img,
#header .block-logo a svg {
    display: block;
}

@media screen and (max-width: 767px) {
    #header .block-logo {
        padding: 0;
    }
}

#header .block-top {
    grid-area: top;
    padding: .25em 0;
    font-size: .722rem;
    color: #767676;
    text-transform: uppercase;
    letter-spacing: .5px;
}

#header .block-top>ul {
    display: flex;
    align-items: end;
    justify-content: flex-end;
    gap: .5em;
}

#header .block-top>ul a {
    display: inline-block;
    padding: .25em .5em;
    text-decoration: none;
    color: inherit;
    font-weight: 600;
}

#header .block-top>ul a:hover {
    text-decoration: none;
    color: #1c355e;
}

#header .block-top>ul li.current-menu-item a,
#header .block-top>ul li.current-menu-ancestor a {
    background: #edeff2;
    color: #666;
}

#header .block-top .toggle {
    margin: 0 0 0 1.5em;
}

#header .block-top #search-toggle:hover {
    color: #1c355e;
}

#header .block-toggle {
    grid-area: toggle;
    margin: 0;
    display: flex;
    justify-content: center;
    align-self: center;
}

#header .block-toggle .toggle.menu {
    --width: 25px;
    --height: 26px;
    --bar-thickness: 2px;
    --color: #1c355e;
    display: none;
    opacity: 0;
    position: relative;
    width: var(--width);
    align-items: center;
    color: var(--color);
    cursor: pointer;
    transition: .2s ease;
}

#header .block-toggle .toggle.menu:hover {
    opacity: 1;
}

#header .block-toggle .toggle.menu .icon {
    display: block;
    position: relative;
    width: var(--width);
    height: var(--height);
    line-height: var(--height);
    text-align: center;
    transition: opacity .25s ease-in-out, transform .25s ease-in-out;
    transform: rotate(0deg);
    opacity: 1;
    margin-left: 0;
}

#header .block-toggle .toggle.menu .icon:before {
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    box-sizing: border-box;
    top: 50%;
    border: 0 solid var(--color);
    height: calc(var(--height) / 1.5);
    border-width: var(--bar-thickness) 0;
    margin: calc(var(--height) / 1.5 / -2) 0 0 0;
}

#header .block-toggle .toggle.menu:before,
#header .block-toggle .toggle.menu:after {
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    left: 0%;
    width: 100%;
    height: var(--bar-thickness);
    margin: calc(var(--bar-thickness) / -2) 0 0;
    transform-origin: 50% 50%;
    transition: opacity .25s ease-in-out, transform .25s ease-in-out;
    transform: rotate(0deg);
    opacity: 1;
    background: var(--color);
}

body.menu-on #header .block-toggle .toggle.menu:before,
body.menu-on #header .block-toggle .toggle.menu:after {
    opacity: 1;
}

body.menu-on #header .block-toggle .toggle.menu:before {
    transform: rotate(-45deg);
}

body.menu-on #header .block-toggle .toggle.menu:after {
    transform: rotate(-135deg);
}

body.menu-on #header .block-toggle .toggle.menu .icon {
    opacity: 0;
    transform: rotate(-45deg);
}

#header .block-nav {
    grid-area: nav;
}

#header .block-nav>ul>li>a {
    display: block;
    color: #1c355e;
    font-weight: var(--nav-font-weight, 600);
    text-decoration: none;
    background: transparent;
}

#header .block-nav .sub-menu {
    color: #1c355e;
}

@media screen and (min-width: 1061px) {
    #header .block-nav {
        display: flex !important;
        align-items: end;
        justify-content: end;
        line-height: 1;
    }

    #header .block-nav>ul {
        --x: var(--nav-item-horizontal-padding, 1em);
        display: flex;
        align-items: end;
        justify-content: flex-end;
        gap: .2em;
        margin: 0 calc(var(--x) * -1) var(--logo-text-offset, 6px) 0;
    }

    #header .block-nav>ul>li {
        position: relative;
    }

    #header .block-nav>ul>li:before {
        content: " ";
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 0%;
        background: var(--highlight-color);
        transition: height .2s ease;
    }

    #header .block-nav>ul>li>a {
        position: relative;
        z-index: 1;
        padding: .8em var(--x);
        font-size: .88rem;
        transition: background-color .2s ease;
    }

    #header .block-nav>ul>li:hover:before,
    #header .block-nav>ul>li.current-menu-item:before,
    #header .block-nav>ul>li.current-menu-ancestor:before {
        height: 100%;
    }

    #header .block-nav>ul>li.menu-item-has-children>a {
        padding-right: 2em;
    }

    #header .block-nav>ul>li.menu-item-has-children>a:after {
        position: absolute;
        margin: 0 0 0 .5em;
        font-family: "Font Awesome 6 Free";
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        font-weight: 900;
        text-transform: none;
        content: "";
        color: #b9c5d6;
        transition: transform .2s ease;
    }

    #header .block-nav>ul>li.menu-item-has-children.on>a:after {
        transform: scale(-1);
    }

    #header .block-nav>ul>li>ul {
        display: block;
        position: absolute;
        max-height: 0;
        overflow: hidden;
        top: 100%;
        left: 0;
        min-width: 100%;
        width: 200px;
        font-size: .83rem;
        line-height: 1;
        padding: 0;
        background: var(--highlight-color);
        transition: .2s ease;
    }

    #header .block-nav>ul>li>ul>li {
        opacity: 0;
        transition: opacity .2s ease;
    }

    #header .block-nav>ul>li>ul>li>a {
        display: block;
        padding: .75em var(--x);
        transition: background-color .2s ease;
        text-decoration: none;
    }

    #header .block-nav>ul>li>ul>li>a:hover {
        background-color: #dcdee0;
    }

    #header .block-nav>ul>li>ul>li.current-menu-item>a {
        font-weight: bold;
    }

    #header .block-nav>ul>li.on>a {
        background-color: var(--highlight-color);
    }

    #header .block-nav>ul>li.on>ul {
        display: block;
        max-height: var(--subnav-height, -moz-fit-content);
        max-height: var(--subnav-height, fit-content);
        padding: .5em 0;
    }

    #header .block-nav>ul>li.on>ul>li {
        opacity: 1;
    }

    #header .block-top {
        display: flex !important;
        justify-content: flex-end;
        align-items: center;
    }
}

@media screen and (max-width: 1250px) and (min-width: 1061px) {
    #header {
        --nav-item-horizontal-padding: .7em;
    }

    #header .text.longform {
        display: none;
    }
}

@media screen and (max-width: 1060px) {
    #header {
        --logo-width: 170px;
        --vertical-padding: 1.9em;
        --nav-font-weight: 600;
        background: #fff;
    }

    #wrap:before {
        content: " ";
        display: block;
        position: fixed;
        z-index: 991;
        top: 0;
        left: 0;
        width: 100%;
        height: 0;
        background: #fff;
        transition: height .25s ease-in-out;
    }

    #header>.layout {
        position: relative;
        z-index: 1;
        grid-template-rows: var(--vertical-padding) auto var(--vertical-padding) 1px auto auto;
        grid-template-areas: ". . . . ." ". logo . toggle ." ". . . . ." "sep sep sep sep sep" ". nav nav nav ." "top top top top top";
    }

    #header>.layout:before {
        content: " ";
        display: block;
        width: 100%;
        margin: 0;
        background: transparent;
        grid-area: sep;
    }

    #header .block-nav {
        display: none;
        overflow: hidden;
    }

    #header .block-nav a {
        text-decoration: none;
    }

    #header .block-nav>ul {
        flex-direction: column;
        align-items: center;
    }

    #header .block-nav>ul>li {
        display: grid;
        grid-template-columns: 1fr auto;
        grid-template-areas: "label icon" "menu menu";
        row-gap: .6rem;
        width: 100%;
        border-bottom: 1px solid #edeff2;
        margin: .6rem 0;
    }

    #header .block-nav>ul>li>a {
        grid-area: label;
        position: relative;
        padding: .5em 0;
    }

    #header .block-nav>ul>li>a:after {
        display: none;
    }

    #header .block-nav>ul>li>ul {
        grid-area: menu;
        font-size: .9em;
        margin: .5em 0 1em 1em;
        display: none;
    }

    #header .block-nav>ul>li>ul a {
        display: block;
    }

    #header .block-nav>ul>li>ul a:hover {
        text-decoration: underline;
    }

    #header .block-nav>ul>li:after {
        grid-area: icon;
        align-self: center;
    }

    #header .block-nav>ul>li.menu-item-has-children:after {
        font-family: "Font Awesome 6 Free";
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        font-weight: 900;
        text-transform: none;
        content: "";
        font-size: 18px;
        width: 1em;
        margin: 0 0 0 .5em;
        text-align: center;
        color: #b9c5d6;
        cursor: pointer;
        transition: transform .2s ease;
        transform-origin: 50% 50%;
    }

    #header .block-nav>ul>li.on:after {
        transform: rotate(90deg);
    }

    #header .block-nav>ul>li.on>ul {
        display: block;
    }

    #header .block-top {
        display: none;
        padding: 0 var(--gutter-right) 0 var(--gutter-left);
        margin-top: 0;
        overflow: hidden;
    }

    #header .block-top>ul {
        padding: .5em 0 1.5em;
        flex-direction: column;
        align-items: start;
        justify-content: auto;
        gap: 1em;
    }

    #header .block-top>ul a {
        padding-left: 0;
    }

    #header .block-top>ul li.current-menu-item a,
    #header .block-top>ul li.current-menu-ancstor a {
        background: none;
        text-decoration: underline;
    }

    #header .block-top .toggle {
        margin: 1em 0;
        font-size: 1rem;
    }

    #header .block-toggle {
        font-size: 1rem;
    }

    #header .block-toggle .toggle.search {
        display: none;
    }

    #header .block-toggle .toggle.menu {
        display: block;
        opacity: 1;
    }

    body.menu-on #header {
        max-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
        overflow: auto;
    }

    body.menu-on #wrap:before {
        height: 100vh;
    }

    #header .sub-menu li {
        margin: .6rem 0;
    }

    #header .sub-menu li:first-of-type {
        margin-top: -.8rem;
    }
}

@media screen and (max-width: 500px) {
    #header {
        --vertical-padding: 1.4em;
    }
}

#footer {
    --logo-width: 250px;
    --background-color: #1c355e;
    --color: #b9c5d6;
    --gap: 1rem;
    --gap-column: calc(var(--blockMargin, 4rem) * 1);
    position: relative;
    padding: calc(var(--blockMargin, 4rem) * 1) 0 0;
    background: var(--background-color);
    color: var(--color);
    line-height: 1.3;
}

#footer .label {
    text-transform: uppercase;
    font-weight: 700;
    font-size: .77rem;
    letter-spacing: .5px;
}

#footer .content p {
    color: #fff;
    margin-top: 5px;
}

#footer .content p a {
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: all .2s ease;
}

#footer .content p a:hover {
    color: #fff;
    text-decoration-color: inherit;
}

#footer .block-logo {
    grid-area: logo;
    margin: 0;
}

#footer .block-logo a {
    display: block;
    width: var(--logo-width);
    max-width: 100%;
}

#footer .block-logo a img {
    display: block;
}

#footer .block-tag {
    grid-area: tag;
    margin: 0;
    font-size: .88em;
    max-width: 285px;
}

#footer .block-social {
    grid-area: social;
}

#footer .block-social ul,
#footer .block-social li {
    margin: 0;
    padding: 0;
    list-style: none;
}

#footer .block-social ul {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
}

#footer .block-social a {
    --icon-size: 1.5em;
    display: inline-block;
    width: var(--icon-size);
    height: var(--icon-size);
    border-radius: 50%;
    color: var(--background-color);
    background-color: var(--color);
    line-height: calc(var(--icon-size) * 1);
    text-align: center;
    font-size: 20px;
    transition: background-color .2s ease;
}

#footer .block-social a:hover {
    background-color: #fff;
}

#footer .block-social a .icon {
    font-size: 18px;
}

#footer .block-content {
    align-self: end;
    grid-area: content;
    margin: 0 0 17px;
    font-size: 1.77rem;
    font-family: loretta, serif;
    line-height: 1;
}

#footer .block-content .content p {
    color: #b9c5d6;
}

#footer .block-contact {
    grid-area: contact;
    padding: 0 var(--gap) 0 0;
}

#footer .block-address {
    grid-area: address;
}

#footer .block-nav {
    grid-area: explore;
    padding: 0 0 0 var(--gap);
}

#footer .block-nav ul,
#footer .block-nav li {
    margin: 0;
    padding: 0;
    list-style: none;
}

#footer .block-nav ul {
    display: flex;
    flex-direction: column;
    gap: .5em;
    line-height: 1.2;
}

#footer .block-nav a {
    display: block;
    color: #fff;
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: all .2s ease;
}

#footer .block-nav a:hover {
    text-decoration-color: inherit;
}

#footer .block-bottom {
    grid-area: copy;
    margin: calc(var(--blockMargin, 4rem) * 1) 0 0;
    padding: 1em;
    font-size: .8em;
    line-height: 1;
    background: #122748;
    text-align: center;
    text-transform: uppercase;
}

#footer .block-bottom a {
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: all .2s ease;
}

#footer .block-bottom a:hover {
    text-decoration-color: inherit;
}

#footer .block-bottom ul,
#footer .block-bottom li {
    margin: 0;
    padding: 0;
    list-style: none;
}

#footer .block-bottom ul {
    display: inline-flex;
    margin: 0;
}

#footer .block-bottom ul li:before {
    content: "|";
    margin: 0 .75em;
}

@media screen and (max-width: 1024px) {
    #footer .block-nav {
        padding-left: 0;
    }
}

@media screen and (max-width: 1080px) {
    #footer {
        --logo-width: 200px;
    }

    #footer .block-content {
        font-size: 1.2rem;
    }
}

@media screen and (max-width: 767px) {
    #footer {
        text-align: center;
    }

    #footer .block-logo a,
    #footer .block-tag {
        margin-left: auto;
        margin-right: auto;
    }

    #footer .block-content {
        margin: calc(var(--blockMargin, 4rem) * .25) 0 0;
    }

    #footer .block-social {
        margin: 0 0 calc(var(--blockMargin, 4rem) * .5);
    }

    #footer .block-social ul {
        justify-content: center;
    }

    #footer .block-contact {
        padding: 0;
    }
}

@media screen and (max-width: 600px) {
    #footer .block-bottom ul {
        margin: .5em 0 0;
        display: flex;
        justify-content: center;
    }

    #footer .block-bottom ul li:first-child:before {
        display: none;
    }
}

.wrap {
    max-width: 1400px;
    margin: 0 auto;
}

@media screen and (max-width: 1505.376344086px) {
    .wrap {
        margin: 0 3.5%;
    }
}

.theme-block {
    --block-margin-multiplier: 1;
    position: relative;
    margin-top: calc(var(--blockMargin, 4rem) * var(--block-margin-multiplier));
    margin-bottom: calc(var(--blockMargin, 4rem) * var(--block-margin-multiplier));
}

.theme-block:first-child {
    margin-top: 0;
}

.theme-block:last-child {
    margin-bottom: 0;
}

.page-blocks>.theme-block.is-style-full-width,
.page-blocks>.theme-block.full-width {
    margin-left: calc(var(--gutter-left-override, var(--gutter-left)) * -1);
    margin-right: calc(var(--gutter-right-override, var(--gutter-right)) * -1);
}

.page-blocks>.theme-block.is-style-medium-width {
    margin-left: calc((1000px - var(--main-content-width)) / -2);
    margin-right: calc((1000px - var(--main-content-width)) / -2);
}

@media screen and (max-width: 1075.2688172043px) {
    .page-blocks>.theme-block.is-style-medium-width {
        margin-left: calc((100vw - var(--main-content-width) - var(--gutter-left) - var(--gutter-right)) * -.5);
        margin-right: calc((100vw - var(--main-content-width) - var(--gutter-left) - var(--gutter-right)) * -.5);
    }
}

.page-blocks>.theme-block.is-style-large-width {
    margin-left: calc((1200px - var(--main-content-width)) / -2);
    margin-right: calc((1200px - var(--main-content-width)) / -2);
}

@media screen and (max-width: 1290.3225806452px) {
    .page-blocks>.theme-block.is-style-large-width {
        margin-left: calc((100vw - var(--main-content-width) - var(--gutter-left) - var(--gutter-right)) * -.5);
        margin-right: calc((100vw - var(--main-content-width) - var(--gutter-left) - var(--gutter-right)) * -.5);
    }
}

#wrap>.theme-block {
    margin-left: var(--gutter-left);
    margin-right: var(--gutter-right);
}

.main-content.post .page-blocks>.theme-block.is-style-medium-width {
    margin-left: 0;
    margin-right: calc((var(--side-width) / 2 + var(--side-gap)) * -1);
}

.main-content.post .page-blocks>.theme-block.is-style-large-width {
    margin-left: 0;
    margin-right: calc(((var(--side-width)) + var(--side-gap)) * -1);
}

body.has-js .appear-on-scroll {
    opacity: 0;
}

body.has-js .appear-on-scroll.appear-init {
    transform: translate(0, 2rem);
    transition: opacity .4s ease-in-out, transform .4s ease-in-out;
}

body.has-js .appear-on-scroll.appeared {
    opacity: 1;
    transform: translate(0, 0);
}

body.no-js .appear-on-scroll,
body.disable-appear-on-scroll .appear-on-scroll {
    opacity: 1;
    transform: none;
}

.site-skip-nav {
    position: fixed;
    z-index: 1101;
    top: 0;
    left: 0;
    padding: 5px 15px;
    margin-top: var(--wp-admin--admin-bar--height, 0);
    background: #ffa500;
    color: #fff;
    transform: translate(-100%, -100%);
}

.site-skip-nav:focus {
    transform: translate(0%, 0%);
}

#wrap {
    position: relative;
    z-index: 10;
    padding: calc(var(--header-height, 90px)) 0 0 0;
}

body.single-location:not(.scrolled) {
    --page-top-background-color: #edeff2;
    --page-top-highlight-color: #fff;
}

.main-content {
    --main-content-padding-bottom: calc(var(--blockMargin, 4rem) * 1);
    position: relative;
    z-index: 10;
    margin: 0;
    padding: 0;
    background: var(--background-color);
    color: var(--color);
}

body.has-transparent-header .main-content {
    margin-top: calc(var(--header-height, 90px) * -1);
}

.main-content>.layout {
    position: relative;
    display: grid;
    grid-template-columns: [start] var(--gutter-left) minmax(0, 1fr) var(--gutter-right) [end];
    grid-template-areas: ". title ." ". meta ." ". hero ." ". blocks ." ". filters ." ". posts ." ". pager .";
    padding: 0 0 var(--main-content-padding-bottom);
}

.main-content .page-blocks {
    position: relative;
    grid-area: blocks;
}

.main-content .page-blocks sup {
    font-size: .65em;
}

.main-content .block-hero {
    grid-area: hero;
    position: relative;
    z-index: 1;
    margin: 0 0 calc(var(--blockMargin, 4rem) * 1);
}

.main-content .block-hero>.image {
    display: block;
    position: relative;
    padding: 0 0 66%;
}

.main-content .block-hero>.image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.main-content .block-title {
    grid-area: title;
    margin: calc(var(--blockMargin, 4rem) * .5) 0;
    color: #1c355e;
}

.main-content .block-archive-description {
    grid-area: meta;
    margin: calc(var(--blockMargin, 4rem) * -.25) 0 calc(var(--blockMargin, 4rem) * .75);
    max-width: 47rem;
}

.main-content .block-meta {
    grid-area: meta;
    margin: 0 0 1.5rem;
    font-weight: 700;
    color: #1c355e;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .7em;
    text-transform: uppercase;
    font-size: .8em;
}

.main-content .block-meta a {
    text-decoration: none;
}

.main-content .block-meta a:hover {
    text-decoration: underline;
}

.main-content .block-meta .date {
    display: inline-block;
    padding: .2em .5em;
    background: #b9c5d6;
}

.main-content .block-meta .terms a {
    display: inline-block;
    color: inherit;
}

.main-content .block-side {
    grid-area: side;
}

.main-content .query-posts {
    grid-area: posts;
    position: relative;
    z-index: 1;
}

.main-content .block-filters {
    grid-area: filters;
    position: relative;
    z-index: 2;
}

.main-content .block-pager {
    grid-area: pager;
}

.main-content.front-page .block-map {
    position: relative;
    z-index: 1;
    height: 70vh;
    margin: 0 0 calc(var(--blockMargin, 4rem) * .5);
}

.main-content.front-page .block-map .block-embed {
    background: #edeff2;
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
}

.main-content.front-page .block-filters {
    --gap: .7em;
    grid-area: filters;
    position: relative;
    z-index: 2;
    margin-bottom: calc(var(--blockMargin, 4rem) * .25);
    display: grid;
    grid-template-columns: auto auto 1fr auto;
    grid-template-areas: "select status . reset";
    align-items: center;
    margin: 0 0 var(--gap);
    gap: var(--gap);
}

.main-content.front-page .block-filters .status strong {
    font-weight: 600;
}

.main-content.front-page .block-filters .status.empty {
    display: none;
    color: #f00;
}

.main-content.front-page .block-filters.no-markers .status.not-empty {
    display: none;
}

.main-content.front-page .block-filters.no-markers .status.empty {
    display: block;
}

.main-content.front-page .block-filters .filters {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: end;
    gap: var(--gap);
}

.main-content.front-page .block-filters .status {
    grid-area: status;
}

.main-content.front-page .block-filters .input.select {
    grid-area: select;
}

.main-content.front-page .block-filters button[type=reset] {
    grid-area: reset;
}

@media screen and (max-width: 767px) {
    .main-content.front-page .block-filters {
        grid-template-columns: auto 1fr auto;
        grid-template-areas: "select . reset" "status status status";
    }

    .main-content.front-page .block-filters button[type=reset] {
        text-align: center;
        justify-content: center;
    }

    .main-content.front-page .block-filters .input.select .label {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}

@media screen and (max-width: 500px) {
    .main-content.front-page .block-filters {
        --gap: .5em;
    }

    .main-content.front-page .block-filters button .icon {
        display: none;
    }
}

.main-content.front-page .block-filters button {
    padding: .5em .8em;
    background: #edeff2;
    color: #1c355e;
    font-size: .833em;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    border: 2px solid rgba(28, 53, 94, 0);
    transition: .2s ease;
}

.main-content.front-page .block-filters button:hover {
    border-color: #1c355e;
    background: #fff;
}

.main-content.front-page .block-filters .input.select .label {
    border: 2px solid rgba(28, 53, 94, 0);
    transition: .2s ease;
}

.main-content.front-page .block-filters .input.select .label:hover {
    border-color: #1c355e;
    background: #fff;
}

.main-content.front-page .block-filters .input.select.on .label {
    border-color: #1c355e;
    background: #fff;
}

.main-content.front-page .block-filters .input.select .options {
    background-color: #fff;
    border: 2px solid #1c355e;
    border-top: 0;
}

.main-content.front-page .block-filters .input.select .options .option:hover {
    background-color: #edeff2;
}

.main-content.front-page .block-filters button {
    display: flex;
    align-items: center;
    border-radius: 0;
}

.main-content.front-page .block-filters button .icon {
    margin: 0 0 0 var(--gap);
    transform-origin: 50% 50%;
    transition: .2s ease;
    transform: rotate(0deg);
}

.main-content.front-page .block-filters button:hover .icon {
    transform: rotate(45deg);
}

.main-content.front-page .block-locations.query-posts {
    display: none;
}

.main-content.search .block-title,
.main-content.search .block-meta {
    text-align: center;
    margin-bottom: 1rem;
}

.main-content.search .block-meta {
    justify-content: center;
    margin: 0 0 3rem;
}

.main-content.search .query-posts {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.main-content.search form.block-pager {
    text-align: center;
}

.main-content.expertise .query-posts {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.main-content.expertise .block-filters {
    max-width: 1200px;
    width: 100%;
    margin: calc(var(--blockMargin, 4rem) * .5) auto;
}

.main-content.expertise .block-filters .filter-status {
    margin: calc(var(--blockMargin, 4rem) * .5) 0 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1em;
}

.main-content.expertise .block-filters .filter-status button {
    margin: 0;
    padding: .5em .8em;
    background: #edeff2;
    color: #1c355e;
    font-size: .833em;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    border: 2px solid rgba(28, 53, 94, 0);
    transition: .2s ease;
    display: inline-flex;
    align-items: center;
    border-radius: 0;
}

.main-content.expertise .block-filters .filter-status button .icon {
    margin: 0 0 0 .5em;
    transform-origin: 50% 50%;
    transition: .2s ease;
    transform: rotate(0deg);
}

.main-content.expertise .block-filters .filter-status button:hover {
    border-color: #1c355e;
    background: #fff;
}

.main-content.expertise .block-filters .filter-status button:hover .icon {
    transform: rotate(180deg);
}

.main-content.expertise .block-filters .filter-status button.all {
    visibility: hidden;
}

.main-content.expertise .block-filters .term-filters {
    display: flex;
    gap: 1em;
    margin: 0;
    padding: 0;
    list-style: none;
}

.main-content.expertise .block-filters .term-filters li {
    position: relative;
    flex-grow: 1;
    flex-basis: 100%;
    display: flex;
    align-items: stretch;
    background: #1c355e;
    color: #fff;
    font-size: .85em;
    line-height: 1.3;
}

.main-content.expertise .block-filters .term-filters li .icon {
    --line-width: 2px;
    --icon-color: var(--hentry-color, #54c8e8);
    position: relative;
    display: block;
    margin: 2em 0 0;
    width: .7rem;
    height: .7rem;
    color: var(--icon-color, #54c8e8);
    transition: .2s ease;
    transform-origin: 50% 50%;
    transform: rotate(0deg);
}

.main-content.expertise .block-filters .term-filters li .icon:before,
.main-content.expertise .block-filters .term-filters li .icon:after {
    content: " ";
    display: block;
    position: absolute;
    box-sizing: border-box;
    top: 50%;
}

.main-content.expertise .block-filters .term-filters li .icon:before {
    left: 0;
    width: 100%;
    height: var(--line-width);
    transform: translate(0, -50%);
    background: currentColor;
}

.main-content.expertise .block-filters .term-filters li .icon:after {
    top: 50%;
    left: auto;
    right: 0;
    width: .5rem;
    height: .5rem;
    margin: 0 calc(var(--line-width) * -.5) 0 0;
    border: 1px solid currentColor;
    border-width: var(--line-width) var(--line-width) 0 0;
    transform-origin: 100% 0;
    transform: rotate(45deg);
    background: none;
}

.main-content.expertise .block-filters .term-filters li input[type=radio] {
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    cursor: pointer;
    visibility: hidden;
}

.main-content.expertise .block-filters .term-filters li label {
    position: relative;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    min-height: 100%;
    min-width: 100%;
    text-decoration: none;
    padding: 1.5em;
    transition: background-color .2s ease;
    cursor: pointer;
}

.main-content.expertise .block-filters .term-filters li label:hover {
    color: #1c355e;
    background: #b9c5d6;
    --hentry-color: #1c355e;
}

.main-content.expertise .block-filters .term-filters li label:hover .icon {
    transform: rotate(90deg);
}

.main-content.expertise .block-filters .term-filters li strong {
    display: block;
    margin: 0 0 .3em;
    font-weight: 600;
    font-size: 1.33em;
    line-height: 1.2;
}

.main-content.expertise .block-filters .term-filters li .description {
    display: block;
    flex-grow: 1;
}

.main-content.expertise .block-filters .term-filters li input[type=radio]:checked+label {
    color: #1c355e;
    background: #b9c5d6;
    --hentry-color: #1c355e;
}

.main-content.expertise .block-filters .term-filters li input[type=radio]:checked+label .icon {
    transform: rotate(90deg);
}

@media screen and (max-width: 1200px) {
    .main-content.expertise .block-filters .term-filters li {
        flex: 45%;
    }
}

@media screen and (max-width: 1200px) {
    .main-content.expertise .block-filters .term-filters {
        flex-direction: row;
        flex-wrap: wrap;
    }
}

@media screen and (max-width: 767px) {
    .main-content.expertise .block-filters .term-filters {
        flex-direction: column;
    }
}

.main-content.team {
    --inner-gutter: 0px;
    --page-top-background-color: #edeff2;
}

@media screen and (min-width: 1105px) {
    .main-content.team {
        --inner-gutter: calc((100vw - 1000px - var(--gutter-left) - var(--gutter-right)) / 2);
    }
}

.main-content.team>.layout {
    --gutter-left-override: calc(var(--gutter-left) + var(--inner-gutter));
    --gutter-right-override: calc(var(--inner-gutter) + var(--gutter-right));
    grid-template-areas: ". . . . . . ." ". . . . hero . ." ". . title . hero . ." ". . meta . hero . ." ". . . . hero . ." ". . . . hero . ." ". . blocks blocks blocks . .";
    grid-template-rows: [start] calc(var(--blockMargin, 4rem) * 1) 1fr auto auto calc(var(--blockMargin, 4rem) * .5) [end] calc(var(--blockMargin, 4rem) * .5) auto;
    grid-template-columns: [start] var(--gutter-left) var(--inner-gutter) minmax(0, 1fr) calc(var(--blockMargin, 4rem) * .5) minmax(auto, 400px) var(--inner-gutter) var(--gutter-right) [end];
}

.main-content.team>.layout:before {
    content: " ";
    display: block;
    grid-column-start: start;
    grid-column-end: end;
    grid-row-start: start;
    grid-row-end: end;
    background: var(--page-top-background-color);
}

.main-content.team .block-hero {
    margin-bottom: 0;
}

.main-content.team .block-hero .image {
    padding-bottom: 100%;
    background: rgba(0, 0, 0, .1) url(../image/logo-white.svg) no-repeat 50% 50%;
    background-size: 50% auto;
}

.main-content.team .block-title {
    margin-top: 0;
    margin-bottom: 1rem;
}

.main-content.team .block-title h1 {
    font-family: proxima-nova, sans-serif;
}

.main-content.team .block-meta {
    margin-bottom: 0;
    font-size: 1rem;
}

.main-content.team .page-blocks {
    margin-top: calc(var(--blockMargin, 4rem) * 1);
    max-width: 650px;
}

@media screen and (max-width: 767px) {
    .main-content.team {
        --inner-gutter: 0px;
    }

    .main-content.team>.layout {
        grid-template-areas: ". hero ." ". hero ." ". title." ". meta ." ". . ." ". blocks .";
        grid-template-columns: [start] var(--gutter-left) minmax(0, 1fr) var(--gutter-right) [end];
        grid-template-rows: calc(var(--blockMargin, 4rem) * .5) [start] auto auto auto calc(var(--blockMargin, 4rem) * .5) [end] auto;
    }

    .main-content.team .block-hero {
        margin-bottom: calc(var(--blockMargin, 4rem) * .5);
        max-width: 50vw;
    }

    .main-content.team .page-blocks {
        margin-top: calc(var(--blockMargin, 4rem) * .5);
    }
}

.main-content.locations {
    --bottom-background-color: #1c355e;
    --bottom-color: #b9c5d6;
    --map-height: 75vh;
    margin-bottom: 1px;
}

.main-content.locations>.layout {
    grid-template-areas: ". . ." ". title ." ". blocks ." ". filters ." ". map ." ". map ." ". posts ." ". notice ." ". . .";
    grid-template-rows: calc(var(--blockMargin, 4rem) * 1) auto auto auto calc(var(--map-height) / 2) [start] calc(var(--map-height) / 2) auto auto var(--main-content-padding-bottom) [end];
    padding-bottom: 0;
}

.main-content.locations>.layout:after {
    content: " ";
    display: block;
    background: var(--bottom-background-color);
    grid-column-start: start;
    grid-column-end: end;
    grid-row-start: start;
    grid-row-end: end;
}

body:not(.map-on) .main-content.locations>.layout {
    grid-template-areas: ". . ." ". title ." ". blocks ." ". filters ." ". posts ." ". posts ." ". notice ." ". . .";
    grid-template-rows: calc(var(--blockMargin, 4rem) * 1) auto auto auto calc(var(--map-height) / 2) [start] auto auto var(--main-content-padding-bottom) [end];
}

.main-content.locations .block-title {
    text-align: center;
    margin-bottom: calc(var(--blockMargin, 4rem) * .5);
}

.main-content.locations .page-blocks {
    margin-bottom: calc(var(--blockMargin, 4rem) * 1);
}

.main-content.locations .block-filters {
    --gap: .7em;
    grid-area: filters;
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: auto 1fr auto auto auto;
    grid-template-areas: "open status select reset toggle";
    align-items: center;
    margin: 0 0 var(--gap);
    gap: var(--gap);
}

body:not(.map-on) .main-content.locations .block-filters {
    margin-bottom: calc(var(--blockMargin, 4rem) * .5);
}

.main-content.locations .block-filters .status strong {
    font-weight: 600;
}

.main-content.locations .block-filters .status.empty {
    display: none;
    color: #f00;
}

.main-content.locations .block-filters.no-markers .status.not-empty {
    display: none;
}

.main-content.locations .block-filters.no-markers .status.empty {
    display: block;
}

.main-content.locations .block-filters .filters {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: end;
    gap: var(--gap);
}

.main-content.locations .block-filters .toggle-control.open {
    grid-area: open;
}

.main-content.locations .block-filters .status {
    grid-area: status;
}

.main-content.locations .block-filters .input.select {
    grid-area: select;
}

.main-content.locations .block-filters button[type=reset] {
    grid-area: reset;
}

.main-content.locations .block-filters .toggle-control.map {
    grid-area: toggle;
    padding: .5em .8em .5em 1.5em;
}

@media screen and (max-width: 940px) {
    .main-content.locations .block-filters .status {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .main-content.locations .block-filters {
        grid-template-columns: auto;
        grid-template-areas: "select select select" "open reset toggle" "status status status";
    }

    .main-content.locations .block-filters .toggle-control,
    .main-content.locations .block-filters button[type=reset] {
        text-align: center;
        justify-content: center;
    }

    .main-content.locations .block-filters .input.select .label {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}

@media screen and (max-width: 500px) {
    .main-content.locations .block-filters {
        --gap: .5em;
    }

    .main-content.locations .block-filters button .icon {
        display: none;
    }

    .main-content.locations .block-filters button[type=reset],
    .main-content.locations .block-filters .toggle-control {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .main-content.locations .block-filters .toggle-control.map .switch {
        display: none;
    }

    .main-content.locations .block-filters .toggle-control.map .label.toggle-on,
    .main-content.locations .block-filters .toggle-control.map .label.toggle-off {
        width: 100%;
        right: auto !important;
    }
}

.main-content.locations .block-filters button,
.main-content.locations .block-filters .toggle-control {
    padding: .5em .8em;
    background: #edeff2;
    color: #1c355e;
    font-size: .833em;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    border: 2px solid rgba(28, 53, 94, 0);
    transition: .2s ease;
}

.main-content.locations .block-filters button:hover,
.main-content.locations .block-filters .toggle-control:hover {
    border-color: #1c355e;
    background: #fff;
}

.main-content.locations .block-filters .input.select .label {
    border: 2px solid rgba(28, 53, 94, 0);
    transition: .2s ease;
}

.main-content.locations .block-filters .input.select .label:hover {
    border-color: #1c355e;
    background: #fff;
}

.main-content.locations .block-filters .input.select.on .label {
    border-color: #1c355e;
    background: #fff;
}

.main-content.locations .block-filters .input.select .options {
    background-color: #fff;
    border: 2px solid #1c355e;
    border-top: 0;
}

.main-content.locations .block-filters .input.select .options .option:hover {
    background-color: #edeff2;
}

.main-content.locations .block-filters button {
    display: flex;
    align-items: center;
    border-radius: 0;
}

.main-content.locations .block-filters button .icon {
    margin: 0 0 0 var(--gap);
    transform-origin: 50% 50%;
    transition: .2s ease;
    transform: rotate(0deg);
}

.main-content.locations .block-filters button:hover .icon {
    transform: rotate(45deg);
}

.main-content.locations .block-filters .toggle-control {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: .5em;
}

.main-content.locations .block-filters .toggle-control .label {
    text-transform: uppercase;
}

.main-content.locations .block-filters .toggle-control .label.toggle-off {
    position: absolute;
    right: 2.8em;
}

.main-content.locations .block-filters .toggle-control .switch {
    --size: .8em;
    position: relative;
    display: inline-block;
    margin: 0;
    width: 1.5em;
    height: .8em;
    background: #b9c5d6;
    border-radius: 2em;
}

.main-content.locations .block-filters .toggle-control .switch:before {
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    left: calc(100% - var(--size));
    width: var(--size);
    height: var(--size);
    transform: translate(0%, -50%);
    border-radius: 50%;
    background: #1c355e;
    transition: .2s ease;
}

.main-content.locations .block-filters .toggle-control:not(.on) .label.toggle-on {
    visibility: hidden;
}

.main-content.locations .block-filters .toggle-control.on .label.toggle-off {
    visibility: hidden;
}

.main-content.locations .block-filters .toggle-control.on .switch {
    background-color: #54c8e8;
}

.main-content.locations .block-filters .toggle-control.on .switch:before {
    left: 0;
}

.main-content.locations .block-map {
    display: none;
    position: relative;
    z-index: 1;
    grid-area: map;
    margin: 0 0 calc(var(--blockMargin, 4rem) * .5);
}

body.map-on .main-content.locations .block-map {
    display: block;
}

.main-content.locations .block-embed {
    background: #edeff2;
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
}

.main-content.locations .block-notice {
    position: relative;
    z-index: 1;
    grid-area: notice;
    max-width: 640px;
    margin: calc(var(--blockMargin, 4rem) * .5) auto 0;
    text-align: center;
    background: var(--bottom-background-color);
    color: var(--bottom-color);
}

.main-content.page {
    --main-content-width: 730px;
    --inner-gutter: calc((100vw - var(--main-content-width) - (var(--gutter) * 2)) / 2);
}

@media screen and (max-width: 784.9462365591px) {
    .main-content.page {
        --main-content-width: 100%;
    }
}

.main-content.page>.layout {
    --gutter-left-override: calc(var(--gutter-left) + var(--inner-gutter));
    --gutter-right-override: calc(var(--gutter-right) + var(--inner-gutter));
    margin-left: var(--gutter-left);
    margin-right: var(--gutter-right);
    grid-template-columns: var(--inner-gutter) auto var(--inner-gutter);
    grid-template-rows: auto;
    grid-template-areas: "hero hero hero" ". title ." ". blocks ." ". filters ." ". posts ." ". pager .";
}

@media screen and (max-width: 784.9462365591px) {
    .main-content.page>.layout {
        --gutter-left-override: var(--gutter-left);
        --gutter-right-override: var(--gutter-left);
    }
}

.main-content.post {
    --side-width: 17em;
    --side-gap: calc(var(--blockMargin, 4rem) * .5);
    --inner-gutter: 0px;
    --page-top-background-color: #edeff2;
    --main-content-width: 650px;
}

@media screen and (min-width: 1105px) {
    .main-content.post {
        --inner-gutter: calc((100vw - 1000px - var(--gutter-left) - var(--gutter-right)) / 2);
    }
}

@media screen and (max-width: 698.9247311828px) {
    .main-content.post {
        --main-content-width: 100%;
    }
}

.main-content.post>.layout {
    --gutter-left-override: calc(var(--gutter-left) + var(--inner-gutter));
    --gutter-right-override: calc(var(--side-gap) + var(--side-width) + var(--inner-gutter) + var(--gutter-right));
    grid-template-columns: [start] var(--gutter-left) var(--inner-gutter) minmax(0, 1fr) var(--side-gap) var(--side-width) var(--inner-gutter) var(--gutter-right) [end];
    grid-template-rows: calc(var(--blockMargin, 4rem) * 1) auto auto 2fr 1fr auto;
    grid-template-areas: ". . . . . . ." ". . title  title title . ." ". . meta   meta  meta  . ." ". . hero   hero  hero  . ." ". . hero   hero  hero  . ." ". . blocks .     side  . .";
}

.main-content.post>.layout:before {
    content: " ";
    display: block;
    grid-column-start: start;
    grid-column-end: end;
    grid-row-start: 1;
    grid-row-end: 5;
    background: var(--page-top-background-color);
}

@media screen and (max-width: 767px) {
    .main-content.post>.layout {
        --gutter-left-override: calc(var(--gutter-left));
        --gutter-right-override: calc(var(--gutter-right));
        --side-width: 0px;
        --side-gap: 0px;
        grid-template-columns: [start] var(--gutter-left) minmax(0, 1fr) var(--gutter-right) [end];
        grid-template-areas: ". . ." ". title ." ". meta ." ". hero ." ". hero ." ". blocks ." ". side .";
    }
}

.main-content.post>.layout>.block-title {
    margin: 0 0 .5rem;
    font-family: proxima-nova, sans-serif;
}

.main-content.post>.layout>.block-title h1,
.main-content.post>.layout>.block-title h2 {
    font-family: inherit;
    font-size: 2.4rem;
}

@media screen and (max-width: 767px) {

    .main-content.post>.layout>.block-title h1,
    .main-content.post>.layout>.block-title h2 {
        font-size: 2rem;
        line-height: 1.2;
    }
}

.main-content.post.no-featured-image .block-title {
    padding-top: calc(var(--blockMargin, 4rem) * 2);
}

.main-content.post.no-featured-image .block-meta {
    margin-bottom: calc(var(--blockMargin, 4rem) * .7);
}

.main-content.post.no-featured-image .page-blocks,
.main-content.post.no-featured-image .block-side {
    padding-top: calc(var(--blockMargin, 4rem) * .7);
}

.main-content.post .block-hero>.wp-block-gallery-wrap {
    padding-left: 0;
    padding-right: 0;
}

.main-content.post .block-hero>.wp-block-gallery-wrap>.wp-block-gallery {
    max-width: none;
    width: 100%;
}

.main-content.post .block-side {
    display: flex;
    flex-direction: column;
    gap: 1em;
    margin: 0;
    padding: 0;
    list-style: none;
}

.main-content.post .block-side>li {
    margin: 0;
}

.main-content.post .block-side>li>.label {
    text-transform: uppercase;
    font-weight: 700;
    color: #767676;
}

.main-content.post .block-side .wp-block-button:not(.is-style-text, .is-style-text2) {
    --shift: 1.2em;
}

@media screen and (max-width: 767px) {
    .main-content.post .block-side {
        flex-direction: row;
        flex-wrap: wrap;
        margin-top: calc(var(--blockMargin, 4rem) * 1);
    }

    .main-content.post .block-side>li {
        width: 30%;
    }
}

@media screen and (max-width: 500px) {
    .main-content.post .block-side>li {
        width: 45%;
    }
}

body.single-case-study .main-content.post {
    --page-top-background-color: #1c355e;
}

body.single-case-study .main-content.post>.layout>.block-title,
body.single-case-study .main-content.post>.layout>.block-meta {
    color: #fff;
}

body.single-case-study .main-content.post>.layout>.block-title .offering,
body.single-case-study .main-content.post>.layout>.block-meta .offering {
    display: inline-block;
    padding: .2em .5em;
    background: #b9c5d6;
    color: #1c355e;
}

body.theme .page-blocks>.has-background+.has-background {
    margin-top: 0;
}

body.error404 .main-content .page-blocks {
    padding-top: 15vh;
    padding-bottom: 10vh;
    text-align: center;
}

body.error404 h1 {
    margin-bottom: 2rem;
}

body.error404 p {
    margin-bottom: 1.5rem;
}

.page-contact .main-content .layout a {
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: all .2s ease;
}

.page-contact .main-content .layout a:hover {
    text-decoration-color: inherit;
}

.icon.theme-custom {
    display: inline-block;
    height: 1.5em;
    width: 1.5em;
    position: relative;
}

.icon.theme-custom.theme-search:before {
    content: " ";
    display: block;
    position: absolute;
    top: .3em;
    left: .3em;
    width: .7em;
    height: .7em;
    border: 1px solid currentColor;
    border-radius: 50%;
}

.icon.theme-custom.theme-search:after {
    content: " ";
    display: block;
    position: absolute;
    bottom: .2em;
    right: .2em;
    width: .5em;
    height: 1px;
    background: currentColor;
    transform-origin: 100% 50%;
    transform: rotate(45deg);
}

.theme-block.related {
    margin: calc(var(--blockMargin, 4rem) * 1) 0;
    padding: 0;
}

.theme-block.contact {
    padding: 1em 1em 1em 4em;
    background: #edeff2;
    font-weight: 600;
}

.theme-block.contact:before {
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: 900;
    text-transform: none;
    content: "";
    position: absolute;
    top: 1.3em;
    left: 1em;
    width: 2em;
    height: 2em;
    line-height: 2em;
    background: #54c8e8;
    text-align: center;
}

.meta-bottom {
    margin-top: 2rem;
    padding-top: 1rem;
    font-size: .8em;
    font-weight: 600;
    text-transform: uppercase;
    border-top: 1px solid #b9c5d6;
}

.meta-bottom .sep {
    margin: 0 .2em;
    opacity: .3;
}

.meta-bottom a {
    text-decoration: none;
}

.meta-bottom a:hover {
    text-decoration: underline;
}

.slick-slider .slick-list {
    position: relative;
    overflow: hidden;
}

.slick-slider .slick-track {
    display: flex;
    align-items: flex-start;
}

.slick-slider .slick-track:after {
    content: " ";
    display: block;
    clear: both;
}

.slick-slider .slick-slide {
    display: block;
    white-space: normal;
}

.slick-arrow {
    position: relative;
    z-index: 10000;
    cursor: pointer;
}

.slick-arrow .icon {
    transition: all .2s ease;
}

.slick-arrow.next:hover .icon.arrow-right {
    transform: translate(3px, 0);
}

.slick-arrow.prev:hover .icon.arrow-left {
    transform: translate(-3px, 0);
}

.slick-arrow.slick-disabled {
    cursor: default;
    opacity: .1;
}

.slick-arrow.slick-hidden {
    display: none !important;
}

.slick-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75em;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
}

.slick-dots li {
    display: inline-block;
    padding: 0;
    margin: 0;
}

.slick-dots li:before {
    display: none;
}

.slick-dots li button {
    display: block;
    border: 0;
    padding: 0;
    margin: 0;
    width: 10px;
    height: 10px;
    background: rgba(204, 204, 204, .8);
    text-indent: -10000px;
    overflow: hidden;
    cursor: pointer;
    border-radius: 0;
}

.slick-dots li.slick-active button {
    background: #1c355e;
}

#posts-filter .layout {
    display: grid;
    width: 100%;
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
    gap: 1em;
    align-items: center;
    grid-template-columns: auto 1fr auto;
    grid-template-areas: "filters filters filters" "message . reset";
}

#posts-filter .filters {
    grid-area: filters;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1em;
    padding: 0 1rem;
}

#posts-filter .filters .filter {
    --border-radius: 1.3em;
    --icon-size: .7em;
    --padding: .75em;
    --font-size: 1rem;
    flex-grow: 1;
    flex-basis: 100%;
}

#posts-filter .filters .filter.text .input {
    display: flex;
    border: 1px solid currentColor;
    border-radius: var(--border-radius);
}

#posts-filter .filters .filter.text .input input[type=text] {
    flex-grow: 1;
    box-sizing: border-box;
    display: inline-block;
    width: 100%;
    padding: calc(var(--padding) - 3px) 1.2em;
    background: none;
    border: 0;
    border-radius: var(--border-radius) 0 0 var(--border-radius);
    font-size: var(--font-size);
    color: inherit;
}

#posts-filter .filters .filter.text .input ::-webkit-input-placeholder {
    color: var(--color, inherit);
    text-transform: uppercase;
}

#posts-filter .filters .filter.text .input :-moz-placeholder {
    color: var(--color, inherit);
    text-transform: uppercase;
}

#posts-filter .filters .filter.text .input ::-moz-placeholder {
    color: var(--color, inherit);
    text-transform: uppercase;
}

#posts-filter .filters .filter.text .input :-ms-input-placeholder {
    color: var(--color, inherit);
    text-transform: uppercase;
}

#posts-filter .filters .filter.text .input button {
    padding: .25em 1.2em;
    margin: 0;
    border-radius: 0;
    border: 0;
    background: none;
}

#posts-filter .filters .filter.text .input button:hover {
    color: inherit;
}

#posts-filter .message {
    grid-area: message;
}

#posts-filter .reset {
    grid-area: reset;
    padding-right: 1.2rem;
}

@media screen and (max-width: 767px) {
    #posts-filter .filters {
        flex-direction: column;
    }

    #posts-filter .filters .filter {
        width: 100%;
    }
}

#share-tab ul {
    list-style: none;
}

#share-tab ul li::before {
    content: none;
}

@media screen and (min-width: 1201px) {
    #share-tab {
        position: absolute;
        z-index: 100;
        right: 0;
        top: 50vh;
        color: #fff;
        line-height: 1;
        opacity: 1;
        transition: opacity .4s ease-in-out;
    }

    body.single-post #share-tab,
    body.single-gallery-item #share-tab {
        top: 60vh;
    }

    #share-tab.fixed {
        position: fixed;
        top: 200px !important;
    }

    #share-tab>a.toggle {
        transform-origin: 100% 0%;
        transform: rotate(90deg) translate(100%, 0);
        line-height: 44px;
        height: 44px;
        width: 80px;
    }

    body.share-on #share-tab ul {
        z-index: 1;
        opacity: 1;
        margin-top: 0;
        max-height: 500px;
        overflow: visible;
    }
}

#share-tab>a.toggle {
    display: inline-block;
    padding: 0;
    text-align: center;
    background: #edeff2;
    color: #444;
    text-transform: uppercase;
    font-family: proxima-nova, sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    border-radius: 0;
    transition: background-color .2s ease;
}

#share-tab>a.toggle.on,
#share-tab>a.toggle:hover {
    background-color: #b9c5d6;
}

#share-tab ul,
#share-tab li {
    position: relative;
    margin: 0;
    padding: 0;
    list-style: none;
}

#share-tab ul {
    position: absolute;
    right: 0;
    top: 110px;
    width: 44px;
    padding: 5px 0;
    background: #b9c5d6;
    text-align: center;
    transition: all .4s ease-in-out;
    opacity: 0;
    margin: -30px 0 0 0;
    max-height: 0;
    overflow: hidden;
    border-radius: 0;
}

#share-tab ul:before {
    position: absolute;
    top: -6px;
    left: 50%;
    margin: 0 0 0 -6px;
    content: " ";
    display: block;
    width: 0;
    height: 0;
    border: 6px solid #b9c5d6;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 0;
}

#share-tab ul>li>a {
    display: block;
    padding: 15px 0;
    color: #444;
    font-size: 16px;
    background-image: none;
    transition: background-color .2s ease;
}

#share-tab ul>li>a:hover {
    color: #000;
}

#share-tab ul>li>a .fa-plus {
    font-size: 22px;
}

#share-tab ul>li.last a {
    padding: 10px 15px 12px;
}

@media screen and (max-width: 1200px) {
    #share-tab {
        grid-area: share;
        display: flex;
        justify-content: center;
        padding: .5em;
        margin: calc(var(--blockMargin, 4rem) * .5) 0;
        color: inherit;
    }

    body.single-portfolio #share-tab {
        margin: 0;
    }

    #share-tab>a.toggle {
        padding: 12px 6px 0 0;
        margin: 0;
        line-height: 18px;
        background: none;
        color: inherit;
        font-size: .88em;
        font-weight: 700;
        border-radius: 5px;
    }

    #share-tab>a.toggle:hover {
        background: none;
    }

    #share-tab ul {
        position: relative;
        top: auto;
        right: auto;
        width: auto;
        padding: 0;
        margin: 0 5px;
        max-height: none;
        opacity: 1;
        background: none;
    }

    #share-tab ul li {
        display: inline-block;
    }

    #share-tab ul li a {
        padding: 12px 10px;
        line-height: 18px;
        font-size: 20px;
        min-width: 20px;
        margin: 0 1px;
        color: inherit;
    }

    #share-tab ul li a:hover {
        border-radius: 5px;
    }

    #share-tab ul li a .fa-brands {
        font-size: 18px;
    }

    #share-tab ul li a .fa-plus {
        font-size: 23px;
    }

    #share-tab ul li.last a {
        padding: 8px 10px 12px;
    }
}

#cookie-mask {
    position: fixed;
    z-index: 999999;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, .6);
}

#cookie-notice {
    box-sizing: border-box;
    position: fixed;
    z-index: 1000000;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 2em;
    background: #fff;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1em;
    align-items: center;
    font-size: .8em;
}

#cookie-notice .block-content {
    line-height: 1.2;
}

#cookie-notice .block-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .5em;
}

#cookie-notice button {
    font-size: .8em;
}

@media screen and (max-width: 1024px) {
    #cookie-notice {
        display: block;
    }

    #cookie-notice .block-content {
        margin-bottom: 1em;
    }
}

body.cookie-notice-on #wrap {
    filter: grayscale(1);
}

#alert {
    z-index: 1002;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    padding: 0;
    margin: var(--wp-admin--admin-bar--height, 0) 0 0;
    background: #1c355e;
    color: #fff;
}

#alert .block-title {
    position: relative;
    z-index: 1006;
    padding: .9em var(--gutter-right) .5em var(--gutter-left);
    margin: 0;
    border: 0;
    text-align: center;
    line-height: 1.2;
    font-size: 1.25em;
    background: inherit;
    color: inherit;
    transition: .25s ease-in-out;
}

@media screen and (max-width: 1200px) {
    #alert .block-title {
        padding-bottom: .45em;
    }
}

@media screen and (max-width: 767px) {
    #alert .block-title {
        font-size: 1rem;
        padding-top: 2.5em;
    }
}

body.scrolled #alert .block-title {
    padding-top: .3em;
    padding-bottom: .3em;
    font-size: 1em;
}

body.scrolled #alert .block-content {
    padding-bottom: .75em;
}

body.scrolled #alert .block-close {
    width: 20px;
    height: 20px;
}

@media screen and (max-width: 1200px) {
    body.scrolled #alert .block-title {
        padding-top: .9em;
        padding-bottom: .45em;
        font-size: 1.25em;
    }

    body.scrolled #alert .block-content {
        padding-bottom: 1em;
    }

    body.scrolled #alert .block-close {
        width: 20px;
        height: 20px;
    }
}

@media screen and (max-width: 767px) {
    body.scrolled #alert .block-title {
        font-size: 1em;
        padding-top: 2.5em;
    }

    body.scrolled #alert .block-content {
        padding-bottom: 1em;
    }
}

#alert.has-content .block-title {
    cursor: pointer;
}

#alert .block-content {
    --gutter-left: calc((100vw - 1024px) / 2);
    --gutter-right: calc((100vw - 1024px) / 2);
    z-index: 1007;
    width: 100%;
    padding: 0 var(--gutter-right) 1em var(--gutter-left);
    box-sizing: border-box;
    background: #1c355e;
    color: #fff;
    text-align: center;
    border-bottom: 4px solid #1c355e;
}

@media screen and (max-width: 1101.0752688172px) {
    #alert .block-content {
        --gutter-left: 3.5vw;
        --gutter-right: 3.5vw;
    }
}

#alert .block-content a:hover {
    color: #fff;
}

#alert .block-content .appear-on-scroll {
    opacity: 1 !important;
}

#alert .block-content .appear-on-scroll.appear-init {
    transform: none !important;
    transition: none !important;
}

@media screen and (max-width: 1200px) {
    #alert .block-content {
        padding-bottom: 1em;
    }
}

#alert .block-close {
    position: absolute;
    top: 1em;
    right: 1em;
    width: 20px;
    height: 20px;
    z-index: 1008;
    color: #000;
    cursor: pointer;
}

#alert .block-close:before,
#alert .block-close:after {
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    height: 2px;
    width: 100%;
    margin: -1px 0 0;
    transform-origin: 50% 50%;
    background: #fff;
}

#alert .block-close:before {
    transform: rotate(45deg);
}

#alert .block-close:after {
    transform: rotate(-45deg);
}

@media screen and (max-width: 767px) {
    #alert .block-close {
        width: 20px;
        height: 20px;
    }
}

#alert:not(.on) {
    display: none;
}

.block-map {
    --marker-size: 1.2rem;
}

.office-marker {
    position: absolute;
}

.office-marker .marker {
    position: absolute;
    transform: translate(-50%, -50%);
    cursor: pointer;
    color: #444;
}

.office-marker .marker:before {
    font-family: "Font Awesome 6 Free";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: 900;
    text-transform: none;
    content: "";
    font-size: 20px;
    transition: .2s ease;
}

.office-marker .marker:hover:before {
    color: #1c355e;
}

.office-marker .info-window {
    display: none;
    position: absolute;
    left: 30px;
    top: 0;
    transform: translate(0, -50%);
    width: 240px;
    background: #fff;
    padding: .5em;
    font-size: 16px;
    border: 2px solid #1c355e;
    box-shadow: 0 0 10px rgba(0, 0, 0, .2);
}

.office-marker .info-window:before {
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    right: 100%;
    width: 10px;
    height: 20px;
    margin: 0;
    background: #1c355e;
    -webkit-clip-path: polygon(0% 50%, 100% 0, 100% 100%);
    clip-path: polygon(0% 50%, 100% 0, 100% 100%);
    transform: translate(0, -50%);
}

.office-marker .info-window .name {
    display: block;
}

.office-marker .info-window .address {
    font-size: .8em;
    display: block;
    line-height: 1;
}

.office-marker .info-window a {
    text-decoration: none;
}

.office-marker.on .info-window {
    display: block;
}

.location-marker {
    --marker-color: rgba(185, 197, 214, .75);
    position: absolute;
    text-align: left;
    color: #444;
}

.location-marker.location-status-open {
    --marker-color: #54c8e8;
}

.location-marker .marker {
    display: block;
    position: absolute;
    bottom: 0;
    left: calc(var(--marker-size) / -2);
    width: var(--marker-size);
    transition: all .2s ease;
    cursor: pointer;
}

.location-marker .marker:before {
    font-family: "Font Awesome 6 Free";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: 900;
    text-transform: none;
    content: "";
    display: block;
    position: absolute;
    transition: opacity .2s ease;
    bottom: 0%;
    left: 0;
    width: 100%;
    text-align: center;
    opacity: 1;
    color: var(--marker-color);
    font-size: 24px;
}

.location-marker.all {
    --marker-color: #fff;
}

.location-marker .info-window {
    position: absolute;
    bottom: 100%;
    left: 0;
    transform: translate(-50%, 0);
    margin: 0 0 50px;
    padding: 0;
    display: none;
    max-height: calc(70vh - calc(var(--blockMargin, 4rem) * 1));
    background: #1c355e;
    color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, .25);
    border-radius: 0;
    font-size: 16px;
}

.location-marker .info-window:after {
    content: " ";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    width: 2em;
    height: 1em;
    margin: -1px 0 0 -1em;
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
    background: #1c355e;
}

@media screen and (min-height: 1400px) {
    .location-marker .info-window {
        max-height: calc(700px - calc(var(--blockMargin, 4rem) * 2));
    }
}

@media screen and (max-width: 700px) {
    .location-marker .marker {
        left: 0;
    }

    .location-marker .info-window {
        margin-left: 0;
        margin-top: var(--marker-size);
    }
}

.location-marker .hentry.type-location {
    --hentry-background-color: #1c355e;
    --hentry-color: #fff;
    --hentry-highlight-color: #54c8e8;
    min-width: 200px;
    margin: 0;
    line-height: 1.2;
    border-radius: 0;
    cursor: default;
}

@media screen and (min-width: 500px) {
    .location-marker .hentry.type-location {
        min-width: 320px;
    }
}

.location-marker .hentry.type-location:before {
    top: 1em;
    left: 1em;
    display: none;
}

.location-marker .hentry.type-location .close {
    display: none !important;
}

.location-marker .hentry.type-location .title {
    cursor: default !important;
    font-size: 1.2em;
    margin-left: revert;
    font-weight: 600;
}

.location-marker .hentry.type-location .content {
    font-family: proxima-nova, sans-serif;
}

.location-marker.on .info-window {
    display: block;
}

.cluster-marker-label {
    font-weight: 600;
    text-align: center;
    font-family: proxima-nova, sans-serif;
}

.wp-block-theme-blocks-hero {
    position: relative;
}

.wp-block-theme-blocks-hero .block-background {
    overflow: hidden;
}

.wp-block-theme-blocks-hero .block-background img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.wp-block-theme-blocks-hero .block-background video {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    width: auto;
    height: auto;
    min-width: 100%;
    min-height: 100%;
    transform: translate(-50%, -50%);
}

.wp-block-theme-blocks-hero .block-content {
    position: relative;
    z-index: 5;
}

.wp-block-theme-blocks-hero .block-content:before {
    display: block;
    content: " ";
    width: 0;
    height: 5px;
    background: #54c8e8;
    margin: 0 0 2rem;
}

.wp-block-theme-blocks-hero .block-content.appear-init:before {
    transition: width .4s ease-in-out;
}

.wp-block-theme-blocks-hero .block-content.appeared:before {
    width: 65px;
}

.wp-block-theme-blocks-hero h1 {
    font-weight: 400;
    font-size: 2.8rem;
}

@media screen and (min-width: 768px) {
    .wp-block-theme-blocks-hero {
        display: flex;
        align-items: end;
        padding: calc(var(--blockMargin, 4rem) * 1) var(--gutter-left) calc(var(--blockMargin, 4rem) * 1) var(--gutter-right);
        background: rgba(68, 68, 68, .6);
        color: #fff;
    }

    .wp-block-theme-blocks-hero .block-content {
        max-width: 590px;
    }

    .wp-block-theme-blocks-hero .block-background {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .wp-block-theme-blocks-hero .block-background:after {
        content: " ";
        display: block;
        position: absolute;
        z-index: 2;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 70%;
        background: linear-gradient(0deg, #122748, rgba(18, 39, 72, .9) calc(var(--blockMargin, 4rem) * 1), rgba(0, 0, 0, 0));
    }
}

@media screen and (max-width: 767px) {
    .wp-block-theme-blocks-hero {
        display: block;
        padding-top: 0;
        padding-bottom: 0;
        color: #1c355e;
    }

    .wp-block-theme-blocks-hero .block-content {
        padding: calc(var(--blockMargin, 4rem) * 1) var(--gutter-left) calc(var(--blockMargin, 4rem) * 1) var(--gutter-right);
        padding-top: 10px !important;
        text-align: center;
    }

    .wp-block-theme-blocks-hero .block-content:before {
        margin-left: auto;
        margin-right: auto;
    }

    .wp-block-theme-blocks-hero .block-background {
        position: relative;
        padding: 0 0 75%;
    }

    .wp-block-theme-blocks-hero h1 {
        font-size: 1.7rem;
        line-height: 1.15;
    }
}

.wp-block-theme-blocks-cards {
    margin: calc(var(--blockMargin, 4rem) * 1) auto;
}

.wp-block-theme-blocks-cards:first-child {
    margin-top: 0;
}

.wp-block-theme-blocks-cards:last-child {
    margin-bottom: 0;
}

.wp-block-theme-blocks-cards .query-posts {
    margin-top: 0;
    margin-bottom: 0;
}

.wp-block-theme-blocks-cards .query-posts.four-across {
    --gap: 1rem;
}

.page-blocks>.wp-block-theme-blocks-cards.is-style-wider-width {
    margin-left: calc(var(--inner-gutter) * -.75);
    margin-right: calc(var(--inner-gutter) * -.75);
}

.page-blocks>.wp-block-theme-blocks-cards.is-style-wider-width:last-child>.query-posts {
    margin-bottom: var(--gap, calc(var(--blockMargin, 4rem) * .5));
}

.wp-block-theme-blocks-card {
    display: flex;
    flex-direction: column;
}

.wp-block-theme-blocks-card.has-top-title .title {
    order: -1;
}

.hentry.card {
    max-width: none;
    border: 0;
    background: var(--hentry-background-color, #edeff2);
    color: var(--hentry-color, inherit);
}

.has-background.has-light-gray-background-color .hentry.card {
    --hentry-background-color: #fff;
}

.hentry.card .cta {
    width: 100%;
    margin-top: 2em;
    padding-top: .7em;
    min-height: 1.8em;
    border-top: 1px solid #b9c5d6;
    color: var(--hentry-color, #1c355e);
}

.hentry.card .cta>.wp-block-button__link {
    display: block;
}

.hentry.card .title+.cta,
.hentry.card .cta:first-child {
    margin-top: 0;
}

.hentry.card.is-style-solid {
    padding-top: calc(var(--padding) + var(--blockMargin, 4rem) * 1);
    background: var(--hentry-background-color, #1c355e);
    color: var(--hentry-color, #fff);
}

.hentry.card.is-style-solid .thumbnail {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    padding: 0;
    background-image: none;
}

.hentry.card.is-style-solid.no-image .thumbnail {
    transition: background-color .2s ease;
    background: rgba(84, 200, 232, 0);
}

.hentry.card.is-style-solid .title,
.hentry.card.is-style-solid .content {
    display: none;
}

.hentry.card.is-style-solid .cta {
    flex-grow: 1;
    display: flex;
    align-items: end;
    font-size: 1.33rem;
    color: inherit;
    border-top: 0;
    padding: 0;
}

.hentry.card.is-style-solid .cta .icon {
    display: none !important;
}

.hentry.card.is-style-solid .cta .wp-block-button__link {
    max-width: 15.5em;
}

.hentry.card.is-style-solid .cta .wp-block-button__link:after {
    display: none;
}

.hentry.card.is-style-solid.clickable:hover {
    transition: all .2s ease;
    color: #1c355e;
    background-color: #b9c5d6;
}

.hentry.card.is-style-solid.clickable:hover .thumbnail {
    background-color: #54c8e8;
}

.hentry.card.is-style-promo {
    --pattern-width: calc(var(--blockMargin, 4rem) * 1.8);
    padding-top: calc(var(--blockMargin, 4rem) * 1.5);
    padding-right: calc(var(--padding) + var(--pattern-width));
}

.hentry.card.is-style-promo:before {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: var(--pattern-width);
    height: 100%;
    background: url(../image/diagonal-pattern-base.svg) 50% 50% repeat;
    background-size: auto 145px;
    opacity: .4;
}

.hentry.card.is-style-promo .thumbnail {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    padding: 0;
    background-image: none;
}

.hentry.card.is-style-promo.no-image .thumbnail {
    display: none;
    transition: background-color .2s ease;
    background: rgba(84, 200, 232, 0);
}

.hentry.card.is-style-promo .content {
    flex-grow: unset;
}

@media screen and (max-width: 600px) {
    .hentry.card.is-style-promo {
        padding-right: var(--padding);
        padding-top: calc(var(--padding) + var(--pattern-width));
    }

    .hentry.card.is-style-promo:before {
        width: 100%;
        height: var(--pattern-width);
        background-position: 0 50%;
    }
}

.hentry.card.is-style-box,
.hentry.card.is-style-category-box {
    background: var(--hentry-background-color, #1c355e);
    color: var(--hentry-color, #fff);
}

.hentry.card.is-style-box .title,
.hentry.card.is-style-category-box .title {
    color: inherit;
    font-family: proxima-nova, sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
}

.hentry.card.is-style-box .thumbnail,
.hentry.card.is-style-category-box .thumbnail {
    display: none;
}

.hentry.card.is-style-box .content,
.hentry.card.is-style-category-box .content {
    font-size: .85rem;
}

.hentry.card.is-style-box .wp-block-button.is-style-text.cta,
.hentry.card.is-style-category-box .wp-block-button.is-style-text.cta {
    margin-top: 1em;
    border-top: 0;
    padding-top: 0;
    min-height: 0;
    color: inherit;
}

.hentry.card.is-style-box .wp-block-button.is-style-text.cta>.wp-block-button__link .icon,
.hentry.card.is-style-category-box .wp-block-button.is-style-text.cta>.wp-block-button__link .icon {
    position: relative;
    top: auto;
    left: auto;
    margin: 0;
}

.hentry.card.is-style-box .wp-block-button.is-style-text.cta>.wp-block-button__link .label,
.hentry.card.is-style-category-box .wp-block-button.is-style-text.cta>.wp-block-button__link .label {
    margin: 0 .5em 0 0;
}

.hentry.card.is-style-box .wp-block-button.is-style-text.cta.has-cta-label:before,
.hentry.card.is-style-category-box .wp-block-button.is-style-text.cta.has-cta-label:before {
    content: " ";
    display: block;
    height: 1px;
    background: currentColor;
    opacity: .4;
    margin: 0 0 .7em;
}

.hentry.card.is-style-category-box {
    --hentry-background-color: #b9c5d6;
    --hentry-color: #1c355e;
}

body.has-js .hentry.card.is-style-category-box.appear-on-scroll.appear-init {
    transition: .4s ease-in-out;
}

.hentry.card.is-style-category-box .wp-block-button.is-style-text.cta.has-cta-label {
    margin-top: 1rem;
}

.hentry.card.is-style-category-box .wp-block-button.is-style-text.cta.has-cta-label:before {
    display: none;
}

.hentry.card.is-style-category-box .wp-block-button.is-style-text.cta.has-cta-label>.wp-block-button__link .label {
    display: none;
}

.hentry.card.is-style-category-box.clickable:hover {
    --hentry-background-color: #1c355e;
    --hentry-color: #fff;
}

.hentry.card.is-style-category-box.clickable:hover .wp-block-button.is-style-text.cta {
    --hentry-color: #54c8e8;
}

.odometer {
    display: inline-block;
    position: relative;
    line-height: 1;
}

.odometer .digit {
    display: inline-block;
    position: relative;
    text-align: center;
}

.odometer .digit .spacer {
    opacity: 0;
}

.odometer .digit .track {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.odometer .digit .digits {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    text-align: center;
    transition: ease-in-out 2s;
}

.odometer .digit .digits i {
    position: relative;
    width: 1em;
    left: 50%;
    transform: translate(-50%, 0);
    display: block;
    font-style: normal;
}

.odometer .digit.on .digits {
    transform: translateY(-100%);
}

.wp-block-theme-blocks-count-up {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
    font-size: 3rem;
    line-height: 1;
}

.wp-block-theme-blocks-count-up .block-prefix {
    line-height: 1;
}

.wp-block-theme-blocks-count-up .block-count {
    position: relative;
}

.wp-block-theme-blocks-count-up .block-suffix {
    font-size: .7em;
}

.wp-block-theme-blocks-carousel {
    --layout-nav: 4em;
    position: relative;
}

@media screen and (min-width: 768px) {
    .main-content.location .wp-block-theme-blocks-carousel:not(.is-style-hero) {
        --block-gutter-left: calc(var(--layout-nav) * -1);
        --block-gutter-right: calc(var(--layout-nav) * -.5);
    }

    .main-content.location .wp-block-theme-blocks-carousel.is-style-hero {
        --block-gutter-left: calc(var(--layout-nav) * -1);
        --block-gutter-right: calc(var(--layout-nav) * -1);
    }
}

@media screen and (min-width: 1151px) {
    .main-content.post .wp-block-theme-blocks-carousel {
        margin-left: calc(var(--layout-nav) * -1);
        margin-right: calc((var(--side-width) + var(--side-gap) + var(--layout-nav)) * -1);
    }
}

@media screen and (min-width: 768px) and (max-width: 1150px) {
    .main-content.post .wp-block-theme-blocks-carousel {
        margin-right: calc((var(--side-width) + var(--side-gap)) * -1);
    }
}

@media screen and (min-width: 1151px) {
    .main-content.post.location .wp-block-theme-blocks-carousel {
        margin-left: 0;
        margin-right: 0;
    }
}

@media screen and (min-width: 768px) and (max-width: 1150px) {
    .main-content.post.location .wp-block-theme-blocks-carousel {
        margin-left: 1.5rem;
        margin-right: 0;
    }
}

@media screen and (min-width: 1400px) {

    .wp-block-theme-blocks-carousel .is-style-full-width.is-style-wider-width>.layout,
    .full-width .wp-block-theme-blocks-carousel.is-style-wider-width>.layout {
        margin-left: calc(var(--layout-nav) * -1);
        margin-right: calc(var(--layout-nav) * -1);
    }
}

.wp-block-theme-blocks-carousel.is-style-hero .block-dots {
    display: none;
}

@media screen and (max-width: 1024px) {
    .wp-block-theme-blocks-carousel {
        --layout-nav: 3em;
    }
}

.wp-block-theme-blocks-carousel>.layout {
    position: relative;
    display: grid;
    margin-left: var(--block-gutter-left, 0);
    margin-right: var(--block-gutter-right, 0);
    grid-template-columns: var(--layout-nav) minmax(0, 1fr) minmax(0, 1fr) var(--layout-nav);
    grid-template-rows: auto;
    grid-template-areas: "prev slides slides next" "prev slides slides next" ".    captions captions ." "dots dots dots dots";
}

@media screen and (max-width: 767px) {
    .wp-block-theme-blocks-carousel>.layout {
        grid-template-areas: ". . . ." "slides slides slides slides" "captions captions captions captions" "dots dots dots dots";
    }
}

.wp-block-theme-blocks-carousel .block-captions,
.wp-block-theme-blocks-carousel .block-page {
    font-size: .8rem;
    margin: .5rem 0 0 0;
}

.wp-block-theme-blocks-carousel .block-captions {
    grid-area: captions;
    padding: 0 4em 0 0;
}

.wp-block-theme-blocks-carousel .block-page {
    grid-area: captions;
    text-align: right;
}

.wp-block-theme-blocks-carousel .block-nav {
    position: relative;
    z-index: 1;
    padding: 1em;
    color: #b9c5d6;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.wp-block-theme-blocks-carousel .block-nav .icon {
    font-size: 40px;
    transition: transform .2s ease;
    transform: translate(0, 0);
}

.wp-block-theme-blocks-carousel .block-nav.prev {
    grid-area: prev;
}

.wp-block-theme-blocks-carousel .block-nav.prev:hover .icon {
    transform: translate(-3px, 0);
}

.wp-block-theme-blocks-carousel .block-nav.next {
    grid-area: next;
}

.wp-block-theme-blocks-carousel .block-nav.next:hover .icon {
    transform: translate(3px, 0);
}

.wp-block-theme-blocks-carousel .block-slides {
    position: relative;
    z-index: 1;
    grid-area: slides;
    padding: 0;
}

.wp-block-theme-blocks-carousel .slide {
    position: relative;
    width: 100%;
}

.wp-block-theme-blocks-carousel .slide>.layout {
    margin-left: auto;
    margin-right: auto;
}

.wp-block-theme-blocks-carousel .slide>.layout p {
    margin-bottom: .5em;
}

.wp-block-theme-blocks-carousel .slide>.layout p.is-style-default {
    color: #1c355e;
    text-transform: uppercase;
    letter-spacing: .5px;
}

.wp-block-theme-blocks-carousel .slide>.layout .theme-block {
    margin-top: 0;
    margin-bottom: 0;
}

.wp-block-theme-blocks-carousel .slide>.layout .theme-block+.theme-block {
    margin-top: calc(var(--blockMargin, 4rem) * .5);
}

.wp-block-theme-blocks-carousel .slide figcaption {
    display: none;
}

.wp-block-theme-blocks-carousel .slick-slide {
    margin: 0;
    padding: 0;
}

.wp-block-theme-blocks-carousel figure.wp-block-image img {
    display: block;
    width: 100%;
}

.wp-block-theme-blocks-carousel figure.wp-block-image figcaption {
    display: none;
}

.wp-block-theme-blocks-carousel figure.wp-block-video {
    margin: 0 !important;
}

.wp-block-theme-blocks-carousel figure.wp-block-video video {
    display: block;
    width: 100%;
}

.wp-block-theme-blocks-carousel .block-dots {
    grid-area: dots;
    margin-top: calc(var(--blockMargin, 4rem) * .5);
}

@media screen and (max-width: 1200px) {
    .wp-block-theme-blocks-carousel .block-dots {
        margin-top: calc(var(--blockMargin, 4rem) * .5);
    }
}

@media screen and (max-width: 767px) {
    .wp-block-theme-blocks-carousel .block-slides {
        padding-left: 0;
        padding-right: 0;
    }

    .wp-block-theme-blocks-carousel .block-nav {
        display: none !important;
        position: absolute;
        top: 50%;
        transform: translate(0, -50%);
        background: transparent;
        padding: 2em .5em;
    }

    .wp-block-theme-blocks-carousel .block-nav.prev {
        left: 0;
    }

    .wp-block-theme-blocks-carousel .block-nav.next {
        right: 0;
    }
}

.wp-block-theme-blocks-posts {
    position: relative;
}

.wp-block-theme-blocks-posts .query-posts {
    width: 100%;
}

.theme-block.wp-block-theme-blocks-posts {
    margin-bottom: calc(var(--blockMargin, 4rem) * .75);
    margin-top: calc(var(--blockMargin, 4rem) * .6);
}

.wp-block-theme-blocks-page-banner {
    --block-gutter: 50px;
    --block-width: 1400px;
    position: relative;
    margin-bottom: calc(var(--blockMargin, 4rem) * 1);
    min-height: 70vh;
    display: grid;
    grid-template-columns: var(--block-gutter) minmax(0, calc(var(--block-width) - var(--block-gutter) * 2)) var(--block-gutter);
    grid-template-areas: ". . ." ". . ." ". main ." ". main .";
    grid-template-rows: var(--block-gutter) 1fr auto var(--block-gutter);
}

@media screen and (max-height: 900px) and (min-width: 1061px) {
    .wp-block-theme-blocks-page-banner {
        height: 630px;
    }
}

.wp-block-theme-blocks-page-banner .block-background {
    background: #fff;
    position: absolute;
    bottom: var(--block-gutter);
    left: 0;
    right: 0;
    height: calc(100% - var(--block-gutter) - var(--tick, 0) * 25%);
    padding: 0;
    box-sizing: border-box;
}

.wp-block-theme-blocks-page-banner .block-background img {
    display: block;
    position: relative;
    top: 0;
    left: 50%;
    max-width: var(--block-width);
    width: 100%;
    height: 100%;
    transform: translate(-50%, 0);
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    -o-object-fit: cover;
    object-fit: cover;
}

.wp-block-theme-blocks-page-banner .block-content {
    position: relative;
    z-index: 1;
    grid-area: main;
    max-width: 650px;
    margin: 0 0 0 auto;
    padding: var(--block-gutter) var(--block-gutter) calc(var(--block-gutter) - .6rem) var(--block-gutter);
    box-sizing: border-box;
    background: #1c355e;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: end;
}

@media screen and (min-width: 1061px) {
    .wp-block-theme-blocks-page-banner .block-content {
        translate: 0% calc(var(--tick) * var(--block-gutter) * .75);
    }
}

@media screen and (max-width: 1060px) {
    .wp-block-theme-blocks-page-banner {
        margin-left: calc(var(--gutter-left) * -1);
        margin-right: calc(var(--gutter-right) * -1);
        display: block;
        min-height: 0;
    }

    .wp-block-theme-blocks-page-banner .block-background {
        position: relative;
        left: auto;
        right: auto;
        bottom: 0;
        width: 100%;
        height: 40vh;
        padding: 0;
    }

    .wp-block-theme-blocks-page-banner .block-content {
        margin: 0 auto 0 0;
        max-width: none;
        padding-left: var(--gutter-left);
        padding-right: var(--gutter-right);
    }
}

.wp-block-theme-blocks-page-intro {
    max-width: 640px;
    margin: 0 auto calc(var(--blockMargin, 4rem) * .25);
    padding: calc(var(--blockMargin, 4rem) * .5) 0 0;
    text-align: center;
}

.wp-block-theme-blocks-page-intro .subtitle {
    margin: 0 0 .5em;
    color: #767676;
}

.wp-block-theme-blocks-page-intro h1 {
    color: #1c355e;
}

.wp-block-theme-blocks-page-intro ul,
.wp-block-theme-blocks-page-intro ol {
    text-align: left;
}

.wp-block-theme-blocks-page-intro .wp-block-quote {
    margin-top: calc(var(--blockMargin, 4rem) * .5);
    width: 850px;
    left: 50%;
    translate: -50% 0;
}

@media screen and (max-width: 930px) {
    .wp-block-theme-blocks-page-intro .wp-block-quote {
        width: 700px;
    }
}

@media screen and (max-width: 767px) {
    .wp-block-theme-blocks-page-intro .wp-block-quote {
        width: auto;
        left: auto;
        translate: none;
    }
}

.page-blocks .wp-block-theme-blocks-fine-print {
    margin-top: calc(var(--blockMargin, 4rem) * .5);
    padding: calc(var(--blockMargin, 4rem) * .5) 0 0;
    border-top: 1px solid #b9c5d6;
    font-size: .88em;
}

.page-blocks .wp-block-theme-blocks-fine-print .placeholder-heading {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 18px;
}

.page-blocks .wp-block-theme-blocks-fine-print ul:not(.slick-dots)>li {
    margin-bottom: 0;
    padding-left: .8em;
}

.page-blocks .wp-block-theme-blocks-fine-print ul:not(.slick-dots)>li::before {
    left: 0;
}

.page-blocks .wp-block-theme-blocks-fine-print ol {
    padding-left: 1em;
}

.page-blocks .wp-block-theme-blocks-fine-print ol.is-style-superscript {
    padding-left: 0;
}

.wp-block-theme-blocks-team {
    margin: calc(var(--blockMargin, 4rem) * .25) 0;
}

.wp-block-theme-blocks-team:first-child {
    margin-top: 0;
}

.wp-block-theme-blocks-team:last-child {
    margin-bottom: 0;
}

.wp-block-theme-blocks-embed-iframe {
    position: relative;
}

.wp-block-theme-blocks-embed-iframe .block-embed {
    position: relative;
    padding: 0 0 calc(1 / var(--aspect-ratio, 1) * 100%);
}

.wp-block-theme-blocks-embed-iframe .block-embed iframe {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.wp-block-theme-blocks-embed-iframe figcaption {
    display: inline-block;
    margin: 0;
    padding: .75em .75em .75em 0;
    font-size: .8em;
    line-height: 1.3;
    text-align: left;
    font-style: normal;
}

@media screen and (min-width: 768px) {
    .main-content.post .wp-block-theme-blocks-embed-iframe {
        margin-right: calc((var(--side-width) / 2 + var(--side-gap)) * -1);
    }
}

.wp-block-theme-blocks-sidebar {
    margin: 0 auto;
}

.wp-block-theme-blocks-sidebar .wp-block-buttons {
    flex-direction: column;
    text-align: center;
}

.wp-block-theme-blocks-sidebar .wp-block-buttons .wp-block-button {
    display: block;
    width: 100%;
}

.wp-block-theme-blocks-sidebar .wp-block-buttons .wp-block-button>.wp-block-button__link {
    display: block;
    text-align: center;
    width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
.heading {
    position: relative;
    margin: 0 0 .5rem 0;
    padding: 0;
    clear: both;
    font-family: loretta, serif;
    font-weight: 400;
    font-style: normal;
    line-height: 1.35;
    -webkit-font-smoothing: antialiased;
}

h1.inline,
h2.inline,
h3.inline,
h4.inline,
h5.inline,
h6.inline,
.heading.inline {
    display: inline;
    margin-right: 1em;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
.heading a {
    text-decoration-color: transparent;
    color: inherit;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child,
.heading:first-child {
    margin-top: 0;
}

h1:not(.is-style-section-heading):last-child,
h2:not(.is-style-section-heading):last-child,
h3:not(.is-style-section-heading):last-child,
h4:not(.is-style-section-heading):last-child,
h5:not(.is-style-section-heading):last-child,
h6:not(.is-style-section-heading):last-child,
.heading:not(.is-style-section-heading):last-child {
    margin-bottom: 0;
}

h1.has-text-align-center,
h2.has-text-align-center,
h3.has-text-align-center,
h4.has-text-align-center,
h5.has-text-align-center,
h6.has-text-align-center,
.heading.has-text-align-center {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}

h1+.theme-block.is-style-content-width,
h1+.theme-block.is-style-full-width,
h1+.theme-block.wp-block-image,
h2+.theme-block.is-style-content-width,
h2+.theme-block.is-style-full-width,
h2+.theme-block.wp-block-image,
h3+.theme-block.is-style-content-width,
h3+.theme-block.is-style-full-width,
h3+.theme-block.wp-block-image,
h4+.theme-block.is-style-content-width,
h4+.theme-block.is-style-full-width,
h4+.theme-block.wp-block-image,
h5+.theme-block.is-style-content-width,
h5+.theme-block.is-style-full-width,
h5+.theme-block.wp-block-image,
h6+.theme-block.is-style-content-width,
h6+.theme-block.is-style-full-width,
h6+.theme-block.wp-block-image,
.heading+.theme-block.is-style-content-width,
.heading+.theme-block.is-style-full-width,
.heading+.theme-block.wp-block-image {
    margin-top: 1.75em;
}

h1.has-subheading:before,
h2.has-subheading:before,
h3.has-subheading:before,
h4.has-subheading:before,
h5.has-subheading:before,
h6.has-subheading:before,
.heading.has-subheading:before {
    content: var(--subheading);
    position: relative;
    display: block;
    margin: 0 0 .5em;
    text-transform: uppercase;
    text-align: center;
    font-size: .8rem;
    font-family: proxima-nova, sans-serif;
    font-weight: 400;
}

h1.has-subheading.is-style-section-heading:before,
h2.has-subheading.is-style-section-heading:before,
h3.has-subheading.is-style-section-heading:before,
h4.has-subheading.is-style-section-heading:before,
h5.has-subheading.is-style-section-heading:before,
h6.has-subheading.is-style-section-heading:before,
.heading.has-subheading.is-style-section-heading:before {
    left: 50%;
    translate: -50% 0;
}

.h1,
h1 {
    margin-bottom: 1rem;
    font-size: 2.4rem;
    line-height: 1.1;
    letter-spacing: -.01em;
}

.archive .h1#page-title,
.blog .h1#page-title,
.archive h1#page-title,
.blog h1#page-title {
    font-family: proxima-nova, sans-serif;
}

.h2,
h2 {
    margin-bottom: 1rem;
    font-size: 2.1rem;
    line-height: 1.15;
    letter-spacing: -.01em;
}

.h2.is-style-arrow,
h2.is-style-arrow {
    font-size: 1.667rem;
}

@media screen and (min-width: 1400px) {

    .h2.is-style-arrow,
    h2.is-style-arrow {
        padding-right: 2em;
    }
}

.h2.is-style-section-heading,
.h2.block-title,
h2.is-style-section-heading,
h2.block-title {
    font-size: 4rem;
    line-height: 1.1;
}

@media screen and (max-width: 1060px) {

    .h2.is-style-section-heading,
    .h2.block-title,
    h2.is-style-section-heading,
    h2.block-title {
        font-size: 3rem;
    }
}

@media screen and (max-width: 767px) {

    .h2.is-style-section-heading,
    .h2.block-title,
    h2.is-style-section-heading,
    h2.block-title {
        font-size: 1.65rem;
    }
}

.h3,
h3 {
    font-size: 1.9rem;
    line-height: 1.1;
    font-family: proxima-nova, sans-serif;
    font-weight: 500;
    letter-spacing: -.01em;
}

.h3.is-style-section-heading,
.h3.block-title,
h3.is-style-section-heading,
h3.block-title {
    font-size: 2.23rem;
    line-height: 1.1;
}

@media screen and (max-width: 1060px) {

    .h3.is-style-section-heading,
    .h3.block-title,
    h3.is-style-section-heading,
    h3.block-title {
        font-size: 1.65rem;
    }
}

@media screen and (max-width: 767px) {

    .h3.is-style-section-heading,
    .h3.block-title,
    h3.is-style-section-heading,
    h3.block-title {
        font-size: 1.65rem;
    }
}

.h4,
h4 {
    font-size: 1.25rem;
    font-family: proxima-nova, sans-serif;
    line-height: 1.23;
    font-weight: 600;
}

.h5,
h5,
h5.subtitle {
    margin-bottom: .65em;
    font-family: proxima-nova, sans-serif;
    font-size: 1.22rem;
    font-weight: 600;
    letter-spacing: .75px;
    color: #b9c5d6;
    text-transform: uppercase;
}

.h6,
h6 {
    font-family: proxima-nova, sans-serif;
    font-weight: 600;
    font-size: .95em;
}

@media screen and (max-width: 767px) {

    h1 br,
    h2 br,
    h3 br,
    h4 br,
    h5 br,
    h6 br,
    .heading br {
        display: none;
    }

    h1,
    .h1,
    h1.page-title,
    h1.block-title,
    h2.heading,
    h2.block-title {
        font-size: 1.9rem;
        line-height: 1.15;
    }

    h2 {
        font-size: 2rem;
    }

    h3 {
        font-size: 1.7rem;
    }

    h4 {
        font-size: 1.15rem;
    }

    h5 {
        font-size: 1rem;
    }
}

[class*=wp-block]:not(.subtitle)+h1,
[class*=wp-block]:not(.subtitle)+h2,
[class*=theme-block]:not(.subtitle)+h1,
[class*=theme-block]:not(.subtitle)+h2,
p:not(.subtitle)+h1,
p:not(.subtitle)+h2,
ol:not(.subtitle)+h1,
ol:not(.subtitle)+h2,
ul:not(.subtitle)+h1,
ul:not(.subtitle)+h2 {
    margin-top: calc(var(--blockMargin, 4rem) * 1);
}

[class*=wp-block]+h3,
[class*=theme-block]+h3,
p+h3,
ol+h3,
ul+h3 {
    margin-top: calc(var(--blockMargin, 4rem) * 1);
}

[class*=wp-block]+h4,
[class*=wp-block]+h5,
[class*=wp-block]+.h5,
[class*=wp-block]+h6,
[class*=theme-block]+h4,
[class*=theme-block]+h5,
[class*=theme-block]+.h5,
[class*=theme-block]+h6,
p+h4,
p+h5,
p+.h5,
p+h6,
ol+h4,
ol+h5,
ol+.h5,
ol+h6,
ul+h4,
ul+h5,
ul+.h5,
ul+h6 {
    margin-top: calc(var(--blockMargin, 4rem) * .4);
}

.is-style-expandable {
    cursor: pointer;
    position: relative;
    padding-left: 1.75em;
    color: #1c355e;
}

.is-style-expandable:before {
    position: absolute;
    display: inline-block;
    left: 0;
    top: -.35em;
    width: 1.5em;
    height: 1.5em;
    line-height: 1.5em;
    font-size: 1em;
    text-align: center;
    margin: .1em .2em 0 0;
    transition: all .2s ease;
    font-family: "Font Awesome 6 Free";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: 900;
    text-transform: none;
    content: "";
    color: var(--icon-color, #54c8e8);
}

h3.is-style-expandable:before {
    top: -.35em;
}

h4.is-style-expandable:before {
    top: -.25em;
}

h5.is-style-expandable:before,
.h5.is-style-expandable:before {
    top: -.1rem;
    font-size: 1rem;
}

h6.is-style-expandable:before {
    top: -.2rem;
    font-size: 1rem;
}

h5.is-style-expandable,
.h5.is-style-expandable,
h6.is-style-expandable {
    padding-left: 2rem;
}

.is-style-expandable:focus {
    outline: none;
    text-decoration: underline;
}

.is-style-expandable.opened:before {
    transform: rotate(90deg);
}

@media screen and (min-width: 768px) {
    body.theme .is-style-expandable.mobile-expand {
        cursor: default;
        padding-top: 0;
        border-top: 0;
    }

    body.theme .is-style-expandable.mobile-expand:before {
        display: none;
    }

    body.theme .is-style-expandable.mobile-expand+.expand-content {
        display: block !important;
    }
}

@media screen and (max-width: 767px) {
    body.theme .is-style-expandable.mobile-expand {
        border-top: 1px solid rgba(0, 0, 0, .3);
        padding-top: 2rem;
    }

    body.theme .is-style-expandable.mobile-expand:before {
        margin-top: 2rem;
    }
}

.expand-content {
    display: none;
    margin: 0;
    padding-bottom: 1.5em;
}

.expand-content+.is-style-expandable {
    margin-top: 1em;
}

h1.is-style-arrow>a,
h2.is-style-arrow>a,
h3.is-style-arrow>a,
h4.is-style-arrow>a,
h5.is-style-arrow>a,
h6.is-style-arrow>a,
.heading.is-style-arrow>a {
    color: #f00;
}

h1.is-style-arrow .icon,
h2.is-style-arrow .icon,
h3.is-style-arrow .icon,
h4.is-style-arrow .icon,
h5.is-style-arrow .icon,
h6.is-style-arrow .icon,
.heading.is-style-arrow .icon {
    display: inline-block;
    margin: 0 0 0 .5rem;
    width: .8em;
    height: .7em;
    stroke: currentColor;
    stroke-width: 8;
    transition: all .2s ease;
}

h1.is-style-arrow a:hover .icon,
h2.is-style-arrow a:hover .icon,
h3.is-style-arrow a:hover .icon,
h4.is-style-arrow a:hover .icon,
h5.is-style-arrow a:hover .icon,
h6.is-style-arrow a:hover .icon,
.heading.is-style-arrow a:hover .icon {
    transform: translate(5px, 0);
}

.is-style-section-heading {
    text-align: center;
    margin-bottom: calc(var(--blockMargin, 4rem) * .5);
    line-height: 1;
    font-family: loretta, serif;
    font-weight: 400;
    color: #1c355e;
}

h2.is-style-section-heading {
    font-size: 2.38rem;
}

h2.is-style-section-heading.has-text-align-center {
    max-width: 33rem;
    margin-left: auto;
    margin-right: auto;
}

.is-style-guide {
    position: relative;
    margin-left: calc(var(--gutter-left-override, var(--gutter-left)) * -1);
    margin-right: calc(var(--gutter-right-override, var(--gutter-right)) * -1);
    padding: calc(var(--blockMargin, 4rem) * .5) var(--gutter-right) calc(var(--blockMargin, 4rem) * .5) var(--gutter-left);
    background: #edeff2;
    font-size: 2rem;
}

.wp-block-buttons {
    margin-bottom: 1em;
}

.wp-block-buttons:last-child {
    margin-bottom: 0;
}

.wp-block-buttons>.wp-block-button:last-child,
.wp-block-buttons>.wp-block-button.wp-block-button:last-child {
    margin-right: 0;
}

.wp-block-buttons.is-content-justification-center {
    display: flex;
}

.wp-block-buttons.is-content-justification-center>.wp-block-button {
    margin-right: .5em;
    margin-left: .5em;
}

.wp-block-buttons.is-content-justification-space-between.is-nowrap {
    margin-top: 2em;
    gap: calc(var(--blockMargin, 4rem) * .5);
    align-items: start;
}

.wp-block-buttons.is-content-justification-space-between.is-nowrap>.wp-block-button {
    flex-basis: 100%;
}

.wp-block-buttons.is-content-justification-space-between.is-nowrap>.wp-block-button.is-style-text,
.wp-block-buttons.is-content-justification-space-between.is-nowrap>.wp-block-button.is-style-text2 {
    padding-top: .7em;
    border-top: 1px solid #b9c5d6;
}

.wp-block-buttons.is-content-justification-space-between.is-nowrap>.wp-block-button>.wp-block-button__link {
    display: block;
}

.wp-block-buttons.has-background {
    padding: 1em;
    border-radius: 1em;
}

.wp-block-button {
    position: relative;
    display: inline-block;
    line-height: 1;
}

.wp-block-button>.wp-block-button__link {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin: 0;
    border: 0;
    text-decoration: none;
    font-family: proxima-nova, sans-serif;
    letter-spacing: 0;
    line-height: 1;
    opacity: 1;
    text-transform: uppercase;
    transition: .2s ease;
    -webkit-font-smoothing: antialiased;
    border-radius: 0;
    font-weight: 600;
    font-size: .95em;
    text-align: left;
}

.wp-block-button>.wp-block-button__link .icon.is-prepended-icon {
    margin: 0 .5em 0 0;
}

.wp-block-button>.wp-block-button__link:visited {
    color: inherit;
}

.wp-block-button.has-icon>.wp-block-button__link:after,
.wp-block-button.has-no-icon>.wp-block-button__link:after {
    display: none;
}

.wp-block-button:not(.is-style-text, .is-style-text2) {
    --shift: .7em;
}

.wp-block-button:not(.is-style-text, .is-style-text2).done {
    --shift: 0em;
}

.wp-block-button:not(.is-style-text, .is-style-text2).done>.wp-block-button__link:after {
    display: none;
}

.wp-block-button:not(.is-style-text, .is-style-text2)>.wp-block-button__link {
    --padding-x: 1.7rem;
    --padding-y: .8rem;
    padding: var(--padding-y) var(--padding-x);
    color: var(--color, #1c355e);
    background: transparent;
    border: 2px solid #b9c5d6;
    text-align: center;
}

.wp-block-button:not(.is-style-text, .is-style-text2)>.wp-block-button__link .label {
    position: relative;
    z-index: 1;
    transition: .2s ease;
    translate: 0 0;
}

.wp-block-button:not(.is-style-text, .is-style-text2)>.wp-block-button__link:after {
    position: absolute;
    font-family: "Font Awesome 6 Free";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: 900;
    text-transform: none;
    content: "";
    display: block;
    right: var(--padding-x);
    top: var(--padding-y);
    width: 1em;
    box-sizing: border-box;
    transform-origin: 50% 50%;
    transition: .2s ease;
    translate: 0 0;
    opacity: 0;
    color: #b9c5d6;
}

@media screen and (max-width: 767px) {
    .wp-block-button:not(.is-style-text, .is-style-text2)>.wp-block-button__link:after {
        top: initial;
    }
}

.wp-block-button:not(.is-style-text, .is-style-text2)>.wp-block-button__link:hover .label,
.wp-block-button:not(.is-style-text, .is-style-text2)>.wp-block-button__link:active .label {
    translate: calc(var(--shift) * -1);
}

.wp-block-button:not(.is-style-text, .is-style-text2)>.wp-block-button__link:hover:after,
.wp-block-button:not(.is-style-text, .is-style-text2)>.wp-block-button__link:active:after {
    opacity: 1;
    translate: var(--shift) 0;
}

.wp-block-button.is-style-text {
    --icon-size: 1.25em;
}

.wp-block-button.is-style-text>.wp-block-button__link {
    padding: 0 calc(var(--icon-size) + 1.5em) 0 0;
    background: none;
    color: inherit;
    border: 0;
    text-transform: none;
}

.wp-block-button.is-style-text>.wp-block-button__link>.icon {
    --line-width: 2px;
    --icon-color: var(--hentry-color, #54c8e8);
    position: absolute;
    top: .15em;
    left: calc(100% - var(--icon-size));
    display: inline-block;
    margin: 0;
    width: .7rem;
    height: .7rem;
    color: var(--icon-color, #54c8e8);
    transition: .2s ease;
}

.wp-block-button.is-style-text>.wp-block-button__link>.icon:before,
.wp-block-button.is-style-text>.wp-block-button__link>.icon:after {
    content: " ";
    display: block;
    position: absolute;
    box-sizing: border-box;
    top: 50%;
}

.wp-block-button.is-style-text>.wp-block-button__link>.icon:before {
    left: 0;
    width: 100%;
    height: var(--line-width);
    transform: translate(0, -50%);
    background: currentColor;
}

.wp-block-button.is-style-text>.wp-block-button__link>.icon:after {
    top: 50%;
    left: auto;
    right: 0;
    width: .5rem;
    height: .5rem;
    margin: 0 calc(var(--line-width) * -.5) 0 0;
    border: 1px solid currentColor;
    border-width: var(--line-width) var(--line-width) 0 0;
    transform-origin: 100% 0;
    transform: rotate(45deg);
    background: none;
}

.hentry.clickable:hover .wp-block-button.is-style-text>.wp-block-button__link>.icon,
.wp-block-button.is-style-text>.wp-block-button__link:hover>.icon {
    width: var(--icon-size);
}

.wp-block-button.no-arrow>.wp-block-button__link .icon.css-arrow {
    display: none;
}

.wp-block-button.loading:after {
    position: absolute;
    right: -40px;
    top: 50%;
    margin: -15px 0 0 0;
    display: block;
    background: url(../image/loading.png) no-repeat center top;
    width: 30px;
    height: 30px;
    content: " ";
    animation: loading 1s steps(19) infinite;
}

.wp-block-button.done {
    opacity: .5;
}

.wp-block-button.done>.wp-block-button__link {
    --grayed: rgba(100, 100, 100, .5);
    cursor: default;
    color: var(--grayed);
    border-color: var(--grayed);
    background-color: transparent;
}

.wp-block-button.done>.wp-block-button__link:hover {
    border-color: var(--grayed);
    color: var(--grayed);
    background-color: transparent;
}

.theme-block.wp-block-theme-blocks-cards+.wp-block-buttons {
    margin-top: calc(var(--blockMargin, 4rem) * -.5);
}

.wp-block-columns {
    position: relative;
    margin-top: calc(var(--blockMargin, 4rem) * .5);
    margin-bottom: calc(var(--blockMargin, 4rem) * .5);
}

.wp-block-columns:first-child {
    margin-top: 0;
}

.wp-block-columns:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 781px) {
    .wp-block-columns {
        display: block;
    }

    .wp-block-columns .wp-block-column {
        margin-left: auto;
        margin-right: auto;
    }
}

.wp-block-columns>.wp-block-column {
    position: relative;
}

@media screen and (min-width: 768px) {
    .wp-block-columns>.wp-block-column.has-padding-left {
        padding-left: 2em;
    }

    .wp-block-columns>.wp-block-column.has-padding-left>.wp-block-image {
        margin-left: -2em;
    }

    .wp-block-columns>.wp-block-column.has-padding-right {
        padding-right: 2em;
    }

    .wp-block-columns>.wp-block-column.has-padding-right>.wp-block-image {
        margin-right: -2em;
    }
}

@media screen and (max-width: 767px) {
    .wp-block-columns.mobile-carousel .wp-block-column.slick-slide {
        margin-left: 0;
    }

    .wp-block-columns.mobile-carousel .slick-list {
        position: relative;
        left: 50%;
        width: 100vw;
        margin-left: -50vw;
    }

    .wp-block-columns.mobile-carousel .slick-slide {
        padding: 3.5vw;
    }
}

.wp-block-columns.is-style-separators .wp-block-column:not(:first-child):before {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    left: -2rem;
    width: 1px;
    height: 100%;
    background-color: currentColor;
    opacity: .1;
}

@media screen and (max-width: 781px) {
    .wp-block-columns.is-style-separators .wp-block-column {
        margin-left: 0;
    }

    .wp-block-columns.is-style-separators .wp-block-column:not(:first-child):before {
        display: none;
    }
}

.wp-block-columns.is-style-stats {
    margin-top: calc(var(--blockMargin, 4rem) * 1);
}

.wp-block-columns.is-style-stats>.wp-block-column {
    padding-top: 1em;
    border-top: 1px solid currentColor;
}

@media screen and (max-width: 767px) {
    .is-content-centered {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .is-content-centered>* {
        text-align: center;
    }

    .wp-block-columns.is-layout-flex {
        margin-top: 2rem;
    }
}

figure.wp-caption {
    margin: calc(var(--blockMargin, 4rem) * 1) 0;
    max-width: 100%;
}

figure.wp-caption:first-child {
    margin-top: 0;
}

figure.wp-caption:last-child {
    margin-bottom: 0;
}

@media screen and (min-width: 767px) {
    figure.wp-block-image.ratio-fit-square img {
        width: 85% !important;
        margin: auto;
    }
}

.wp-block-image {
    --block-margin-multiplier: 1;
    position: relative;
    overflow: hidden;
    border-radius: 0;
}

.wp-block-image.is-resized img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.wp-block-image.is-style-full-width,
.wp-block-image.is-style-large-width,
.wp-block-image.is-style-medium-width {
    display: block;
}

.wp-block-image.is-style-full-width img,
.wp-block-image.is-style-large-width img,
.wp-block-image.is-style-medium-width img {
    display: block;
    width: 100%;
}

.wp-block-image.size-large {
    margin-top: calc(var(--blockMargin, 4rem) * calc(var(--block-margin-multiplier) * .75));
    margin-bottom: calc(var(--blockMargin, 4rem) * calc(var(--block-margin-multiplier) * .75));
}

.wp-block-image.is-style-content-width,
.wp-block-image.aligncenter {
    display: block;
}

.wp-block-image.is-style-content-width img,
.wp-block-image.aligncenter img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-block-image.is-style-content-width img {
    width: 100%;
}

.wp-block-image.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 767px) {

    .wp-block-image.is-style-full-width,
    .wp-block-image.size-large,
    .wp-block-image.is-style-content-width,
    .wp-block-image.aligncenter {
        margin-top: calc(var(--blockMargin, 4rem) * .5);
        margin-bottom: calc(var(--blockMargin, 4rem) * .5);
    }
}

@media screen and (min-width: 601px) {
    .wp-block-image.alignright {
        margin-top: 1em;
        margin-left: calc(var(--blockMargin, 4rem) * .5);
    }

    .wp-block-image.alignleft {
        margin-top: 1em;
        margin-right: calc(var(--blockMargin, 4rem) * .5);
    }
}

@media screen and (min-width: 601px) and (min-width: 1600px) {
    .wp-block-image.alignleft {
        margin-left: calc(var(--blockMargin, 4rem) * -1);
    }
}

.wp-block-image img {
    display: block;
    margin: 0;
    border-radius: inherit;
    -o-object-position: var(--focal-point, 50% 50%);
    object-position: var(--focal-point, 50% 50%);
}

.wp-block-image figcaption {
    display: inline-block;
    margin: 0;
    padding: .75em .75em .75em 0;
    font-size: .8em;
    line-height: 1.3;
    text-align: left;
    font-style: normal;
}

.wp-block-image.is-style-full-width figcaption {
    padding-left: .75em;
}

@media screen and (max-width: 600px) {

    .wp-block-image.alignleft,
    .wp-block-image.alignright {
        margin-left: auto;
        margin-right: auto;
        float: none;
    }
}

.wp-block-image.hide-caption figcaption {
    display: none;
}

.wp-block-image.is-style-graphic {
    margin: 0 auto;
    border-radius: 0;
}

.wp-block-image.is-style-graphic figcaption {
    display: none;
}

.wp-block-image.is-style-logo {
    --block-margin-multiplier: .25;
    max-width: 400px;
}

.wp-block-image.is-style-logo figcaption {
    display: none;
}

.wp-block-group {
    position: relative;
    margin-top: calc(var(--blockMargin, 4rem) * 1);
    margin-bottom: calc(var(--blockMargin, 4rem) * 1);
}

.wp-block-group:first-child {
    margin-top: 0;
}

.wp-block-group:last-child {
    margin-bottom: 0;
}

.wp-block-group .constrain-inner-layout {
    padding: 0 5.5rem;
}

@media screen and (max-width: 767px) {
    .wp-block-group .constrain-inner-layout {
        padding: revert;
    }
}

.wp-block-group.has-background {
    position: relative;
    padding: calc(var(--blockMargin, 4rem) * .5);
}

@media (max-width:767px) {
    .wp-block-group.is-style-full-width.theme-block {
        padding-left: 25px !important;
        padding-right: 25px !important;
    }
}

.wp-block-group.is-style-full-width.has-background {
    padding-top: calc(var(--blockMargin, 4rem) * 1.5);
    padding-bottom: calc(var(--blockMargin, 4rem) * 1.5);
}

.wp-block-group.is-style-full-width.has-blue-background-color {
    --bar-height: 30px;
    padding-bottom: calc(calc(var(--blockMargin, 4rem) * 1.5) + var(--bar-height));
}

.wp-block-group.is-style-full-width.has-blue-background-color:before,
.wp-block-group.is-style-full-width.has-blue-background-color:after {
    content: " ";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: var(--bar-height);
    background: #fff;
}

.wp-block-group.is-style-full-width.has-blue-background-color:after {
    background: #fff url(../image/diagonal-pattern-base.svg) 50% 12% repeat;
    background-size: auto 120px;
    opacity: .4;
}

.wp-block-group.is-style-full-width:last-child {
    margin-bottom: calc(var(--padding-bottom, 0) * -1);
}

.wp-block-group.quotes-container:before {
    content: "”";
    display: block;
    margin-top: calc(var(--blockMargin, 4rem) * .5);
    color: #54c8e8;
    font-size: 120px;
    line-height: 1px;
    font-family: loretta, serif;
    text-align: center;
}

.wp-block-media-text {
    margin: calc(var(--blockMargin, 4rem) * 1) auto;
    max-width: 1094px;
    gap: calc(var(--blockMargin, 4rem) * .5);
}

.wp-block-media-text:first-child {
    margin-top: 0;
}

.wp-block-media-text:last-child {
    margin-bottom: 0;
}

.wp-block-media-text .wp-block-media-text__content {
    padding: calc(var(--blockMargin, 4rem) * .5) 0 0;
    border-top: 1px solid #b9c5d6;
    align-self: start;
}

.wp-block-media-text .wp-block-media-text__media {
    align-self: start;
}

.wp-block-media-text .wp-block-media-text__media img {
    display: block;
}

@media screen and (max-width: 767px) {
    .wp-block-media-text {
        display: flex;
        flex-direction: column;
    }

    .wp-block-media-text .wp-block-media-text__content,
    .wp-block-media-text .wp-block-media-text__media {
        width: 100%;
    }

    .wp-block-media-text .wp-block-media-text__media {
        order: -1;
    }
}

.wp-block-quote {
    position: relative;
    max-width: 920px;
    margin: calc(var(--blockMargin, 4rem) * 1) auto;
    padding: 0;
    border: 0;
    font-family: loretta, serif;
    font-size: 1.45em;
    line-height: 1.4;
    font-weight: 400;
    color: #1c355e;
    text-align: center;
}

.wp-block-quote:first-child {
    margin-top: 0;
}

.wp-block-quote:last-child {
    margin-bottom: 0;
}

.wp-block-quote p {
    margin: 0;
}

.wp-block-quote p+p {
    margin-top: .5rem;
}

.wp-block-quote cite {
    display: block;
    padding-top: 1.9em;
    font-size: .8rem;
    font-family: proxima-nova, sans-serif;
    font-style: normal;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: .5px;
}

@media screen and (max-width: 767px) {
    .wp-block-quote {
        font-size: 1.33rem;
        line-height: 1.42;
        margin: 2rem 0;
    }

    .wp-block-quote cite {
        padding-top: 1rem;
    }
}

.wp-block-embed {
    position: relative;
    margin: calc(var(--blockMargin, 4rem) * .5) 0;
    padding: 0;
}

.wp-block-embed:first-child {
    margin-top: 0;
}

.wp-block-embed:last-child {
    margin-top: 0;
}

@media screen and (min-width: 768px) {
    .main-content.post .wp-block-embed {
        margin-right: calc((var(--side-width) / 2 + var(--side-gap)) * -1);
    }

    .main-content.post.location .wp-block-embed {
        margin-right: 0;
    }
}

.wp-block-embed.is-type-video {
    background: #000;
}

.wp-block-embed.is-type-video>.wp-block-embed__wrapper {
    position: relative;
    padding: 0 0 56.25%;
}

.wp-block-embed.is-type-video>.wp-block-embed__wrapper>iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
}

.wp-block-embed.is-type-video.has-preview-poster>.wp-block-embed__wrapper:before {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: var(--header-border-radius);
    background: rgba(0, 0, 0, .5);
}

.wp-block-embed.is-type-video.has-preview-poster>.wp-block-embed__wrapper>.media-embed,
.wp-block-embed.is-type-video.has-preview-poster>.wp-block-embed__wrapper>.media-embed>iframe {
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    border-radius: var(--header-border-radius);
}

.wp-block-embed.is-type-video.has-preview-poster>.wp-block-embed__wrapper:after {
    left: 50%;
    top: 50%;
    margin: -15px 0 0 -15px;
    background: url(../image/loading-white.png) no-repeat center top;
    width: 30px;
    height: 30px;
    animation: loading 1s steps(19) infinite;
}

.wp-block-embed.is-type-video.has-preview-poster>.wp-block-embed__wrapper>a.embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.wp-block-embed.is-type-video.has-preview-poster>.wp-block-embed__wrapper>a.embed img {
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    border-radius: var(--header-border-radius);
    opacity: 1;
    transition: opacity .2s ease;
}

.wp-block-embed.is-type-video.has-preview-poster>.wp-block-embed__wrapper>a.embed:after {
    font-family: "Font Awesome 6 Free";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: 900;
    text-transform: none;
    content: "";
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    width: 100px;
    height: 100px;
    line-height: 100px;
    text-align: center;
    transform: translate(-50%, -50%);
    background: rgba(255, 255, 255, .95);
    color: #1c355e;
    font-size: 50px;
    border-radius: 50%;
    border: 0 solid currentColor;
    text-align: center;
    transition: border-color .2s ease, font-size .2s ease;
    text-indent: 5px;
}

.wp-block-embed.is-type-video.has-preview-poster>.wp-block-embed__wrapper>a.embed:hover:after {
    font-size: 60px;
    border-color: #1c355e;
}

.wp-block-embed.is-type-video.has-preview-poster.media-loaded>.wp-block-embed__wrapper:after {
    content: " ";
    display: block;
    position: absolute;
}

.wp-block-embed.is-type-video.has-preview-poster.media-loaded>.wp-block-embed__wrapper:before,
.wp-block-embed.is-type-video.has-preview-poster.media-loaded>.wp-block-embed__wrapper:after {
    z-index: 2;
}

.wp-block-embed.is-type-video.has-preview-poster.media-loaded>.wp-block-embed__wrapper>a.embed img {
    opacity: .25;
}

.wp-block-embed.is-type-video.has-preview-poster.media-loaded>.wp-block-embed__wrapper>a.embed:after {
    display: none;
}

.wp-block-embed.is-type-video.has-preview-poster>figcaption {
    margin: 0;
    position: absolute;
    bottom: 1em;
    left: 1em;
    z-index: 1;
    font-size: .8em;
    line-height: 1.3;
}

.wp-block-gallery {
    margin: calc(var(--blockMargin, 4rem) * 1) 0;
}

.wp-block-gallery:first-child {
    margin-top: 0;
}

.wp-block-gallery:last-child {
    margin-bottom: 0;
}

.wp-block-gallery .blocks-gallery-grid {
    gap: .5rem;
}

.wp-block-gallery-wrap.full-width {
    padding-left: calc(var(--blockMargin, 4rem) * 1);
    padding-right: calc(var(--blockMargin, 4rem) * 1);
}

.wp-block-gallery-wrap.full-width>.wp-block-gallery {
    --wp--style--gallery-gap-default: .5rem;
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 1060px) {
    .wp-block-gallery-wrap.full-width {
        padding-left: var(--gutter-left);
        padding-right: var(--gutter-right);
    }
}

.wp-block-gallery-wrap.is-style-carousel {
    margin-top: calc(var(--blockMargin, 4rem) * .75);
    margin-bottom: calc(var(--blockMargin, 4rem) * .75);
}

.wp-block-gallery-wrap.is-style-carousel:first-child {
    margin-top: 0;
}

.wp-block-gallery-wrap.is-style-carousel:last-child {
    margin-bottom: 0;
}

.wp-block-gallery.is-style-carousel {
    --aspect-ratio: 2/3;
    position: relative;
    display: block;
}

.wp-block-gallery.is-style-carousel .block-slides {
    position: relative;
    display: block;
}

.wp-block-gallery.is-style-carousel .block-slides>figcaption {
    position: absolute;
    top: 0;
    right: 0;
    padding: .75em;
    font-size: .8em;
    line-height: 1.3;
    text-align: left;
    font-style: normal;
    background: #444;
    color: #fff;
}

.wp-block-gallery.is-style-carousel figure.wp-block-image {
    position: relative;
    white-space: normal;
    display: block;
    margin: 0;
}

.wp-block-gallery.is-style-carousel figure.wp-block-image .image {
    position: relative;
    padding: 0 0 calc(var(--aspect-ratio) * 100%);
}

.wp-block-gallery.is-style-carousel figure.wp-block-image .image img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.wp-block-gallery.is-style-carousel .slick-track {
    display: flex;
    align-items: flex-start;
}

.wp-block-gallery.is-style-carousel .pager {
    position: absolute;
    z-index: 1;
    top: var(--image-height, calc(100% - 1em));
    right: 0;
    margin: .5rem 0 0;
    font-size: .8rem;
    font-weight: 600;
}

.wp-block-gallery.is-style-carousel .nav {
    display: none;
}

.wp-block-gallery.is-style-carousel .nav.slick-arrow {
    display: block;
}

.wp-block-gallery.is-style-carousel .captions {
    display: none;
    min-height: 2em;
    margin: .5rem 0 0 0;
    padding: 0 0 0;
    width: calc(100% - 4em);
    font-size: .8rem;
}

.wp-block-gallery.is-style-carousel .slick-dots {
    position: absolute;
    z-index: 10000;
    bottom: 1em;
    left: 50%;
    width: 100vw;
    margin-left: -50vw;
}

.wp-block-gallery.is-style-carousel .slick-arrow {
    --arrow-hover-offset: 0px;
    position: absolute;
    top: calc(var(--image-height) / 2);
    transform: translate(0, -50%);
    font-size: 30px;
    color: #b9c5d6;
}

.wp-block-gallery.is-style-carousel .slick-arrow.next {
    left: 100%;
    padding: 0 1rem;
    margin: 0 0 0 calc(var(--arrow-size) * .66 + var(--arrow-hover-offset));
}

.wp-block-gallery.is-style-carousel .slick-arrow.prev {
    right: 100%;
    padding: 0 1rem;
    margin: 0 calc(var(--arrow-size) * .66 + var(--arrow-hover-offset)) 0 0;
}

.wp-block-gallery.is-style-carousel .slick-arrow:not(.slick-disabled):hover {
    --arrow-hover-offset: 3px;
}

@media screen and (max-width: 1249px) {
    .wp-block-gallery.is-style-carousel {
        max-width: 47rem;
        margin-left: auto;
        margin-right: auto;
    }

    .wp-block-gallery.is-style-carousel .slick-arrow.next {
        margin-left: calc(var(--arrow-size) * .3 + var(--arrow-hover-offset));
    }

    .wp-block-gallery.is-style-carousel .slick-arrow.prev {
        margin-right: calc(var(--arrow-size) * .3 + var(--arrow-hover-offset));
    }
}

@media screen and (max-width: 980px) {
    .wp-block-gallery.is-style-carousel {
        max-width: none;
    }

    .wp-block-gallery.is-style-carousel .slick-arrow {
        top: 0;
        transform: none;
        height: var(--image-height);
        line-height: var(--image-height);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .wp-block-gallery.is-style-carousel .slick-arrow.next {
        left: auto;
        right: 0;
        padding-left: 2em;
        padding-right: 1.5em;
        margin-left: 0;
    }

    .wp-block-gallery.is-style-carousel .slick-arrow.prev {
        right: auto;
        left: 0;
        padding-right: 2em;
        padding-left: 1.5em;
        margin-right: 0;
    }

    .wp-block-gallery.is-style-carousel figure.wp-block-image .image {
        border-radius: 0;
    }

    .wp-block-gallery.is-style-carousel figure.wp-block-image figcaption {
        display: none;
        padding-left: 3.5vw;
        padding-right: calc(3.5vw + 5em);
    }

    .wp-block-gallery.is-style-carousel .captions {
        display: block;
        margin-left: var(--gutter-left);
        width: calc(100% - 3.5em - var(--gutter-right));
    }

    .wp-block-gallery.is-style-carousel .pager {
        right: var(--gutter-right);
    }
}

@media screen and (max-width: 767px) {
    .wp-block-gallery.is-style-carousel .slick-arrow {
        display: none !important;
        opacity: 0;
        --arrow-size: 30px;
    }
}

.wp-block-separator {
    margin: calc(var(--blockMargin, 4rem) * 1) auto;
    width: 100%;
    border: 1px solid currentColor;
    border-width: 1px 0 0;
    height: 0;
}

.wp-block-separator.has-small-margin {
    margin: calc(var(--blockMargin, 4rem) * .75) auto;
}

h1+.wp-block-separator,
h2+.wp-block-separator,
h3+.wp-block-separator,
h4+.wp-block-separator,
h5+.wp-block-separator,
h6+.wp-block-separator {
    margin-top: calc(var(--blockMargin, 4rem) * .5);
}

.page-blocks ul:not(.slick-dots) {
    margin: 2em 0;
    padding: 0;
    list-style: none;
}

.page-blocks ul:not(.slick-dots):first-child {
    margin-top: 0;
}

.page-blocks ul:not(.slick-dots):last-child {
    margin-bottom: 0;
}

.page-blocks ul:not(.slick-dots)>li {
    list-style: none;
    position: relative;
    margin: 0 0 .5em;
    padding-left: 1.5em;
}

.page-blocks ul:not(.slick-dots)>li:last-child {
    margin-bottom: 0;
}

.page-blocks ul:not(.slick-dots)>li:before {
    content: " ";
    display: block;
    position: absolute;
    top: .7em;
    left: .3em;
    width: .3em;
    height: .3em;
    background: #54c8e8;
    border-radius: 50%;
}

ul.is-style-formatted,
ol.is-style-formatted {
    padding: 0;
    margin: 1em 0;
    list-style: none;
    line-height: 1.5;
}

ul.is-style-formatted:first-child,
ol.is-style-formatted:first-child {
    margin-top: 0;
}

ul.is-style-formatted:last-child,
ol.is-style-formatted:last-child {
    margin-bottom: 0;
}

ul.is-style-formatted>li,
ol.is-style-formatted>li {
    position: relative;
    padding: 1.5em 0 1.5em 3em;
    border-bottom: 1px solid currentColor;
}

ul.is-style-formatted>li:first-child,
ol.is-style-formatted>li:first-child {
    border-top: 1px solid currentColor;
}

ul.is-style-formatted>li.last,
ol.is-style-formatted>li.last {
    padding: 1.6em 0 1.5em 3em;
}

ul.is-style-formatted>li:before,
ol.is-style-formatted>li:before {
    content: "";
    display: block;
    position: absolute;
    top: 32%;
    left: .9em;
    width: 1.7em;
    height: 1.7em;
    line-height: 1.7;
    background: #000;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    font-size: .8em;
}

@media screen and (max-width: 767px) {

    ul.is-style-formatted>li:before,
    ol.is-style-formatted>li:before {
        font-size: 1.1em;
        left: .4em;
    }
}

h1+ul.is-style-formatted,
h2+ul.is-style-formatted,
h3+ul.is-style-formatted,
h4+ul.is-style-formatted,
h5+ul.is-style-formatted,
h6+ul.is-style-formatted,
h1+ol.is-style-formatted,
h2+ol.is-style-formatted,
h3+ol.is-style-formatted,
h4+ol.is-style-formatted,
h5+ol.is-style-formatted,
h6+ol.is-style-formatted {
    margin-top: 0;
}

ol.is-style-formatted>li:nth-child(1):before {
    content: "1";
}

ol.is-style-formatted>li:nth-child(2):before {
    content: "2";
}

ol.is-style-formatted>li:nth-child(3):before {
    content: "3";
}

ol.is-style-formatted>li:nth-child(4):before {
    content: "4";
}

ol.is-style-formatted>li:nth-child(5):before {
    content: "5";
}

ol.is-style-formatted>li:nth-child(6):before {
    content: "6";
}

ol.is-style-formatted>li:nth-child(7):before {
    content: "7";
}

ol.is-style-formatted>li:nth-child(8):before {
    content: "8";
}

ol.is-style-formatted>li:nth-child(9):before {
    content: "9";
}

ol.is-style-formatted>li:nth-child(10):before {
    content: "10";
}

ul.is-style-stats {
    --gap: 3em;
    --item-width: 25%;
    display: flex;
    list-style: none;
    margin: calc(var(--blockMargin, 4rem) * .7) 0;
    padding: 0;
    text-align: center;
    flex-wrap: wrap;
    gap: var(--gap);
    row-gap: calc(var(--gap) * 1.5);
    font-size: .99em;
    line-height: 1.2;
    justify-content: center;
}

ul.is-style-stats:first-child {
    margin-top: 0;
}

ul.is-style-stats:last-child {
    margin-bottom: 0;
}

ul.is-style-stats>li {
    width: calc(var(--item-width) - var(--gap));
}

ul.is-style-stats>li strong {
    display: block;
    font-size: 2.8rem;
    font-family: loretta, serif;
}

@media screen and (max-width: 1200px) {
    ul.is-style-stats>li strong {
        font-size: 2.5rem;
    }
}

@media screen and (max-width: 767px) {
    ul.is-style-stats>li strong {
        font-size: 1.7rem;
    }
}

@media screen and (max-width: 1200px) {
    ul.is-style-stats>li {
        flex-basis: 35%;
    }
}

@media screen and (max-width: 1200px) {
    ul.is-style-stats {
        --gap: 3em;
        margin: calc(var(--blockMargin, 5rem) * .7) 0;
    }
}

@media screen and (max-width: 767px) {
    ul.is-style-stats {
        --gap: 1.5em;
        --item-width: 50%;
        font-size: .9em;
    }
}

ol.is-style-superscript {
    counter-reset: item;
    padding: 0;
    list-style: none;
}

ol.is-style-superscript>li {
    position: relative;
    display: block;
}

ol.is-style-superscript>li:before {
    content: counter(item);
    counter-increment: item;
    vertical-align: super;
    font-size: .65em;
    padding-right: .5em;
}

.wp-block-video {
    position: relative;
    margin: calc(var(--blockMargin, 4rem) * .5) 0;
    padding: 0;
}

.wp-block-video:first-child {
    margin-top: 0;
}

.wp-block-video:last-child {
    margin-top: 0;
}

@media screen and (min-width: 768px) {
    .main-content.post .wp-block-video {
        margin-right: calc((var(--side-width) / 2 + var(--side-gap)) * -1);
    }
}