﻿html {
    height: 100%;
    -webkit-text-size-adjust: 100%;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
li,
figure,
figcaption,
blockquote,
dl,
dd {
    margin: 0;
}

body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
    line-height: 1.5;
}

img {
    max-width: 100%;
    width: auto;
    height: auto;
    display: block;
}

input,
button,
textarea,
select {
    font: inherit;
}

:root {
    --gutter-top: 0;
    --gutter-bottom: 0;
    --gutter-left: 0.75rem;
    --gutter-right: 0.75rem;
    --gap-row: 0;
    --gap-col: 0.75rem;
}

.section {
    position: relative;
    padding: var(--gutter-top) var(--gutter-right) var(--gutter-bottom) var(--gutter-left);
    display: block;
}

.section-wrap {
    position: relative;
    max-width: 80rem;
    margin: 0 auto;
    display: block;
}

.grid {
    position: relative;
    width: 100%;
    height: auto;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto;
    align-items: stretch;
    justify-content: stretch;
    gap: var(--gap-row) var(--gap-col);
    padding: 0;
    box-sizing: border-box;
    margin: 0;
}

[class*=col-] {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    align-items: stretch;
    align-content: stretch;
    height: auto;
    padding: 0;
    grid-column: span 12;
}

    [class*=col-] > * {
        max-width: 100%;
        flex: 1 1 auto;
        box-sizing: border-box;
    }

.section {
    box-sizing: border-box;
}

    .section .section {
        padding: 0;
    }

.col-12 {
    width: 100%;
}

html.wf-active {
    scroll-behavior: smooth;
}

html {
    font-size: initial;
}

body {
    font-family: F37GingerPro, sans-serif;
    font-weight: 200;
    overflow-x: hidden;
    letter-spacing: -0.02rem;
    color: #05112b;
    background-color: #ffffff;
}

.hide {
    display: none;
}

.fixViewPort {
    position: absolute;
    height: 100%;
    width: 100%;
    overflow: hidden;
}

    .fixViewPort body {
        position: absolute;
        height: 100%;
        width: 100%;
        overflow: hidden;
    }

.offscreen {
    margin: -0.0625rem;
    padding: 0;
    width: 0.0625rem;
    height: 0.0625rem;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip: rect(0, 0, 0, 0);
    position: absolute;
}

main:focus {
    outline: 0;
}

a,
button,
summary {
    display: inline-block;
    background-color: transparent;
    border: 0;
    border-radius: none;
    -webkit-appearance: none;
    appearance: none;
    text-decoration: underline;
    text-decoration-thickness: 0.0625rem;
    text-underline-offset: 0.1875rem;
}

    a[class]:focus-visible,
    button[class]:focus-visible,
    summary[class]:focus-visible {
        box-shadow: inset 0 0 0 0.1875rem #05112b, 0 0 0 0.375rem #ff9d3c;
        outline: 0;
        z-index: 999;
    }

    a:not([class]),
    button:not([class]),
    summary:not([class]) {
        color: #05112b;
        transition: 0.2s ease-out background-size, 0.2s ease-out color;
        background: linear-gradient(to right, #05112b, #05112b), linear-gradient(to right, #ff9d3c, #ff9d3c);
        background-size: 100% 0, 100% 0;
        background-position: bottom, bottom;
        background-repeat: no-repeat;
        text-decoration: underline;
        text-decoration-thickness: 0.0625rem;
        text-underline-offset: 0.1875rem;
    }

        a:not([class]):hover,
        button:not([class]):hover,
        summary:not([class]):hover {
            color: #2571cc;
        }

        a:not([class]):focus-visible,
        button:not([class]):focus-visible,
        summary:not([class]):focus-visible {
            color: #2571cc;
        }

        a:not([class]):focus-visible,
        button:not([class]):focus-visible,
        summary:not([class]):focus-visible {
            text-decoration: none;
            color: #05112b;
            background-size: 100% 0.1875rem, 100% 100%;
            outline: 0;
            z-index: 999;
            box-shadow: none !important;
            text-decoration: none !important;
        }

    a:not(:disabled):not([href=""]),
    button:not(:disabled):not([href=""]),
    summary:not(:disabled):not([href=""]) {
        cursor: pointer;
    }

    a[href=""], a:not([href]) {
        display: none;
    }

.blockSpaceSmall {
    margin-bottom: 2.5rem;
}

.blockSpaceLarge {
    margin-bottom: 2.5rem;
}

.canvas {
    position: relative;
}

    .canvas::before {
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        margin: 0 calc((100% - 100vw) / 2);
        display: block;
        z-index: -1;
        content: "";
        background-color: var(--backgroundColor, #ffffff);
    }

:root {
    --accentColor: #2571cc;
    --textColor: #05112b;
    --secondaryTextColor: var(--textColor);
    --secondaryColor: var(--accentColor);
}

.blueLight {
    --textColor: #05112b;
    --accentColor: #2571cc;
    --secondaryColor: #b1e6fd;
    --backgroundColor: #d8f2fe;
}

.blueMedium {
    --textColor: #ffffff;
    --accentColor: #05112b;
    --backgroundColor: #2571cc;
}

.blueDark {
    --accentColor: #b1e6fd;
    --textColor: #ffffff;
    --secondaryTextColor: #05112b;
    --secondaryColor: #b1e6fd;
    --backgroundColor: #05112b;
}

.orange {
    --accentColor: #bf330a;
    --secondaryColor: var(--accentColor);
    --secondaryTextColor: #ffffff;
    --backgroundColor: #ffe0cb;
}

.green {
    --accentColor: #44b426;
    --textColor: #08281b;
    --secondaryColor: #b6f2be;
    --backgroundColor: #daf8df;
}

section {
    color: var(--textColor, #05112b);
}

h1, .h-xl {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    font-size: 2.5rem;
    line-height: 1.4;
    letter-spacing: -2.2%;
}

h2, .h-l {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    font-size: 2rem;
    line-height: 1.5;
}

h3, .h-m {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    font-size: 1.625rem;
    line-height: 1.53;
}

h4, .h-s {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.33;
}

h5, .h-xs {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    font-size: 1.375rem;
    line-height: 1.45;
}

h6, .h-xxs {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.5;
}

/*p,
li {
    font-family: F37GingerPro, sans-serif;
    font-weight: 200;
    font-size: 1.25rem;
    line-height: 1.45;
}*/

small {
    font-family: F37GingerPro, sans-serif;
    font-weight: 300;
    font-size: 1rem;
    line-height: 1.5;
}

strong {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
}

.smallBody {
    font-family: F37GingerPro, sans-serif;
    font-weight: 300;
    font-size: 1.125rem;
    line-height: 1.33;
}

    .smallBody strong {
        font-family: F37GingerPro, sans-serif;
        font-weight: 500;
    }

.largeBody {
    font-family: F37GingerPro, sans-serif;
    font-weight: 200;
    font-size: 1.375rem;
    line-height: 1.73;
}

    .largeBody strong {
        font-family: F37GingerPro, sans-serif;
        font-weight: 500;
    }

.pullOut {
    position: relative;
    width: 100%;
    height: auto;
    border-left: 0.25rem solid #bf330a;
    margin: 2.5rem auto;
    padding: 0 0 0 1rem;
    max-width: 36.875rem;
    box-sizing: border-box;
}

    .pullOut * {
        font-family: F37GingerPro, sans-serif;
        font-weight: 500;
    }

table {
    background: linear-gradient(#fff 30%, rgba(255, 255, 255, 0)) center top, linear-gradient(rgba(255, 255, 255, 0), #fff 70%) center bottom, radial-gradient(farthest-side at 50% 0, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) center top, radial-gradient(farthest-side at 50% 100%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) center bottom, linear-gradient(#fff 0%, #fff 100%) center top;
    background-repeat: no-repeat;
    background-size: 100% 2.5rem, 100% 2.5rem, 100% 0.875rem, 100% 0.875rem, 100% 100%;
    background-attachment: local, local, scroll, scroll, local;
    position: relative;
    width: 100%;
    height: auto;
    display: block;
    overflow: auto;
    border-collapse: collapse;
    overflow: auto;
    max-height: calc(80vh - 5rem);
    z-index: 0;
}

    table caption {
        font-family: F37GingerPro, sans-serif;
        font-weight: 500;
        font-size: 1.5rem;
        line-height: 1.33;
        text-align: start;
    }

thead {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1;
}

tbody {
    position: relative;
    z-index: 0;
}

th, td {
    vertical-align: middle;
    padding: 0.5rem 1rem;
    text-align: start;
    border: 0.0625rem solid #828895;
    color: #05112b;
    box-sizing: border-box;
}

td {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    position: relative;
    font-size: 1.5rem;
    line-height: 1.67;
    z-index: 0;
}

.highlight {
    color: #05112b;
}

    .highlight::before {
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        background-color: #d8f2fe;
        content: "";
        z-index: -1;
        display: block;
    }

th {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.67;
    background-color: #f4f4f5;
}

ul.tickList {
    list-style: none;
}

    ul.tickList li::before {
        position: absolute;
        left: -2.5rem;
        width: 2.125rem;
        height: 2.125rem;
        background-color: #6ee67f;
        border-radius: 100%;
        background-image: url("/static/assets/tick.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 2.375rem auto;
        content: "";
    }

.wysiwyg,
.mce-content-body {
    color: #05112b;
    text-align: start;
}

    .wysiwyg h2:not(.dialogTitle),
    .mce-content-body h2:not(.dialogTitle) {
        position: relative;
        margin: 0 auto 1rem;
    }

    .wysiwyg h3,
    .wysiwyg h4,
    .wysiwyg h5,
    .wysiwyg h6,
    .wysiwyg hr,
    .wysiwyg p, .wysiwyg li,
    .mce-content-body h3,
    .mce-content-body h4,
    .mce-content-body h5,
    .mce-content-body h6,
    .mce-content-body hr,
    .mce-content-body p,
    .mce-content-body li {
        position: relative;
        margin: 0 auto 0.5rem;
    }

    .wysiwyg ul, .wysiwyg ol,
    .mce-content-body ul,
    .mce-content-body ol {
        position: relative;
        width: 100%;
        height: auto;
        padding: 0 0 0.5rem 1rem;
        margin: 0;
        box-sizing: border-box;
    }

    .wysiwyg ul,
    .mce-content-body ul {
        padding: 0 0 0.5rem 1.5rem;
    }

        .wysiwyg ul.tickList,
        .mce-content-body ul.tickList {
            padding: 0 0 0.5rem 2.5rem;
        }

    .wysiwyg ol,
    .mce-content-body ol {
        padding: 0 0 0.5rem 2.25rem;
    }

    .wysiwyg .columns, .wysiwyg table,
    .mce-content-body .columns,
    .mce-content-body table {
        margin: 0 auto 0.5rem;
    }

    .wysiwyg td,
    .mce-content-body td {
        color: inherit;
    }

    .wysiwyg > *:nth-last-child(1),
    .mce-content-body > *:nth-last-child(1) {
        margin: 0;
    }

    .wysiwyg .ctaGroup,
    .mce-content-body .ctaGroup {
        margin-bottom: 1.5rem;
    }

    .wysiwyg .epi-contentfragment,
    .mce-content-body .epi-contentfragment {
        margin-bottom: 0.5rem;
    }

.canvas.blueDark .wysiwyg:not(.dialogContent),
.canvas.blueDark .mce-content-body:not(.dialogContent) {
    color: #ffffff;
}

    .canvas.blueDark .wysiwyg:not(.dialogContent) table,
    .canvas.blueDark .mce-content-body:not(.dialogContent) table {
        background: linear-gradient(#05112b 30%, rgba(5, 17, 43, 0)) center top, linear-gradient(rgba(5, 17, 43, 0), #05112b 70%) center bottom, radial-gradient(farthest-side at 50% 0, rgba(177, 230, 253, 0.2), rgba(177, 230, 253, 0)) center top, radial-gradient(farthest-side at 50% 100%, rgba(177, 230, 253, 0.2), rgba(177, 230, 253, 0)) center bottom, linear-gradient(#05112b 0%, #05112b 100%) center top;
        background-repeat: no-repeat;
        background-size: 100% 2.5rem, 100% 2.5rem, 100% 0.875rem, 100% 0.875rem, 100% 100%;
        background-attachment: local, local, scroll, scroll, local;
    }

        .canvas.blueDark .wysiwyg:not(.dialogContent) table td.highlight,
        .canvas.blueDark .mce-content-body:not(.dialogContent) table td.highlight {
            color: #05112b;
        }

    .canvas.blueDark .wysiwyg:not(.dialogContent) a:not([class]),
    .canvas.blueDark .mce-content-body:not(.dialogContent) a:not([class]) {
        color: #ffffff;
    }

        .canvas.blueDark .wysiwyg:not(.dialogContent) a:not([class]):hover:not(:focus-visible),
        .canvas.blueDark .mce-content-body:not(.dialogContent) a:not([class]):hover:not(:focus-visible) {
            color: #b1e6fd;
        }

        .canvas.blueDark .wysiwyg:not(.dialogContent) a:not([class]):hover:focus-visible,
        .canvas.blueDark .mce-content-body:not(.dialogContent) a:not([class]):hover:focus-visible {
            color: #05112b;
        }

        .canvas.blueDark .wysiwyg:not(.dialogContent) a:not([class]):focus-visible:not(:focus-visible),
        .canvas.blueDark .mce-content-body:not(.dialogContent) a:not([class]):focus-visible:not(:focus-visible) {
            color: #b1e6fd;
        }

        .canvas.blueDark .wysiwyg:not(.dialogContent) a:not([class]):focus-visible:focus-visible,
        .canvas.blueDark .mce-content-body:not(.dialogContent) a:not([class]):focus-visible:focus-visible {
            color: #05112b;
        }

.filterFormResultsMsg {
    position: relative;
    display: flex;
    justify-content: center;
    margin: 3.875rem 0 0;
}

.filterFormResultsMsgText {
    font-family: F37GingerPro, sans-serif;
    font-weight: 300;
    font-size: 1.125rem;
    line-height: 1.3;
    color: #05112b;
}

.pagination {
    position: relative;
    width: 100%;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    gap: 0.5rem;
    margin: 1.25rem 0 3.875rem;
}

.paginationInfo {
    margin: -0.0625rem;
    padding: 0;
    width: 0.0625rem;
    height: 0.0625rem;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip: rect(0, 0, 0, 0);
    position: absolute;
}

.paginationNav {
    position: relative;
    width: auto;
    height: auto;
    display: block;
    order: 2;
}

.paginationNavList {
    position: relative;
    width: 100%;
    height: auto;
    display: flex;
    gap: 0.5rem;
    flex-flow: row nowrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

.paginationNavListItem {
    position: relative;
    width: auto;
    height: auto;
    flex: 0 0 auto;
}

    .paginationNavListItem a {
        display: block;
        width: 1.875rem;
        height: 2.75rem;
        text-align: center;
        text-decoration: none;
    }

        .paginationNavListItem a:hover {
            text-decoration: underline;
            color: #05112b;
        }

        .paginationNavListItem a:focus-visible {
            text-decoration: underline;
            color: #05112b;
        }

    .paginationNavListItem .labelHolder {
        font-family: F37GingerPro, sans-serif;
        font-weight: 500;
        font-size: 1.25rem;
        line-height: 1.6;
        color: #05112b;
    }

    .paginationNavListItem [aria-current] .labelHolder {
        color: #FFFFFF;
        position: relative;
    }

        .paginationNavListItem [aria-current] .labelHolder::before {
            content: "";
            position: absolute;
            width: 2.5rem;
            height: 2.5rem;
            top: 50%;
            left: 50%;
            transform: translate3d(-50%, -50%, 0);
            border-radius: 100%;
            background-color: #05112b;
            z-index: -1;
        }

.pagination input[name=page]:not([value="1"]):not([value="2"]):not([value="3"]) ~ .paginationNav .paginationNavListItem:nth-of-type(2) a .selectedLabel {
    margin: -0.0625rem;
    padding: 0;
    width: 0.0625rem;
    height: 0.0625rem;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip: rect(0, 0, 0, 0);
    position: absolute;
}

.pagination input[name=page]:not([value="1"]):not([value="2"]):not([value="3"]) ~ .paginationNav .paginationNavListItem:nth-of-type(2) a .labelHolder::after {
    content: "...";
}

.pagination input[name=page][data-end-pages=false] ~ .paginationNav .paginationNavListItem:nth-of-type(4) a .selectedLabel {
    margin: -0.0625rem;
    padding: 0;
    width: 0.0625rem;
    height: 0.0625rem;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip: rect(0, 0, 0, 0);
    position: absolute;
}

.pagination input[name=page][data-end-pages=false] ~ .paginationNav .paginationNavListItem:nth-of-type(4) a .labelHolder::after {
    content: "...";
}

.prevNextWrapper {
    position: relative;
    width: 2.75rem;
    height: 2.75rem;
    flex: 0 0 2.75rem;
    order: 3;
}

    .prevNextWrapper .selectedLabel {
        margin: -0.0625rem;
        padding: 0;
        width: 0.0625rem;
        height: 0.0625rem;
        overflow: hidden;
        clip: rect(0 0 0 0);
        clip: rect(0, 0, 0, 0);
        position: absolute;
    }

    .prevNextWrapper .icon::before {
        content: "";
        position: absolute;
        display: block;
        width: 2.5rem;
        height: 2.5rem;
        border: 0.125rem solid #05112b;
        border-radius: 100%;
        bottom: 0.5rem;
        left: 0.25rem;
        z-index: -1;
    }

    .prevNextWrapper .icon svg {
        content: "";
        position: absolute;
        width: 1.625rem;
        height: 2.5rem;
        bottom: 0.5625rem;
        left: 0.75rem;
        transform: rotate(-90deg);
    }

    .prevNextWrapper.prev {
        order: 1;
    }

        .prevNextWrapper.prev svg {
            left: 0.6875rem;
            transform: rotate(90deg);
        }

    .prevNextWrapper a:hover .icon::before {
        background-color: #05112b;
    }

    .prevNextWrapper a:hover use {
        fill: #FFFFFF;
    }

    .prevNextWrapper a:focus-visible .icon::before {
        background-color: #05112b;
    }

    .prevNextWrapper a:focus-visible use {
        fill: #FFFFFF;
    }

    .prevNextWrapper a use {
        transition: 0.2s ease-out fill;
    }

    .prevNextWrapper a:focus-visible .icon::before {
        border: 0.1875rem solid #ff9d3c;
    }

.marketingId {
    font-family: F37GingerPro, sans-serif;
    font-weight: 300;
    position: relative;
    width: 100%;
    margin: 2.5rem auto;
    padding: 0 var(--gutter-left);
    box-sizing: border-box;
    max-width: calc(80rem + var(--gutter-left) + var(--gutter-right));
    text-align: end;
    color: #05112b;
    font-size: 1rem;
    line-height: 1.33;
}

.article__info {
    display: flex;
    font-size: 1.125rem;
    max-width: 45.25rem;
    margin: 1.125rem auto;
}

.article__info__pubdate {
    font-family: F37GingerPro, sans-serif;
    font-weight: 300;
}

.article__info__author {
    display: inline-flex;
    align-items: center;
    margin-left: 0.75rem;
}

    .article__info__author::before {
        content: "";
        display: inline-b;
        height: 1em;
        width: 0.0625rem;
        background-color: #05112b;
        margin-right: 0.75rem;
    }

.article__footer {
    max-width: 45.25rem;
    margin: 1.125rem auto;
    margin-bottom: 2.5rem;
    border-top: 0.0625rem solid #828895;
    padding-top: 1rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.article__footer__social {
    list-style: none;
    display: flex;
    padding: 0;
    flex-shrink: 0;
    gap: 0.3125rem;
    width: auto !important;
    height: auto !important;
}

    .article__footer__social .icon {
        background-color: #05112b !important;
        flex-shrink: 0;
    }

        .article__footer__social .icon svg {
            width: 100%;
            height: 100%;
        }

            .article__footer__social .icon svg use {
                fill: #ffffff !important;
            }

        .article__footer__social .icon:hover {
            background-color: #2571cc !important;
        }

.textBlock {
    position: relative;
    width: 100%;
    height: auto;
    display: block;
    max-width: 45.25rem;
    margin-left: auto;
    margin-right: auto;
}

    .textBlock.canvas {
        padding: 2.5rem 0;
    }

.multiText {
    position: relative;
    width: 100%;
    height: auto;
    display: grid;
    flex-flow: row nowrap;
    gap: var(--gap-col);
    justify-content: space-between;
    align-items: stretch;
    align-content: flex-start;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: auto;
}

.multiTextHeadLine {
    grid-column: 1/7;
    grid-row: auto;
    margin-bottom: 0.25rem;
}

.multiText.canvas {
    padding: 2.5rem 0;
}

    .multiText.canvas.blueDark .multiTextHeadLine {
        color: #ffffff;
    }

.multiText.hasLines .textBlock:not(:nth-last-of-type(1))::after {
    content: "";
    border-bottom: 0.125rem solid #c1c3ca;
    display: block;
    width: 100%;
    padding: 1rem 0;
}

.multiText.hasLines.blueLight .textBlock:not(:nth-last-of-type(1))::after {
    border-bottom: 0.125rem solid #2571cc;
}

.multiText.hasLines.blueDark .textBlock:not(:nth-last-of-type(1))::after {
    border-bottom: 0.125rem solid #444d60;
}

.multiText .textBlock {
    max-width: none;
    grid-column: span 6;
}

.apiVideoBlock {
    position: relative;
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 16/9;
}

    .apiVideoBlock iframe {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        display: none;
    }

.apiVideoBlockLink {
    background-color: transparent;
    border: 0;
    border-radius: none;
    -webkit-appearance: none;
    appearance: none;
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    padding: 0;
    border: none;
}

    .apiVideoBlockLink::after {
        position: absolute;
        width: 20%;
        height: 30%;
        background-color: #05112b;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        transform-origin: 0 50%;
        content: "";
        z-index: 1;
        display: block;
        border-radius: 12.75%/15%;
        border: 0.1875rem solid transparent;
        transition: 0.2s ease-out transform, 0.2s ease-out border-color, 0.2s ease-out background-color;
        box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.4);
    }

    .apiVideoBlockLink:hover::after {
        transform: scale(1.1, 1) translate(-50%, -50%);
        border-color: #b1e6fd;
    }

    .apiVideoBlockLink:focus-visible::after {
        transform: scale(1.1, 1) translate(-50%, -50%);
        border-color: #b1e6fd;
    }

    .apiVideoBlockLink img {
        position: absolute;
        inset: 0;
        width: 100%;
        display: block;
        object-fit: cover;
        aspect-ratio: 16/9;
    }

    .apiVideoBlockLink svg {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        z-index: 2;
        fill: #ffffff;
        width: 20%;
    }

.videoPlaying.apiVideoBlock .apiVideoBlockLink, .videoPaused.apiVideoBlock .apiVideoBlockLink, .videoEnded.apiVideoBlock .apiVideoBlockLink, .videoBuffering.apiVideoBlock .apiVideoBlockLink, .videoCued.apiVideoBlock .apiVideoBlockLink {
    visibility: hidden;
}

.videoPlaying.apiVideoBlock iframe, .videoPaused.apiVideoBlock iframe, .videoEnded.apiVideoBlock iframe, .videoBuffering.apiVideoBlock iframe, .videoCued.apiVideoBlock iframe {
    display: block;
}

.videoReady.apiVideoBlock iframe {
    display: none;
}

.videoReady.apiVideoBlock .apiVideoBlockLink {
    display: block;
    cursor: pointer;
}

.hero.blueLight .apiVideoBlockLink:hover::after {
    background-color: #2571cc;
    border-color: #b1e6fd;
}

.hero.blueLight .apiVideoBlockLink:focus-visible::after {
    background-color: #2571cc;
    border-color: #b1e6fd;
}

.hero.blueLight .apiVideoBlockLink::after {
    background-color: #2571cc;
}

.hero.blueDark .apiVideoBlockLink:hover::after {
    background-color: #05112b;
    border-color: #b1e6fd;
}

.hero.blueDark .apiVideoBlockLink:focus-visible::after {
    background-color: #05112b;
    border-color: #b1e6fd;
}

.hero.blueDark .apiVideoBlockLink::after {
    background-color: #05112b;
}

.hero.orange .apiVideoBlockLink:hover::after {
    background-color: #bf330a;
    border-color: #ffe0cb;
}

.hero.orange .apiVideoBlockLink:focus-visible::after {
    background-color: #bf330a;
    border-color: #ffe0cb;
}

.hero.orange .apiVideoBlockLink::after {
    background-color: #bf330a;
}

.hero.green .apiVideoBlockLink:hover::after {
    background-color: #44b426;
    border-color: #daf8df;
}

.hero.green .apiVideoBlockLink:focus-visible::after {
    background-color: #44b426;
    border-color: #daf8df;
}

.hero.green .apiVideoBlockLink::after {
    background-color: #44b426;
}

.tabs .accordion, .accordions .accordionContentWrap .accordion, .accordion {
    position: relative;
    width: 100%;
    height: auto;
    border: 0.1875rem solid transparent;
    box-sizing: border-box;
}

.accordions .accordionContentWrap [open].accordion, [open].accordion {
    border-color: #444d60;
}

    [open].accordion > .accordionSummary:hover {
        border-color: transparent;
    }

    [open].accordion > .accordionSummary:focus-visible {
        border-color: transparent;
    }

    [open].accordion > .accordionSummary .accordionSummaryIcon.open {
        display: none;
    }

    [open].accordion > .accordionSummary .accordionSummaryIcon.close {
        display: block;
    }

.tabs .accordionSummary, .accordions .accordionContentWrap .accordionSummary, .accordionSummary {
    transition: ease-out 0.2s border-color;
    position: relative;
    width: 100%;
    height: auto;
    background-color: #f4f4f5;
    border: 0.1875rem solid transparent;
    box-sizing: border-box;
    text-decoration: none;
}

    .accordions .accordionContentWrap .accordionSummary:hover, .accordionSummary:hover {
        text-decoration: underline;
        text-decoration-thickness: 0.0625rem;
        text-underline-offset: 0.1875rem;
        border-color: #444d60;
    }

    .accordions .accordionContentWrap .accordionSummary:focus-visible, .accordionSummary:focus-visible {
        text-decoration: underline;
        text-decoration-thickness: 0.0625rem;
        text-underline-offset: 0.1875rem;
        border-color: #444d60;
    }

.tabs .accordionSummaryWrap, .accordions .accordionContentWrap .accordionSummaryWrap, .accordionSummaryWrap {
    position: relative;
    padding: 0.75rem 1rem;
    box-sizing: border-box;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
}

.tabs .accordionSummaryIcon, .accordions .accordionContentWrap .accordionSummaryIcon, .accordionSummaryIcon {
    position: relative;
    flex: 0 0 2.5rem;
    width: 2.5rem;
    height: 2.5rem;
}

.accordions .accordionContentWrap .open.accordionSummaryIcon, .open.accordionSummaryIcon {
    display: block;
}

.accordions .accordionContentWrap .close.accordionSummaryIcon, .close.accordionSummaryIcon {
    display: none;
}

.tabs .accordionSummaryIcon svg, .accordions .accordionContentWrap .accordionSummaryIcon svg, .accordionSummaryIcon svg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.tabs .accordionSummaryIcon use, .accordions .accordionContentWrap .accordionSummaryIcon use, .accordionSummaryIcon use {
    fill: #05112b;
}

.tabs .accordionSummaryText, .accordions .accordionContentWrap .accordionSummaryText, .accordionSummaryText {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    flex: 1 1 auto;
    font-size: 1.625rem;
    line-height: 1.54;
    color: #05112b;
}

.tabs .accordionContent, .accordions .accordionContentWrap .accordionContent, .accordionContent {
    transition: ease-out 0.5s height;
}

    .accordions .accordionContentWrap .accordionContent .section, .accordionContent .section {
        padding: 0 var(--gutter-left);
    }

summary::-webkit-details-marker, summary::marker {
    display: none;
}

.accordion[open]:not(.active) .accordionContent {
    height: auto;
}

.accordionSummary {
    pointer-events: all;
    cursor: pointer;
    display: block;
}

.accordionSummaryWrap {
    pointer-events: none;
}

.accordionSummaryText {
    pointer-events: none;
}

.accordionSummaryIcon {
    pointer-events: none;
}

.accordionContent {
    height: 0;
    overflow: hidden;
    padding: 0;
}

.accordionGroup {
    position: relative;
    width: 100%;
    height: auto;
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    align-content: flex-start;
    justify-content: flex-start;
}

    .accordionGroup.blueLight .accordionSummary {
        background-color: #d8f2fe;
    }

.accordions {
    gap: 1rem;
    max-width: 52.1875rem;
    margin-left: auto;
    margin-right: auto;
}

.accordionsTitle {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    color: #05112b;
    font-size: 2rem;
    line-height: 1.5;
}

.accordions .accordionContentWrap {
    padding: 1.25rem 1rem 2rem 1.5rem;
}

    .accordions .accordionContentWrap .accordion {
        width: auto;
        margin-left: -1.5rem;
        margin-right: -1rem;
    }

        .accordions .accordionContentWrap .accordion:first-child {
            margin-top: -1.25rem;
        }

        .accordions .accordionContentWrap .accordion:last-child {
            margin-bottom: -2rem;
        }

    .accordions .accordionContentWrap .accordion {
        border: 0;
        border-top: 0.125rem solid #c1c3ca;
    }

        .accordions .accordionContentWrap .accordion:nth-of-type(1) {
            border-top: 0;
        }

    .accordions .accordionContentWrap [open].accordion {
        border-color: #c1c3ca;
    }

    .accordions .accordionContentWrap [open].closing.accordion > .accordionSummary .accordionSummaryIcon {
        transform: rotate(0deg);
    }

    .accordions .accordionContentWrap [open].accordion > .accordionSummary .accordionSummaryIcon {
        transform: rotate(180deg);
    }

    .accordions .accordionContentWrap .accordionSummary {
        background-color: #ffffff;
        width: calc(100% - 0.75rem);
        margin: 0.375rem;
        border: 0;
    }

        .accordions .accordionContentWrap .accordionSummary:hover {
            border-color: transparent;
        }

        .accordions .accordionContentWrap .accordionSummary:focus-visible {
            border-color: transparent;
        }

    .accordions .accordionContentWrap .accordionSummaryText {
        font-size: 1.25rem;
        line-height: 1.6;
    }

    .accordions .accordionContentWrap .accordionSummaryWrap {
        padding: 0.75rem 1rem 0.75rem 1.5rem;
    }

    .accordions .accordionContentWrap .accordionSummaryIcon {
        margin-top: -0.25rem;
        margin-bottom: -0.25rem;
        transition: ease-out 0.5s transform;
    }

    .accordions .accordionContentWrap .accordionContentWrap {
        padding: 0.625rem 1rem 2rem 1.5rem;
    }

.accordions .textBlock {
    max-width: none;
    width: auto;
}

.tabs {
    gap: 0.75rem;
}

    .tabs .accordionsTab.accordion {
        border: 0.1875rem solid #2571cc;
    }

        .tabs .accordionsTab.accordion .accordions .accordion[open] .accordionSummary .accordionSummaryIcon.close {
            display: block;
        }

    .tabs .accordionsTab[open].accordion .close.accordionSummaryIcon {
        display: none;
    }

    .tabs .accordionsTab[open].accordion > .accordionSummary {
        background-color: #2571cc;
        pointer-events: none;
    }

    .tabs .accordionsTab[open].active.accordion:not(.animating) > .accordionContent {
        height: auto;
    }

    .tabs .accordionsTab.accordion:not(.active)[open] {
        min-height: 50vh;
    }

        .tabs .accordionsTab.accordion:not(.active)[open] > .accordionContent {
            display: block;
            bottom: 0;
            top: 3.9375rem;
            overflow: auto;
        }

    .tabs .accordionsTab.accordion > .accordionSummary {
        transition: ease-out 0.2s background-color;
        background-color: #2571cc;
        border: 0;
    }

        .tabs .accordionsTab.accordion > .accordionSummary:hover {
            background-color: #d8f2fe;
        }

            .tabs .accordionsTab.accordion > .accordionSummary:hover .accordionSummaryText {
                color: #05112b;
            }

            .tabs .accordionsTab.accordion > .accordionSummary:hover .accordionSummaryIcon use {
                fill: #05112b;
            }

        .tabs .accordionsTab.accordion > .accordionSummary:focus-visible {
            background-color: #d8f2fe;
        }

            .tabs .accordionsTab.accordion > .accordionSummary:focus-visible .accordionSummaryText {
                color: #05112b;
            }

            .tabs .accordionsTab.accordion > .accordionSummary:focus-visible .accordionSummaryIcon use {
                fill: #05112b;
            }

        .tabs .accordionsTab.accordion > .accordionSummary .accordionSummaryIcon use {
            transition: ease-out 0.2s fill;
            fill: #ffffff;
        }

        .tabs .accordionsTab.accordion > .accordionSummary .accordionSummaryText {
            transition: ease-out 0.2s color;
            font-size: 1.75rem;
            line-height: 1.42;
            color: #ffffff;
        }

    .tabs .accordionsTab.accordion > .accordionContent > .accordionContentWrap {
        padding-top: 0.75rem;
    }

.link {
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
    color: var(--accentColor, #05112b);
    text-decoration: none;
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
}

    .link.link--box {
        transition: 0.2s ease-out box-shadow;
    }

        .link.link--box:focus-visible {
            box-shadow: inset 0 0 0 0.1875rem #05112b, 0 0 0 0.375rem #ff9d3c;
            outline: 0;
            z-index: 999;
        }

        .link.link--box:focus-visible {
            z-index: 1;
            outline: 0;
            z-index: 999;
        }

    .link:not(.link--box):focus-visible {
        box-shadow: none;
        outline: 0;
        z-index: 999;
    }

    .link:not(.link--overlay):not(.link--box) {
        transition: 0.2s ease-out background-size, 0.2s ease-out color;
        background: linear-gradient(to right, #05112b, #05112b), linear-gradient(to right, #ff9d3c, #ff9d3c);
        background-size: 100% 0, 100% 0;
        background-position: bottom, bottom;
        background-repeat: no-repeat;
    }

        .link:not(.link--overlay):not(.link--box):focus-visible {
            text-decoration: none;
            color: #05112b;
            background-size: 100% 0.1875rem, 100% 100%;
            outline: 0;
            z-index: 999;
            box-shadow: none !important;
            text-decoration: none !important;
        }

        .link:not(.link--overlay):not(.link--box):focus-visible {
            box-shadow: none;
            outline: 0;
            z-index: 999;
        }

    .link:hover {
        text-decoration: underline;
        text-decoration-thickness: 0.0625rem;
        text-underline-offset: 0.1875rem;
    }

.link--overlay::before {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
}

.link--overlay::before {
    transition: 0.2s ease-out box-shadow;
}

.link--overlay:focus-visible {
    outline: 0;
    z-index: 999;
}

    .link--overlay:focus-visible::before {
        box-shadow: inset 0 0 0 0.1875rem #05112b, 0 0 0 0.375rem #ff9d3c;
        z-index: 2;
    }

.link--overlay.btn:focus-visible {
    box-shadow: none;
    outline: 0;
    z-index: 999;
}

.link--overlay:focus-visible {
    text-decoration: underline;
    text-decoration-thickness: 0.0625rem;
    text-underline-offset: 0.1875rem;
    outline: 0;
    z-index: 999;
}

.link--withArrow {
    align-items: flex-start;
}

.link--fullWidth {
    width: 100%;
    justify-content: space-between;
    box-sizing: border-box;
}

.link__arrow {
    width: 1.55em;
    height: 1.55em;
    fill: currentColor;
    transform: rotate(-90deg);
    flex-shrink: 0;
    transition: 0.2s ease-out transform;
}

.link:hover .link__arrow {
    transform: translateX(0.4em) rotate(-90deg);
}

.link--fullWidth:hover .link__arrow {
    transform: rotate(-90deg);
}

.link--large {
    font-size: 1.625rem;
    color: #05112b;
}

.blueDark .link--large {
    color: #b1e6fd;
}

.ctaGroup {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-top: 1.5rem;
}

.ctaGroup__list {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.5rem;
}

.ctaGroup__phone {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
}

.ctaGroup__phone__text {
    font-size: 1.25rem;
}

.ctaGroup__phone__tel {
    font-size: 1.625rem;
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
}

    .ctaGroup__phone__tel a {
        color: inherit;
    }

        .ctaGroup__phone__tel a:hover {
            color: inherit;
            text-decoration: none;
        }

.ctaGroup__smallText {
    font-size: 1.25rem;
}

.card {
    position: relative;
    background-color: var(--backgroundColor, #ffffff);
    color: var(--textColor, #05112b);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1rem;
    border-radius: 0.1875rem;
    box-sizing: border-box;
    width: 100%;
}

    .card::before {
        content: "";
        display: block;
        position: absolute;
        inset: 0;
        pointer-events: none;
        z-index: 1;
        border-radius: 0.1875rem;
        transition: 0.2s ease-out;
    }

    .card:hover::before, .card:focus-within::before {
        border: 0.1875rem solid var(--accentColor, #2571cc);
        box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.2);
    }

.card__header__img {
    margin-top: -1rem;
    margin-inline: -1rem;
    width: calc(100% + 2 * 1rem);
    max-width: calc(100% + 2 * 1rem);
    border-radius: 0.1875rem 0.1875rem 0 0;
    aspect-ratio: 5/2;
    object-fit: cover;
}

.card .link--overlay::before {
    border-radius: 0.1875rem;
}

.card--rounded, .card--rounded::before, .card--rounded .link--overlay::before {
    border-radius: 0.1875rem 1.875rem 0.1875rem 0.1875rem;
}

    .card--rounded .card__header__img {
        border-radius: 0.1875rem 1.875rem 0.1875rem 0.1875rem;
    }

.card__header {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-top: -1rem;
    padding-top: 1rem;
    margin-inline: -1rem;
    padding-inline: 1rem;
    gap: 1rem;
    width: 100%;
    box-sizing: content-box;
}

    .card__header:last-child {
        margin-bottom: -1rem;
        padding-bottom: 1rem;
    }

        .card__header:last-child .card__secondaryLink {
            margin-top: auto;
        }

.card--generic .card__header {
    margin-bottom: -0.5rem;
    padding-bottom: 0.5rem;
    flex-grow: 1;
}

.card .h-s {
    margin-bottom: -0.5rem;
}

.card p {
    font-size: 1.125rem;
}

.card__list {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.card__secondaryLink {
    font-size: 1.25rem;
    color: var(--textColor, #05112b);
    margin-top: auto;
}

.card__primaryLink {
    margin-top: 1rem;
}

.card--category {
    justify-content: start;
}

    .card--category .card__header {
        padding-bottom: 1rem;
        transition: 0.2s ease-out background-color;
    }

        .card--category .card__header:hover, .card--category .card__header:focus-within {
            background-color: var(--secondaryColor, #b1e6fd);
        }

    .card--category .card__list {
        margin-inline: -1rem;
        width: calc(100% + 2 * 1rem);
        margin-bottom: 1rem;
    }

        .card--category .card__list:last-child {
            margin-bottom: -1rem;
        }

        .card--category .card__list:focus-within {
            z-index: 1;
        }

        .card--category .card__list .link {
            display: flex;
            justify-content: space-between;
            padding: 0.5rem 1rem;
            color: var(--textColor, #05112b);
            text-decoration: none;
            transition: 0.2s ease-out background-color;
        }

            .card--category .card__list .link svg {
                color: var(--accentColor, #2571cc);
            }

            .card--category .card__list .link:hover, .card--category .card__list .link:focus-within {
                background-color: var(--secondaryColor, #b1e6fd);
            }

    .card--category .card__primaryLink {
        margin-top: auto;
    }

.card--cta .card__header {
    flex-grow: 1;
}

.card--cta .link {
    color: var(--textColor);
    width: 100%;
    justify-content: space-between;
}

.card--article {
    width: 100%;
}

    .card--article .card__header__img {
        aspect-ratio: 5/3;
    }

    .card--article .card__header {
        flex-grow: 1;
    }

    .card--article .card__title {
        font-size: 1.25rem;
    }

    .card--article .link {
        color: var(--textColor, #05112b);
    }

    .card--article .link__arrow {
        color: var(--accentColorl, #bf330a);
    }

    .card--article .card__readingTime {
        color: var(--accentColorl, #bf330a);
        font-family: F37GingerPro, sans-serif;
        font-weight: 500;
        margin-top: auto;
    }

.cardGrid__header {
    margin-bottom: 1rem;
    max-width: 59.375rem;
}

.cardGrid .wysiwyg:not(.dialogContent) {
    margin-bottom: 2rem;
    max-width: 59.375rem;
}

.cardGrid__wrapper {
    padding: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.cardGrid--article .cardGrid__wrapper, .cardGrid--articleListing .cardGrid__wrapper {
    justify-content: flex-start;
}

.cardGrid__footer {
    margin-top: 1rem;
}

    .cardGrid__footer a {
        color: var(--textColor, #05112b);
    }

.review {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 2.5rem 0;
}

.reviewHeadLine {
    color: #08281b;
    font-size: 2rem;
    width: 100%;
    margin-bottom: 1.25rem;
}

.review .wysiwyg:not(.dialogContent) {
    font-family: F37GingerPro, sans-serif;
    font-weight: 200;
    width: 100%;
    font-size: 1.25rem;
    color: #05112b;
    margin-bottom: 2.75rem;
}

.review.canvas::before {
    background-color: #daf8df;
}

.review.canvas .reviewArticle {
    border-left: 0.125rem solid #44b426;
    padding: 0 0 0 1rem;
}

.review svg.full use {
    fill: #ff8002;
}

.review svg.empty use {
    fill: transparent;
    stroke: #ff8002;
}

.reviewList {
    padding: 0;
    list-style: none;
    justify-content: space-between;
}

.reviewTopLevel {
    width: 100%;
    flex-basis: calc(33% - 3.5rem);
}

.reviewQuoteBlockBody {
    font-style: italic;
    color: #05112b;
    font-size: 1.25rem;
    text-align: left;
    font-weight: 200;
    margin-bottom: 0;
}

.reviewArticle {
    margin-bottom: 2.5rem;
    text-align: left;
}

.reviewListStars {
    list-style: none;
    display: flex;
    padding: 0;
    margin-bottom: 1.5625rem;
}

    .reviewListStars svg {
        width: 1.375rem;
        height: 1.3125rem;
    }

.reviewSubLevel {
    margin-bottom: 0;
    max-width: 1.5625rem;
}

.reviewFooter {
    width: 100%;
    justify-content: center;
    text-align: center;
    margin-top: 2.5rem;
}

    .reviewFooter img {
        width: 8rem;
        height: auto;
        display: block;
        align-self: center;
        margin: 0 auto;
        margin-bottom: 2.625rem;
    }

.reviewQuoteFooter {
    margin-top: 1rem;
    font-weight: 500;
    font-style: normal;
    font-size: 1rem;
}

.reviewDate {
    margin-top: 0.25rem;
    display: block;
    font-weight: 300;
}

.callouts {
    width: 100%;
}

.calloutsHeadLine {
    padding: 0;
    max-width: 59.375rem;
    margin-bottom: 1rem;
}

.callouts .wysiwyg:not(.dialogContent) {
    padding: 0;
    max-width: 59.375rem;
    margin-bottom: 1rem;
}

.callouts svg {
    width: 5rem;
    height: 5rem;
    margin-bottom: 0.75rem;
}

.callouts .calloutList {
    display: flex;
    padding: 0;
    list-style: none;
    gap: 1rem;
    flex-direction: column;
}

.callouts .calloutListItem {
    box-sizing: border-box;
    background-color: var(--backgroundColor, #ffffff);
    color: var(--textColor, #05112b);
    padding: 1rem 0;
}

.callouts .calloutListItemHeadLine {
    margin-bottom: 0.5rem;
}

.callouts .calloutListItemBodyText {
    font-size: 1.375rem;
}

.callouts .calloutList.blueDark .calloutListItem, .callouts .calloutList.blueLight .calloutListItem {
    box-sizing: border-box;
    padding: 1rem;
}

.articleListing__links {
    display: flex;
    justify-content: center;
    flex-direction: column;
}

.articleListing__link {
    position: relative;
    font-size: 1.25rem;
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    transition: 0.2s ease-out background-size, 0.2s ease-out color;
    background: linear-gradient(to right, #05112b, #05112b), linear-gradient(to right, #ff9d3c, #ff9d3c);
    background-size: 100% 0, 100% 0;
    background-position: bottom, bottom;
    background-repeat: no-repeat;
    color: #05112b;
    text-decoration: none;
    padding-block: 0.75rem;
    border-top: 0.0625rem solid #efccc1;
}

    .articleListing__link:focus-visible {
        text-decoration: none;
        color: #05112b;
        background-size: 100% 0.1875rem, 100% 100%;
        outline: 0;
        z-index: 999;
        box-shadow: none !important;
        text-decoration: none !important;
    }

    .articleListing__link:first-child {
        border: none;
    }

        .articleListing__link:first-child::before {
            display: none;
        }

    .articleListing__link:hover, .articleListing__link[aria-current=page] {
        color: #bf330a;
    }

    .articleListing__link:hover {
        text-decoration: underline;
        text-decoration-thickness: 0.0625rem;
        text-underline-offset: 0.1875rem;
    }

.articleListing__heading {
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.productLists {
    width: 100%;
}

.productListsHeadLine {
    max-width: 59.375rem;
    margin-bottom: 1rem;
}

.productLists .wysiwyg:not(.dialogContent) {
    max-width: 59.375rem;
    margin-bottom: 1rem;
}

.productListsItems {
    display: block;
    flex-wrap: nowrap;
    padding: 0;
    list-style: none;
    justify-content: space-between;
}

.productListsLinks {
    list-style: none;
    padding: 0;
    margin: 0;
}

.productListsLinkContainer {
    margin: 0 0 0.5rem 0;
}

    .productListsLinkContainer .link {
        text-decoration: underline;
        text-decoration-thickness: 0;
    }

        .productListsLinkContainer .link:hover {
            text-decoration: none;
        }

.productListsItem {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: 100%;
    flex: 1;
    background-color: #D8F2FE;
    margin: 0 0 1rem 0;
    padding: 1rem;
    box-sizing: border-box;
    border-radius: 0.1875rem 1.875rem 0.1875rem 0.1875rem;
}

    .productListsItem:last-child {
        margin: 0;
    }

    .productListsItem .productListPrimaryLink {
        margin-top: auto;
        display: block;
        width: -webkit-max-content;
        width: max-content;
    }

    .productListsItem .link {
        color: #05112b;
    }

.breadcrumbs {
    display: none;
}

.breadcrumbsLinkText {
    display: none;
}

.breadcrumbsLinkTextPrevious {
    display: block;
}

.downloadDocs {
    position: relative;
    display: flex;
    flex-flow: column;
    width: 100%;
    color: #05112b;
}

.downloadDocsHeadline {
    position: relative;
}

.downloadDocsGroup {
    position: relative;
}

.downloadDocsGroupTitle {
    position: relative;
    margin: 0 0 1rem;
}

.downloadDocsGroupList {
    position: relative;
    width: 100%;
    list-style: none;
    margin: 1rem -2.5rem 0;
}

.downloadDocsGroupListItem {
    position: relative;
    margin: 0 0 0.75rem;
    background: #F4F4F5;
    padding: 0.75rem 0 0 0.75rem;
    border: 0.1875rem solid #F4F4F5;
    border-radius: 0.1875rem;
    font-weight: 300;
    max-width: 38.25rem;
}

    .downloadDocsGroupListItem:hover {
        border: 0.1875rem solid #444d60;
    }

    .downloadDocsGroupListItem:focus-visible {
        border: 0.1875rem solid #444d60;
    }

    .downloadDocsGroupListItem a {
        background: none;
        display: flex;
        justify-content: space-between;
        font-weight: 500;
    }

        .downloadDocsGroupListItem a:hover {
            text-decoration: underline;
            color: #05112b;
        }

        .downloadDocsGroupListItem a:focus-visible {
            text-decoration: underline;
            color: #05112b;
        }

        .downloadDocsGroupListItem a::after {
            position: absolute;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            content: "";
            display: block;
        }

        .downloadDocsGroupListItem a:focus-visible::after {
            box-shadow: inset 0 0 0 0.1875rem #05112b, 0 0 0 0.375rem #ff9d3c;
            border-radius: 0.1875rem;
        }

        .downloadDocsGroupListItem a:focus-visible span {
            text-decoration: underline;
        }

        .downloadDocsGroupListItem a svg {
            width: 4.375rem;
        }

.downloadDocsGroupListItemDescription {
    font-weight: 200;
    margin: 0.5rem 0 0;
}

.downloadDocsGroupListItemDescriptionFile {
    display: flex;
    font-size: 1.125rem;
    text-transform: uppercase;
    margin: 0.5rem 0 0.75rem;
}

    .downloadDocsGroupListItemDescriptionFile .size {
        margin: 0 1rem 0 0;
    }

.downloadDocs .wysiwyg {
    grid-column: 1/3;
    max-width: 59.375rem;
    margin: 0 0 1.5rem;
}

.partnerslogo {
    position: relative;
    color: #05112b;
}

.partnerslogoContext {
    flex: 1;
}

.partnerslogo .wysiwyg:not(.dialogContent) {
    max-width: 26.25rem;
}

.partnerslogoImages {
    position: relative;
    margin: 2rem auto 4rem;
}

.partnerslogoImagesList {
    position: relative;
    width: 100%;
    height: auto;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    list-style: none;
    padding: 0;
    gap: 0.5rem;
}

.partnerslogoImagesListItems {
    position: relative;
    flex: 0 1 calc(33% - 0.3125rem);
    width: calc(33% - 0.3125rem);
    background: #ffffff;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.2);
    border-radius: 0.1875rem;
    padding: 0.25rem;
    box-sizing: border-box;
}

    .partnerslogoImagesListItems img {
        width: 100%;
    }

.partnerslogo.reverse .partnerslogoContext {
    margin: 0;
}

.textAndMediaBlock {
    position: relative;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    padding: 2rem 0;
    gap: 1rem;
    color: var(--textColor, #05112b);
}

.textAndMediaBlock__heading {
    margin-bottom: 1rem;
}

.textAndMediaBlock__content {
    flex: 1;
    font-size: 1.25rem;
}

.textAndMediaBlock__icon {
    align-self: flex-start;
    width: 4.75rem;
    height: 4.75rem;
}

.textAndMediaBlock--withImage {
    margin-top: 33%;
    padding-top: 0;
}

.textAndMediaBlock--withLogo .textAndMediaBlock__image img.mediaImage {
    display: none;
}

.textAndMediaBlock--withLogo .textAndMediaBlock__image img.mediaLogo {
    padding: 0.5rem;
    background-color: #ffffff;
    border-radius: 0.1875rem;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.2);
}

.textAndMediaBlock__image {
    margin-top: -33%;
}

    .textAndMediaBlock__image img {
        width: 100%;
        aspect-ratio: 3/2;
        object-fit: cover;
        box-sizing: border-box;
        border-radius: 0.1875rem;
    }

        .textAndMediaBlock__image img.mediaLogo {
            object-fit: contain;
        }

.ctaBlockB {
    text-align: center;
    padding-block: 2.5rem;
    color: var(--textColor, #05112b);
}

    .ctaBlockB .ctaGroup__list {
        justify-content: center;
        align-self: center;
    }

.ctaBlockB__header {
    margin-bottom: 1rem;
    flex-grow: 1;
}

.ctaBlockB__wrapper {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.ctaBlockB__item {
    display: flex;
    flex: 1 1 33%;
    flex-direction: column;
    align-items: center;
}

.ctaBlockB__item__icon {
    width: 7.625rem;
    height: 7.625rem;
    fill: currentColor;
}

.ctaBlockB__item__text {
    font-size: 1.375rem;
}

.articleMedia {
    position: relative;
    width: 100%;
    height: auto;
    display: block;
    max-width: 45.25rem;
    margin-left: auto;
    margin-right: auto;
}

    .articleMedia figcaption {
        margin-top: 1rem;
        font-family: F37GingerPro, sans-serif;
        font-weight: 500;
        font-size: 1.25rem;
    }

    .articleMedia img {
        width: 100%;
    }

.textAndCallout {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

    .textAndCallout.blueDark {
        --backgroundColor: transparent;
        --textColor: #05112b;
    }

        .textAndCallout.blueDark .wysiwyg:not(.dialogContent),
        .textAndCallout.blueDark .mce-content-body:not(.dialogContent) {
            color: var(--textColor);
        }

            .textAndCallout.blueDark .wysiwyg:not(.dialogContent) a:not([class]),
            .textAndCallout.blueDark .mce-content-body:not(.dialogContent) a:not([class]) {
                color: var(--textColor);
            }

                .textAndCallout.blueDark .wysiwyg:not(.dialogContent) a:not([class]):not(:focus-visible),
                .textAndCallout.blueDark .mce-content-body:not(.dialogContent) a:not([class]):not(:focus-visible) {
                    color: #b1e6fd;
                }

                .textAndCallout.blueDark .wysiwyg:not(.dialogContent) a:not([class]):focus-visible,
                .textAndCallout.blueDark .mce-content-body:not(.dialogContent) a:not([class]):focus-visible {
                    color: #05112b;
                }

.textAndCallout__header {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 59.375rem;
}

.textAndCallout__wrapper {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.textAndCallout__callout {
    justify-content: flex-start;
    gap: 0.5rem;
}

    .textAndCallout__callout::before {
        display: none;
    }

.textAndCallout__callout__images {
    display: flex;
    gap: 1rem;
    margin-top: 0.5rem;
}

    .textAndCallout__callout__images img {
        width: 7.5rem;
        height: 7.5rem;
        object-fit: cover;
        border-radius: 0.1875rem;
    }

.extrasGrid {
    width: 100%;
    border-radius: 0.1875rem;
}

.extrasGridHeadLine {
    padding: 0;
    margin-bottom: 1rem;
}

.extrasGrid .wysiwyg:not(.dialogContent) {
    padding: 0;
    line-height: 1.6;
    margin-bottom: 1rem;
}

.extrasGridList {
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.extrasGridListItem {
    display: block;
    background-color: #b1e6fd;
    padding: 1rem;
    width: 100%;
    flex-grow: 1;
    justify-content: space-between;
    border-radius: 0.1875rem;
    box-sizing: border-box;
}

.extrasGridBtnContainer {
    display: flex;
    justify-content: center;
    padding: 1rem 0 0 0;
}

.extrasGridBtn {
    display: flex;
    flex-flow: row;
    box-sizing: border-box;
    align-items: center;
    align-content: center;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    border: 0.1875rem solid #c1c3ca;
    border-radius: 2rem;
    padding: 0.0625rem 0.625rem 0.1875rem 1.25rem;
    text-decoration: none;
}

.extrasGridBtnLess {
    display: none;
}

.extrasGridBtnMore {
    display: block;
}

.extrasGridBtn .text {
    color: #05112b;
    font-size: 1.375rem;
    font-weight: 500;
    flex: 0 1 auto;
}

.extrasGridBtn .icon {
    flex: 0 0 1.875rem;
    width: 1.875rem;
    height: 2.5rem;
    padding: 0.3125rem 0 0;
}

    .extrasGridBtn .icon use {
        fill: #05112b;
    }

.extrasGrid:not(.hasMore) .extrasGridBtnContainer {
    display: none;
}

.extrasGrid.hasMore .extrasGridListItem:nth-child(1n+4) {
    display: none;
}

.extrasGrid.hasMore .extrasGridBtnContainer {
    display: flex;
}

.extrasGrid.expanderActive.expanded .extrasGridListItem:nth-child(1n+4) {
    display: block;
}

.extrasGrid.expanderActive.expanded .extrasGridBtn .icon {
    transform: rotate(180deg);
    padding: 0;
    padding: 0 0 0.3125rem;
}

.extrasGrid.expanderActive.expanded .extrasGridBtnMore {
    display: none;
}

.extrasGrid.expanderActive.expanded .extrasGridBtnLess {
    display: block;
}

.stickyCTA {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    width: 100%;
    display: block;
    height: 0.0625rem;
    overflow: visible;
    left: 0;
    right: 0;
    margin: 0;
    max-width: none;
    z-index: 1000;
}

.stickyCTA__wrapper {
    transform: translate3d(0, -5rem, 0);
    opacity: 0;
}

.icon {
    fill: var(--textColor, #05112b);
}

.icon--accent {
    fill: var(--accentColor, #2571cc);
}

.icon--green {
    fill: #44b426;
}

.promotionblock {
    position: relative;
    display: flex;
    flex-flow: column;
    padding-top: 1.5rem;
}

.article .promotionblock {
    max-width: 45.25rem;
    margin-left: auto;
    margin-right: auto;
}

.promotionblock:not([class*=layout]) {
    border-top-right-radius: 3.125rem;
    padding: 0;
}

    .promotionblock:not([class*=layout]) .promotionblockContext {
        position: relative;
        align-self: auto;
        margin: 1.25rem 0.75rem;
    }

.promotionblock.blueLight {
    background-color: #d8f2fe;
}

.promotionblock.green {
    background-color: #daf8df;
}

.promotionblock.layoutEdge {
    position: relative;
    padding: 0;
    border-top-right-radius: 3.125rem;
    overflow: hidden;
}

    .promotionblock.layoutEdge .promotionblockImageEdge {
        position: relative;
        object-fit: cover;
        aspect-ratio: 16/9;
        width: 100%;
    }

    .promotionblock.layoutEdge .promotionblockContext {
        margin: 1.25rem 0.75rem;
    }

.promotionblock.layoutLogo {
    position: relative;
}

    .promotionblock.layoutLogo .promotionblockImageLogo {
        position: relative;
        align-self: center;
        padding: 0.5rem;
        background-color: #ffffff;
        box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.2);
        border-radius: 0.1875rem;
    }

    .promotionblock.layoutLogo .promotionblockContext {
        margin: 1.5rem 1rem;
    }

    .promotionblock.layoutLogo.reverse .promotionblockContext {
        margin: 1.5rem 1rem;
    }

.promotionblockContext {
    position: relative;
    display: flex;
    flex-flow: column;
    align-self: flex-start;
}

.promotionblock .ctaGroup {
    margin: 1.5rem 0 0;
}

.promotionblock .link--large {
    color: #05112b;
}

.footer {
    position: relative;
    width: 100%;
    height: auto;
    background-color: #05112b;
    padding: 2.5rem var(--gutter-left) 0;
    box-sizing: border-box;
    color: #ffffff;
    display: block;
    overflow: hidden;
}

    .footer a, .footer .wysiwyg {
        color: #ffffff;
    }

        .footer .wysiwyg a:hover {
            text-decoration: none;
        }

            .footer .wysiwyg a:hover:not(:focus-visible) {
                color: #ffffff;
            }

        .footer .wysiwyg a:focus-visible {
            text-decoration: none;
        }

            .footer .wysiwyg a:focus-visible:not(:focus-visible) {
                color: #ffffff;
            }

.footerWrap {
    position: relative;
    width: 100%;
    height: auto;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    gap: 2rem;
    margin: 0 auto;
    max-width: 80rem;
}

.footerWrapLists {
    position: relative;
    width: 100%;
    height: auto;
    display: flex;
    flex-flow: column;
    gap: 2rem;
}

    .footerWrapLists > .footerList, .footerWrapLists > .footerContact {
        flex: 1 1 auto;
    }

.footerTitle {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 1.6;
    margin: 0 auto 0.75rem 0;
}

    .footerTitle a {
        text-decoration: none;
    }

        .footerTitle a:hover {
            text-decoration: underline;
            text-decoration-thickness: 0.0625rem;
            text-underline-offset: 0.1875rem;
        }

            .footerTitle a:hover:not(:focus-visible) {
                color: #ffffff;
            }

        .footerTitle a:focus-visible {
            text-decoration: underline;
            text-decoration-thickness: 0.0625rem;
            text-underline-offset: 0.1875rem;
        }

            .footerTitle a:focus-visible:not(:focus-visible) {
                color: #ffffff;
            }

.footerList {
    position: relative;
    width: 100%;
    height: auto;
    display: block;
    margin: 0;
    padding: 0;
}

.footerListLinks {
    position: relative;
    width: 100%;
    height: auto;
    display: flex;
    flex-flow: column;
    gap: 0.75rem;
    padding: 0;
    margin: 0;
    list-style: none;
}

.footerListLinksItem {
    font-family: F37GingerPro, sans-serif;
    font-weight: 300;
    position: relative;
    width: 100%;
    height: auto;
    font-size: 1rem;
}

    .footerListLinksItem a {
        text-decoration: none;
    }

        .footerListLinksItem a:hover {
            text-decoration: underline;
            text-decoration-thickness: 0.0625rem;
            text-underline-offset: 0.1875rem;
        }

            .footerListLinksItem a:hover:not(:focus-visible) {
                color: #ffffff;
            }

        .footerListLinksItem a:focus-visible {
            text-decoration: underline;
            text-decoration-thickness: 0.0625rem;
            text-underline-offset: 0.1875rem;
        }

            .footerListLinksItem a:focus-visible:not(:focus-visible) {
                color: #ffffff;
            }

.footerContact {
    position: relative;
    flex: 1 0 100%;
    height: auto;
    display: flex;
    flex-flow: column;
    gap: 0.75rem;
}

    .footerContact .footerTitle {
        margin: 0;
    }

.footerContactDesc {
    font-family: F37GingerPro, sans-serif;
    font-weight: 300;
    font-size: 1.125rem;
    line-height: 1.33;
    color: #ffffff;
}

.footerContactLinks {
    font-style: normal;
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    gap: 0.75rem;
}

    .footerContactLinks a {
        font-family: F37GingerPro, sans-serif;
        font-weight: 500;
        font-size: 1.25rem;
        flex: 0 1 auto;
        width: auto;
        display: inline-block;
    }

        .footerContactLinks a:hover {
            text-decoration: none;
        }

            .footerContactLinks a:hover:not(:focus-visible) {
                color: #ffffff;
            }

        .footerContactLinks a:focus-visible {
            text-decoration: none;
        }

            .footerContactLinks a:focus-visible:not(:focus-visible) {
                color: #ffffff;
            }

.footerImage {
    position: relative;
    width: auto;
    height: auto;
    display: block;
    margin: 4.375rem auto 1.5625rem 0;
}

    .footerImage img {
        position: relative;
        width: 11.375rem;
        height: auto;
    }

    .footerImage::before {
        position: absolute;
        width: 17.5rem;
        height: 17.5rem;
        top: -3.125rem;
        left: -4rem;
        border-radius: 100%;
        background-color: #ffffff;
        content: "";
    }

.footerDisclaimer {
    flex: 1 0 100%;
    font-size: 1.125rem;
    line-height: 1.3;
}

.footerText {
    position: relative;
    flex: 1 0 100%;
    display: flex;
    flex-flow: row wrap;
    gap: 0.75rem;
}

.social {
    position: relative;
    width: 100%;
    height: auto;
    display: block;
    flex: 1 0 100%;
}

.socialList {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: 1.25rem;
}

.socialListItem {
    position: relative;
    width: 2.75rem;
    height: 2.75rem;
}

    .socialListItem a {
        position: relative;
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        align-content: center;
        justify-content: center;
        height: 2.75rem;
        gap: 0.625rem;
        text-decoration: none;
    }

    .socialListItem use {
        fill: #05112b;
        fill-rule: evenodd;
    }

.facebook.socialListItem svg {
    margin-top: auto;
}

.linkedIn.socialListItem svg {
    width: 1.5rem;
    height: 1.5rem;
}

.socialListItem .icon {
    position: relative;
    width: 2.5rem;
    min-height: 2.5rem;
    border-radius: 100%;
    background-color: #ffffff;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    align-content: center;
    justify-content: center;
}

    .socialListItem .icon svg {
        width: 1.875rem;
        height: 1.875rem;
    }

.socialListItem a:focus-visible, .socialListItem a:hover, .socialListItem a:focus {
    text-decoration: underline;
    text-decoration-thickness: 0.0625rem;
    text-underline-offset: 0.1875rem;
}

.socialListItem a:not(:focus-visible):focus-visible, .socialListItem a:not(:focus-visible):hover, .socialListItem a:not(:focus-visible):focus {
    color: #ffffff;
}

.socialListItemText {
    margin: -0.0625rem;
    padding: 0;
    width: 0.0625rem;
    height: 0.0625rem;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip: rect(0, 0, 0, 0);
    position: absolute;
}

.socialList {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

@keyframes opacityIn {
    100% {
        opacity: 1;
    }
}

.btn {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    width: auto;
    height: auto;
    display: inline-flex;
    justify-content: center;
    background: linear-gradient(180deg, #1159b0 0%, #2571cc 20.79%, #2571cc 50%, #2571cc 75.92%, #1159b0 100%);
    color: #ffffff;
    padding: 0.75rem 1.5rem;
    border-radius: 2rem;
    font-size: 1.375rem;
    line-height: 1.18;
    text-decoration: none;
    text-align: start;
    cursor: pointer;
    transition: 0.2s ease-out box-shadow;
}

    .btn:hover {
        text-decoration: underline;
        text-decoration-thickness: 0.0625rem;
        text-underline-offset: 0.1875rem;
        background: linear-gradient(180deg, #0a4d9e 0%, #175eb4 16.67%, #2571cc 50%, #175eb4 82.81%, #0a4d9e 100%);
    }

    .btn:focus-visible {
        text-decoration: underline;
        text-decoration-thickness: 0.0625rem;
        text-underline-offset: 0.1875rem;
        background: linear-gradient(180deg, #0a4d9e 0%, #175eb4 16.67%, #2571cc 50%, #175eb4 82.81%, #0a4d9e 100%);
    }

    .btn:focus-visible {
        box-shadow: inset 0 0 0 0.1875rem #05112b, 0 0 0 0.375rem #ff9d3c;
        outline: 0;
        z-index: 999;
    }

    .btn:hover {
        color: #ffffff;
    }

    .btn.ghost {
        color: #05112b;
        border: #05112b solid 0.1875rem;
        background: none;
        background-color: transparent;
    }

        .btn.ghost:hover {
            background: none;
            background-color: transparent;
            color: #05112b;
        }

        .btn.ghost:hover {
            background: none;
        }

        .btn.ghost:focus-visible {
            background: none;
        }

    .btn.green, .green .btn {
        background: linear-gradient(180deg, #218405 0%, #2b950f 13.54%, #2b950f 46.35%, #2b950f 85.42%, #218405 100%);
    }

        .btn.green:hover, .green .btn:hover {
            background: linear-gradient(180deg, #186b01 0%, #1d7d02 13.54%, #2b950f 46.35%, #1d7d02 85.42%, #186b01 100%);
        }

        .btn.green:focus-visible, .green .btn:focus-visible {
            background: linear-gradient(180deg, #186b01 0%, #1d7d02 13.54%, #2b950f 46.35%, #1d7d02 85.42%, #186b01 100%);
        }

    .btn.secondary {
        color: #05112b;
        box-shadow: inset 0 0 0 0.1875rem #c1c3ca;
        background-color: #ffffff;
        background-image: none;
    }

    .btn.ghost.light {
        color: #ffffff;
        border-color: #ffffff;
    }

    .btn.icon {
        padding: 0.375rem 3rem 0.375rem 1.5rem;
    }

        .btn.icon::after {
            position: absolute;
            top: 0.375rem;
            right: 1.25rem;
            width: 0.9375rem;
            height: 0.625rem;
            display: block;
            content: "";
            background-image: url("/static/assets/chevron-white.svg");
            background-size: 100% auto;
            background-position: center center;
        }

.anchor {
    position: relative;
    display: inline-flex;
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    align-items: center;
}

.anchor__chevron {
    width: 1.2em;
    height: 1.2em;
    transform: rotate(-90deg) translateX(-0.15em);
    fill: currentColor;
}

.anchor__link {
    text-decoration: none;
    color: inherit;
}

    .anchor__link:hover {
        color: inherit !important;
        text-decoration: underline;
        text-decoration-thickness: 0.0625rem;
        text-underline-offset: 0.1875rem;
    }

.anchorGroup {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    column-gap: 1rem;
}

.hero {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 12.5rem;
}

.hero__wrapper {
    display: grid;
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
    justify-content: center;
    align-items: center;
    color: var(--textColor);
    row-gap: 1rem;
    padding-block: 2.5rem;
    grid-template-areas: "heading";
    box-sizing: border-box;
    margin: auto 0;
}

.hero--withDescription .hero__wrapper {
    grid-template-areas: "heading" "content";
}

.hero--withMedia .hero__wrapper {
    grid-template-areas: "heading" "aside";
}

.hero--withDescription.hero--withMedia .hero__wrapper {
    grid-template-areas: "heading" "aside" "content";
}

.hero--withCard .hero__wrapper {
    align-items: center;
    grid-template-areas: "heading" "content" "card";
}

.hero__heading {
    grid-area: heading;
}

.hero--withDescription .hero__heading, .hero:not(.hero--withMedia) .hero__heading {
    align-self: flex-end;
}

.hero__heading, .hero__content {
    max-width: 45.1875rem;
}

.hero h1 {
    color: var(--accentColor, #05112b);
}

.hero__content {
    display: flex;
    flex-direction: column-reverse;
    grid-area: content;
}

    .hero__content .ctaGroup {
        margin: 0 0 1rem;
    }

.hero__aside {
    position: relative;
    display: none;
    grid-area: aside;
}

.hero--withMedia .hero__aside {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.hero__aside img {
    aspect-ratio: 16/9;
    border-radius: 0.1875rem;
}

.hero__anchors {
    display: none;
}

.hero__banner {
    color: var(--secondaryTextColor, #ffffff);
    position: relative;
    padding-block: 1rem;
}

    .hero__banner::before {
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        margin: 0 calc((100% - 100vw) / 2);
        display: block;
        z-index: -1;
        content: "";
        background-color: var(--secondaryColor, #b1e6fd);
    }

    .hero__banner a {
        color: inherit;
        font-family: F37GingerPro, sans-serif;
        font-weight: 300;
    }

.hero__card {
    grid-area: card;
    background-color: #ffffff;
    border-radius: 0.1875rem 1.875rem 0.1875rem 0.1875rem;
    padding: 1rem;
    font-size: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: relative;
}

    .hero__card:hover {
        box-shadow: inset 0 0 0 0.1875rem #cf6647, 0 0.25rem 1rem rgba(0, 0, 0, 0.2);
    }

    .hero__card .h-s {
        color: var(--accentColor, #bf330a);
    }

.hero__card__link {
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
    color: var(--accentColor, #bf330a);
    text-decoration: none;
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
}

    .hero__card__link::before {
        content: "";
        display: block;
        position: absolute;
        inset: 0;
        border-radius: 0.1875rem 1.875rem 0.1875rem 0.1875rem;
    }

.hero__card__link__arrow {
    width: 1.6em;
    height: 1.6em;
    fill: currentColor;
    transform: rotate(-90deg);
}

.hero__card__link:hover .hero__card__link__arrow {
    transform: translateX(0.4em) rotate(-90deg);
}

.hero__card__link:focus-visible {
    box-shadow: none !important;
    text-decoration: underline;
    outline: 0;
    z-index: 999;
    box-shadow: none !important;
    text-decoration: none !important;
}

    .hero__card__link:focus-visible::before {
        box-shadow: inset 0 0 0 0.1875rem #05112b, 0 0 0 0.375rem #ff9d3c;
    }

.hero__awardImages {
    right: 1rem;
    top: 1rem;
    gap: 1rem;
    display: flex;
    margin: 0 auto;
}

.hero__aside .hero__awardImages {
    display: none;
}

.hero__awardImages img {
    object-fit: cover;
    width: 7.5rem;
    height: 7.5rem;
    border: 0.125rem solid #828895;
    border-radius: 0.1875rem;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.2);
}

:root {
    --header-height: 5rem;
    scroll-padding-top: 5rem;
}

.skipLink {
    transition: height 0.2s ease-out;
    position: relative;
    width: 100%;
    height: 0;
    overflow: hidden;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    align-content: center;
    justify-content: flex-start;
    max-width: calc(80rem + var(--gutter-left) * 2);
    padding: 0 var(--gutter-left);
    box-sizing: border-box;
    margin: 0 auto;
}

    .skipLink::before {
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        right: 0;
        margin: 0 calc((100% - 100vw) / 2);
        background-color: #ffe8d8;
        border: #ff8002 0.375rem solid;
        content: "";
    }

    .skipLink:focus-within {
        overflow: visible;
        height: 4.25rem;
    }

    .skipLink a:focus {
        background: none;
        text-decoration: underline;
    }

.pageHeader {
    position: -webkit-sticky;
    position: sticky;
    width: 100%;
    height: auto;
    display: block;
    padding: 0 var(--gutter-left);
    box-sizing: border-box;
    z-index: 1000;
    top: 0;
    background-color: #ffffff;
}

.pageHeaderWrap {
    position: relative;
    grid-template-columns: 6.875rem 1fr;
    grid-auto-rows: auto;
    gap: 0 1.5rem;
    height: auto;
    min-height: 5rem;
}

.pageHeaderLogo {
    position: relative;
    grid-column: 1/2;
    grid-row: 1/2;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
}

    .pageHeaderLogo a {
        margin: auto auto auto 0;
    }

   @supports (-webkit-touch-callout: none) {
    .pageHeaderLogo img {
        max-height: 55px;   /* adjust until it looks right */
        height: auto;
    }
}

.grecaptcha-badge {
    position: fixed !important;
    z-index: 999999 !important;
}

.pageHeaderButton {
    position: relative;
    width: auto;
    height: auto;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
}

.nav.pageHeaderButton {
    grid-column: 2/3;
    grid-row: 1/2;
}

.pageHeaderButtonWrap {
    display: none;
}

.pageHeaderButton a, .pageHeaderButton > button {
    font-family: F37GingerPro, sans-serif;
    font-weight: 300;
    position: relative;
    width: 5.625rem;
    height: auto;
    min-height: 2.75rem;
    display: inline-flex;
    flex-flow: column;
    justify-content: center;
    align-content: center;
    align-items: center;
    font-size: 1rem;
    line-height: 1;
    color: #05112b;
    padding: 0;
}

    .pageHeaderButton a .icon, .pageHeaderButton > button .icon {
        position: relative;
        width: 2.5rem;
        height: 2.5rem;
    }

        .pageHeaderButton a .icon svg, .pageHeaderButton > button .icon svg {
            width: 2.5rem;
            height: 2.5rem;
        }

        .pageHeaderButton a .icon.open + .text, .pageHeaderButton > button .icon.open + .text {
            display: block;
        }

    .pageHeaderButton a .text, .pageHeaderButton > button .text {
        display: none;
    }

    .pageHeaderButton a use, .pageHeaderButton > button use {
        fill: #05112b;
    }

.pageHeaderNav {
    display: none;
}

.pageHeaderWrap {
    display: grid;
}

.pageHeaderButton > button {
    background-color: transparent;
    pointer-events: all;
    border-radius: 0;
    border: 0;
    -webkit-appearance: none;
    appearance: none;
}

    .pageHeaderButton > button span {
        pointer-events: none;
    }

    .pageHeaderButton > button svg {
        pointer-events: none;
    }

    .pageHeaderButton > button .open {
        display: block;
    }

    .pageHeaderButton > button .close {
        display: none;
    }

.pageHeaderButton a span {
    pointer-events: none;
}

.pageHeaderButton a svg {
    pointer-events: none;
}

.pageHeaderButton a .open {
    display: block;
}

.pageHeaderButton a .close {
    display: none;
}

.navOpen .pageHeaderButton.nav button .open {
    display: none;
}

.navOpen .pageHeaderButton.nav button .close {
    display: block;
}

.navOpen .pageHeaderNav .navigation {
    visibility: visible;
}

.navigation {
    left: 0;
    top: 0;
}

.navigationList {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
}

.navigationListWrap {
    display: none;
    visibility: hidden;
}

.navigationListItem {
    position: static;
    height: auto;
}

.navigationListItemLink {
    font-family: F37GingerPro, sans-serif;
    font-weight: 500;
    transition: color 0.2s ease-out;
    position: relative;
    display: flex;
    flex-flow: row-reverse nowrap;
    justify-content: space-between;
    align-items: flex-start;
    align-content: center;
    color: #05112b;
    font-size: 1.25rem;
    box-sizing: border-box;
}

    .navigationListItemLink:hover {
        color: #2571cc;
    }

    .navigationListItemLink:focus-visible {
        color: #2571cc;
    }

    .navigationListItemLink * {
        pointer-events: none;
    }

    .navigationListItemLink .text {
        flex: 1 1 auto;
    }

    .navigationListItemLink .icon {
        position: relative;
        padding: 1rem 0 0 0;
    }

    .navigationListItemLink svg {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .navigationListItemLink use {
        fill: #05112b;
    }
