/*****************************************/
  /* Styles cloned from the Ocorian.com  */
/*****************************************/

*,*:before,*:after {
    box-sizing: border-box
}

@font-face {
    font-family: cera_pro;
    src: url(../fonts/cerapro-medium-webfont.woff2) format("woff2"),url(../fonts/cerapro-medium-webfont.woff) format("woff");
    font-weight: 500;
    font-style: normal
}

@font-face {
    font-family: cera_pro;
    src: url(../fonts/cerapro-regular-webfont.woff2) format("woff2"),url(../fonts/cerapro-regular-webfont.woff) format("woff");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: cera_pro;
    src: url(../fonts/cerapro-italic-webfont.woff2) format("woff2"),url(../fonts/cerapro-italic-webfont.woff) format("woff");
    font-weight: 400;
    font-style: italic
}

@font-face {
    font-family: cera_pro;
    src: url(../fonts/cerapro-bold-webfont.woff2) format("woff2"),url(../fonts/cerapro-bold-webfont.woff) format("woff");
    font-weight: 700;
    font-style: normal
}

:root {
    --primary-0: #007a8c;
    --primary-50: #00a2c2;
    --primary-100: #e5f6f8;
    --secondary-50: #ff8200;
    --secondary-100: #fff9f2;
    --neutral-0: #000;
    --neutral-25: #2d2e30;
    --neutral-50: #53565a;
    --neutral-75: #eeeeee;
    --neutral-90: #f6f7f7;
    --neutral-100: #fff;
    --status-error: #ec1351;
    --grad-dark: linear-gradient(to top, rgba(0, 0, 0, 0), rgb(7, 7, 8));
    --grad-darkInvert: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgb(7, 7, 8));
    --font-size: 1.866rem;
    --md-font-size: 1.6rem;
    --small-font-size: 1.3rem;
    --h1: 3.8rem;
    --h2: 3.1rem;
    --h3: 2.8rem;
    --h4: 2.6rem;
    --h5: 1.866rem;
    --h6: 1.6rem;
    --line-height: 1.5;
    --header-line-height: 1.25;
    --lh-h1: 1.25;
    --lh-h2: 1.2;
    --lh-h3: 1.3;
    --lh-h4: 1.25;
    --lh-h5: 1.4;
    --base-space: 8px;
    --sm-block-space: 32px;
    --md-block-space: 64px;
    --lg-block-space: 96px;
    --space: calc(var(--base-space) * 3);
    --box-shadow: 0 4px 4px rgba(0, 0, 0, .3);
    --box-shadow-light: 0 4px 8px rgba(0, 0, 0, .2);
    --box-shadow-elevation: 0 25px 60px rgba(0, 0, 0, .4);
    --box-shadow-elevation-light: 0 25px 60px rgba(0, 0, 0, .2);
    --border-radius: 8px
}

@media (min-width: 64em) {
    :root {
        --h1: 4.8rem;
        --h2: 4.7rem;
        --h3: 3.8rem;
        --h4: 2.8rem
    }
}

@media (min-width: 64em) {
    :root {
        --lh-h2: 1.25;
        --lh-h4: 1.3
    }
}

@media (min-width: 64em) {
    :root {
        --sm-block-space: 64px;
        --md-block-space: 136px;
        --lg-block-space: 200px
    }
}

a>*,select>*,button>*,label>* {
    pointer-events: none
}

button,[role=button],label,select {
    user-select: none
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

main {
    display: block
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace,monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

code,kbd,samp {
    font-family: monospace,monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

button,input,optgroup,select,textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,input {
    overflow: visible
}

button,select {
    text-transform: none
}

button,[type=button],[type=reset],[type=submit] {
    -webkit-appearance: button
}

button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox],[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none!important
}

.preload * {
    transition: none!important;
    animation: none!important
}

body {
    font-family: cera_pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;
    font-size: 1.866em;
    font-weight: 400;
    line-height: 1.5;
    color: var(--neutral-0);
    background-color: var(--neutral-100);
    font-kerning: normal;
    -webkit-font-smoothing: antialiased;
    width: 100%;
    position: relative
}

body[data-lock] {
    overflow: hidden
}

body:before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--neutral-0);
    opacity: 0;
    z-index: 19;
    pointer-events: none;
    transition: opacity .6s cubic-bezier(.3,.15,.18,1)
}

body.is-covered:before {
    opacity: .6
}

button {
    border: 0;
    cursor: pointer
}

button:focus,button:active {
    outline: none;
    box-shadow: none
}

button.focus-visible {
    outline: 2px solid var(--uniques-focus);
    outline-offset: 2px
}

button:focus-visible {
    outline: 2px solid var(--uniques-focus);
    outline-offset: 2px
}

figure {
    margin: 0
}

p {
    letter-spacing: -.01em
}

p+* {
    margin-top: calc(var(--base-space) * 9)
}

p+p {
    margin-top: calc(var(--base-space) * 3)
}

p+.u-btn {
    margin-top: calc(var(--base-space) * 6)
}

h1,h2,h3,h4,h5,h6 {
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 400;
    line-height: 1.25
}

h1 strong,h2 strong,h3 strong,h4 strong,h5 strong,h6 strong {
    font-weight: 700
}

h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child {
    margin-top: 0
}

h1 {
    font-size: var(--h1);
    font-weight: 500;
    line-height: var(--lh-h1);
    letter-spacing: .03em;
    text-transform: uppercase
}

h1+* {
    margin-top: calc(var(--base-space) * 3)
}

h2 {
    font-size: var(--h2);
    line-height: var(--lh-h2);
    letter-spacing: -.01em
}

*+h2 {
    margin-top: calc(var(--base-space) * 12)
}

h2+* {
    margin-top: calc(var(--base-space) * 6)
}

h3 {
    font-size: var(--h3);
    line-height: var(--lh-h3);
    letter-spacing: -.01em
}

*+h3 {
    margin-top: calc(var(--base-space) * 9)
}

h2+h3 {
    margin-top: calc(var(--base-space) * 9)
}

h3+* {
    margin-top: calc(var(--base-space) * 5)
}

h4 {
    font-size: var(--h4);
    line-height: var(--lh-h4);
    letter-spacing: -.01em
}

*+h4 {
    margin-top: calc(var(--base-space) * 9)
}

h4+* {
    margin-top: calc(var(--base-space) * 4)
}

h5 {
    font-size: var(--h5);
    line-height: var(--lh-h5);
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase
}

*+h5 {
    margin-top: calc(var(--base-space) * 9)
}

h5+* {
    margin-top: calc(var(--base-space) * 4)
}

h6 {
    font-size: var(--h6);
    text-transform: uppercase
}

h6+* {
    margin-top: calc(var(--base-space) * 3)
}

*+ul:not([data-unstyled]),*+ol:not([data-unstyled]) {
    margin-top: calc(var(--base-space) * 1.5)
}

ul:not([data-unstyled])+*,ol:not([data-unstyled])+* {
    margin-top: calc(var(--base-space) * 3)
}

[class*=h-text] h1,[class*=h-text] h2,[class*=h-text] h3,[class*=h-text] h4,[class*=h-text] h5,[class*=h-text] h6 {
    color: currentColor
}

hr {
    border: 0;
    border-top: 2px solid var(--neutral-75);
    margin-left: 0
}

html {
    font-family: sans-serif;
    font-size: 62.5%
}

img {
    vertical-align: middle;
    border: 0
}

p+img,.c-content img {
    max-width: 100%;
    height: auto
}

a {
    --trans-duration: .25s;
    color: var(--neutral-0);
    text-decoration: underline;
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

a:hover {
    --trans-duration: .4s;
    color: var(--primary-50)
}

a:focus {
    outline: none
}

a:focus-visible {
    outline: 2px solid var(--primary-50);
    outline-offset: 2px
}

a.focus-visible {
    outline: 2px solid var(--primary-50);
    outline-offset: 2px
}

[id] {
    scroll-margin-top: calc(var(--base-space) * 4)
}

ul,ol {
    margin-bottom: 0;
    padding: 0;
    list-style: none
}

ul:first-child,ol:first-child {
    margin-top: 0
}

ul[data-minimal] li {
    position: relative;
    padding: .25em 0
}

ul[data-minimal] li ul {
    padding-top: .25em;
    margin-bottom: -.25em
}

ul:where(:not([data-unstyled]):not([data-minimal]):not(.u-tick-list):not(.toolbar-menu):not(.tabs):not(.menu):not(.contextual-links):not(.vertical-tabs__menu):not([class*=nav])) {
    padding-inline-start:1.555em}

ul:where(:not([data-unstyled]):not([data-minimal]):not(.u-tick-list):not(.toolbar-menu):not(.tabs):not(.menu):not(.contextual-links):not(.vertical-tabs__menu):not([class*=nav])) li {
    position: relative;
    padding: 0
}

ul:where(:not([data-unstyled]):not([data-minimal]):not(.u-tick-list):not(.toolbar-menu):not(.tabs):not(.menu):not(.contextual-links):not(.vertical-tabs__menu):not([class*=nav])) li:before {
    content: "";
    position: absolute;
    top: .45em;
    left: -1.555em;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: var(--primary-50)
}

ul:where(:not([data-unstyled]):not([data-minimal]):not(.u-tick-list):not(.toolbar-menu):not(.tabs):not(.menu):not(.contextual-links):not(.vertical-tabs__menu):not([class*=nav])) li ul {
    padding-top: .25em;
    margin-bottom: -.25em
}

ul:where(:not([data-unstyled]):not([data-minimal]):not(.u-tick-list):not(.toolbar-menu):not(.tabs):not(.menu):not(.contextual-links):not(.vertical-tabs__menu):not([class*=nav])) li+li {
    margin-top: calc(var(--base-space) * 1)
}

ol {
    counter-reset: orderedList;
    padding-inline-start:0}

ol ol {
    padding-inline-start:1.2em;padding-top: .1em;
    margin-bottom: -.1em
}

ol li:before {
    counter-increment: orderedList;
    content: counter(orderedList) ".";
    min-width: 28px;
    display: inline-block;
    padding: 0 .88em 0 0;
    color: var(--primary-50);
    font-weight: 700
}

ol li+li {
    margin-top: calc(var(--base-space) * 1.5)
}

main:focus {
    outline: none
}

p {
    margin-bottom: 0
}

p:first-child {
    margin-top: 0
}

@media (max-width: 47.9375em) {
    .u-table-wrap {
        overflow:auto;
        width: 100%
    }
}

table,th,td,tr,thead {
    padding: 6px;
    border: 0;
    border-collapse: collapse
}

table thead tr,th thead tr,td thead tr,tr thead tr,thead thead tr {
    border-top: 0;
    text-align: left;
    border-bottom: 2px solid #363636
}

table tbody tr,th tbody tr,td tbody tr,tr tbody tr,thead tbody tr {
    border-top-width: 1px
}

table th,th th,td th,tr th,thead th {
    vertical-align: top;
    text-align: left
}

table tr,th tr,td tr,tr tr,thead tr {
    border-top: 1px solid #363636
}

table tr td,th tr td,td tr td,tr tr td,thead tr td {
    vertical-align: top
}

table tr td a,th tr td a,td tr td a,tr tr td a,thead tr td a {
    color: #00a2c2;
    text-decoration: none
}

.ck-content .table table,.ck-content .table th,.ck-content .table td,.ck-content .table tr,.ck-content .table thead,.ck-widget .table table,.ck-widget .table th,.ck-widget .table td,.ck-widget .table tr,.ck-widget .table thead {
    padding: 6px;
    border: 0;
    border-collapse: collapse
}

.ck-content .table table thead tr,.ck-content .table th thead tr,.ck-content .table td thead tr,.ck-content .table tr thead tr,.ck-content .table thead thead tr,.ck-widget .table table thead tr,.ck-widget .table th thead tr,.ck-widget .table td thead tr,.ck-widget .table tr thead tr,.ck-widget .table thead thead tr {
    border-top: 0;
    text-align: left;
    border-bottom: 2px solid #363636
}

.ck-content .table table tbody tr,.ck-content .table th tbody tr,.ck-content .table td tbody tr,.ck-content .table tr tbody tr,.ck-content .table thead tbody tr,.ck-widget .table table tbody tr,.ck-widget .table th tbody tr,.ck-widget .table td tbody tr,.ck-widget .table tr tbody tr,.ck-widget .table thead tbody tr {
    border-top-width: 1px
}

.ck-content .table table th,.ck-content .table th th,.ck-content .table td th,.ck-content .table tr th,.ck-content .table thead th,.ck-widget .table table th,.ck-widget .table th th,.ck-widget .table td th,.ck-widget .table tr th,.ck-widget .table thead th {
    vertical-align: top;
    text-align: left
}

.ck-content .table table tr,.ck-content .table th tr,.ck-content .table td tr,.ck-content .table tr tr,.ck-content .table thead tr,.ck-widget .table table tr,.ck-widget .table th tr,.ck-widget .table td tr,.ck-widget .table tr tr,.ck-widget .table thead tr {
    border-top: 1px solid #363636
}

.ck-content .table table tr td,.ck-content .table th tr td,.ck-content .table td tr td,.ck-content .table tr tr td,.ck-content .table thead tr td,.ck-widget .table table tr td,.ck-widget .table th tr td,.ck-widget .table td tr td,.ck-widget .table tr tr td,.ck-widget .table thead tr td {
    vertical-align: top
}

.ck-content .table table tr td a,.ck-content .table th tr td a,.ck-content .table td tr td a,.ck-content .table tr tr td a,.ck-content .table thead tr td a,.ck-widget .table table tr td a,.ck-widget .table th tr td a,.ck-widget .table td tr td a,.ck-widget .table tr tr td a,.ck-widget .table thead tr td a {
    color: #00a2c2;
    text-decoration: none
}

.l-wrapper,.l-halves-left-bleed,.l-halves-right-bleed {
    display: grid;
    gap: var(--space, 2.4rem) 0;
    grid-template-columns: [cover-page-start] 1.2rem [full-page-start] 1fr [full-bleed-start content-start half-start] minmax(0,56.4rem) [half-end half2-start] minmax(0,56.4rem) [content-end half2-end full-bleed-end] 1fr [full-page-end] 1.2rem [cover-page-end]
}

@media (min-width: 72em) {
    .l-wrapper,.l-halves-left-bleed,.l-halves-right-bleed {
        grid-template-columns:[cover-page-start] 1.2rem [full-page-start] 1fr [full-bleed-start] minmax(0,15.6rem) [content-start half-start] 56.4rem [half-end half2-start] 56.4rem [content-end half2-end] minmax(0,15.6rem) [full-bleed-end] 1fr [full-page-end] 1.2rem [cover-page-end]
    }
}

.l-third-two-thirds-right-bleed,.l-two-thirds-left-bleed {
    display: grid;
    gap: var(--space, 2.4rem) 0;
    grid-template-columns: [cover-page-start] 1.2rem [full-page-start] 1fr [full-bleed-start content-start third-start] minmax(0,37.6rem) [third-end third2-start] minmax(0,37.6rem) [third2-end third3-start] minmax(0,37.6rem) [content-end third3-end full-bleed-end] 1fr [full-page-end] 1.2rem [cover-page-end]
}

@media (min-width: 72em) {
    .l-third-two-thirds-right-bleed,.l-two-thirds-left-bleed {
        grid-template-columns:[cover-page-start] 1.2rem [full-page-start] 1fr [full-bleed-start] minmax(0,15.6rem) [content-start third-start] 37.6rem [third-end third2-start] 37.6rem [third2-end third3-start] 37.6rem [content-end third3-end] minmax(0,15.6rem) [full-bleed-end] 1fr [full-page-end] 1.2rem [cover-page-end]
    }
}

.l-halves {
    display: grid;
    gap: var(--space, 2.4rem) var(--column, 2.4rem)
}

@media (min-width: 48em) {
    .l-halves {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

.l-halves[data-no-gutter] {
    gap: 0
}

.l-halves[data-mobile] {
    grid-template-columns: repeat(2,minmax(0,1fr))
}

@media (min-width: 35em) {
    .l-halves[data-breakpoint=xs] {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

.l-wrapper>.l-halves-left-bleed,.l-wrapper>.l-halves-right-bleed {
    grid-column: cover-page
}

.l-halves-left-bleed>*,.l-halves-right-bleed>* {
    grid-column: content
}

@media (min-width: 48em) {
    .l-halves-left-bleed>*:nth-child(2n+1),.l-halves-right-bleed>*:nth-child(2n+1) {
        margin-right:calc(var(--column, 2.4rem) / 2)
    }

    .l-halves-left-bleed>*:nth-child(2n),.l-halves-right-bleed>*:nth-child(2n) {
        margin-left: calc(var(--column, 2.4rem) / 2)
    }
}

@media (min-width: 48em) {
    .l-halves-left-bleed>*:nth-child(2n+1) {
        grid-column:full-bleed/half
    }
}

@media (min-width: 48em) {
    .l-halves-left-bleed>*:nth-child(2n) {
        grid-column:half2/content
    }
}

@media (min-width: 48em) {
    .l-halves-right-bleed>*:nth-child(2n+1) {
        grid-column:content/half
    }
}

@media (min-width: 48em) {
    .l-halves-right-bleed>*:nth-child(2n) {
        grid-column:half2/full-bleed
    }
}

.l-quarters {
    display: grid;
    gap: var(--space, 2.4rem) var(--column, 2.4rem)
}

@media (min-width: 48em) {
    .l-quarters {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

@media (min-width: 64em) {
    .l-quarters {
        grid-template-columns:repeat(4,minmax(0,1fr))
    }
}

.l-quarters--mobile {
    grid-template-columns: repeat(4,minmax(0,1fr))
}

.l-quarter-three-quarters {
    display: grid;
    gap: var(--space, 2.4rem) var(--column, 2.4rem)
}

@media (min-width: 48em) {
    .l-quarter-three-quarters {
        grid-template-columns:minmax(0,1fr) minmax(0,2fr)
    }
}

@media (min-width: 64em) {
    .l-quarter-three-quarters {
        grid-template-columns:minmax(0,1fr) minmax(0,3fr)
    }
}

.l-three-quarters {
    display: grid;
    gap: var(--space, 2.4rem) var(--column, 2.4rem)
}

@media (min-width: 48em) {
    .l-three-quarters {
        grid-template-columns:minmax(0,2fr) minmax(0,1fr)
    }
}

@media (min-width: 64em) {
    .l-three-quarters {
        grid-template-columns:minmax(0,3fr) minmax(0,1fr)
    }
}

.l-thirds {
    display: grid;
    gap: var(--space, 2.4rem) var(--column, 2.4rem)
}

@media (min-width: 48em) {
    .l-thirds {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
}

.l-two-thirds {
    display: grid;
    gap: var(--space, 2.4rem) var(--column, 2.4rem)
}

@media (min-width: 48em) {
    .l-two-thirds {
        grid-template-columns:minmax(0,2fr) minmax(0,1fr)
    }
}

.l-third-two-thirds {
    display: grid;
    gap: var(--space, 2.4rem) var(--column, 2.4rem)
}

@media (min-width: 48em) {
    .l-third-two-thirds {
        grid-template-columns:minmax(0,1fr) minmax(0,2fr)
    }
}

.l-wrapper>.l-third-two-thirds-right-bleed,.l-wrapper>.l-two-thirds-left-bleed {
    grid-column: cover-page
}

.l-third-two-thirds-right-bleed>* {
    grid-column: content
}

@media (min-width: 48em) {
    .l-third-two-thirds-right-bleed>*:nth-child(2n+1) {
        margin-right:1.2rem;
        grid-column: third
    }

    .l-third-two-thirds-right-bleed>*:nth-child(2n) {
        margin-left: 1.2rem;
        grid-column: third2-start/full-bleed-end
    }
}

.l-two-thirds-left-bleed>* {
    grid-column: content
}

@media (min-width: 48em) {
    .l-two-thirds-left-bleed>*:nth-child(2n+1) {
        margin-right:1.2rem;
        grid-column: full-bleed-start/third2-end
    }

    .l-two-thirds-left-bleed>*:nth-child(2n) {
        margin-left: 1.2rem;
        grid-column: third3
    }
}

[data-valign=center] {
    align-items: center
}

[data-valign=bottom] {
    align-items: flex-end
}

.l-wrapper>* {
    grid-column: content
}

.l-wrapper [data-width=full-bleed] {
    grid-column: full-bleed
}

.l-wrapper [data-width=full-page] {
    grid-column: full-page
}

.l-wrapper [data-width=cover] {
    grid-column: cover-page
}

.l-wrapper [data-width="6column"] {
    max-width: 56.4rem;
    width: 100%;
    margin: 0 auto
}

.l-wrapper [data-width="8column"] {
    max-width: 75.2rem;
    width: 100%;
    margin: 0 auto
}

.l-wrapper [data-width="10column"] {
    max-width: 94rem;
    width: 100%;
    margin: 0 auto
}

.l-wrapper [data-align=left] {
    margin: 0
}

.l-aside {
    position: relative
}

@keyframes rotateIcon {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(359deg)
    }
}

.list-button-item {
    display: block;
    margin-bottom: 10px
}

.u-btn {
    --color: var(--secondary-50);
    --transition-duration: .25s;
    --font-color: var(--neutral-25);
    display: inline-block;
    position: relative;
    line-height: 1;
    font-weight: 700;
    text-align: center;
    font-size: 1.4rem;
    text-decoration: none;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--font-color);
    background-color: var(--color);
    border-radius: var(--border-radius);
    border: 2px solid var(--color);
    padding: calc(var(--base-space) * 2.375) calc(var(--base-space) * 6);
    transition: background-color var(--transition-duration) cubic-bezier(.3,.15,.18,1),color var(--transition-duration) cubic-bezier(.3,.15,.18,1),border-color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

@media (prefers-reduced-motion: reduce) {
    .u-btn {
        --transition-duration: 1ms
    }
}

body.editmode .u-btn {
    --transition-duration: 1ms
}

.u-btn:hover {
    --transition-duration: .4s;
    color: var(--font-color)
}

.u-btn:before,.u-btn:after {
    content: "";
    position: absolute
}

.u-btn:before {
    inset: -2px;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    opacity: 0;
    transition: opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.u-btn:hover:before {
    opacity: 1
}

.u-btn:active:before {
    opacity: 0
}

.u-btn:after {
    top: 50%;
    left: 24px;
    width: 23px;
    height: 23px;
    background-image: url(https://www.ocorian.com/themes/escape/ocorian/images/logo-bug-grey.svg);
    background-size: 100%;
    transform: translate(-100%,-50%);
    opacity: 0;
    transition: opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1),transform var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.u-btn:hover:after {
    opacity: 1;
    transform: translateY(-50%) rotate(360deg)
}

.u-btn span {
    display: inline-block;
    transition: transform var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.u-btn:hover span {
    transform: translate(16px)
}

.u-btn--no-shadow:before {
    display: none
}

.u-btn--small {
    font-size: 1.3rem;
    line-height: 1.1;
    padding: calc(var(--base-space) * 1.375) calc(var(--base-space) * 3)
}

.u-btn--small:after {
    left: 12px;
    width: 20px;
    height: 20px;
    transform: translate(-50%,-50%)
}

.u-btn--icon {
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    padding: calc(var(--base-space) * 1.75) calc(var(--base-space) * 2)
}

.u-btn--icon>*+* {
    margin-left: calc(var(--base-space) * 2)
}

.u-btn--icon:hover span:not(:first-child) {
    transform: none
}

.u-btn--icon:hover span:first-child {
    transform: translate(40px)
}

.u-btn--icon svg,.u-btn__icon-wrap {
    width: 24px;
    height: 24px;
    transition: transform var(--transition-duration) cubic-bezier(.3,.15,.18,1),opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.u-btn--icon:hover svg,.u-btn__icon-wrap:hover {
    transform: translate(12px);
    opacity: 0
}

.u-btn__icon-wrap {
    position: relative
}

.u-btn__icon-wrap svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.u-btn--icon.u-btn--small {
    padding: calc(var(--base-space) * 1.375) calc(var(--base-space) * 2)
}

.u-btn>* {
    pointer-events: none
}

.u-btn.focus-visible {
    outline: 2px solid var(--color);
    outline-offset: 2px
}

.u-btn:focus-visible {
    outline: 2px solid var(--color);
    outline-offset: 2px
}

p>.u-btn+.u-btn {
    margin-left: calc(var(--base-space) * 1.5)
}

.u-btn:disabled {
    opacity: .4
}

.u-btn--grey {
    --color: var(--neutral-25);
    --font-color: var(--neutral-100)
}

.u-btn--secondary {
    --color: var(--neutral-25);
    --font-color: var(--neutral-25);
    background-color: transparent
}

.u-btn--secondary:hover {
    --font-color: var(--neutral-100);
    background-color: var(--neutral-25)
}

.u-btn--secondary:after,.u-btn--grey:after {
    background-image: url(https://www.ocorian.com/themes/escape/ocorian/images/logo-bug-white.svg)
}

.u-btn--tertiary {
    --font-color: var(--neutral-25);
    --color: transparent;
    padding: 0 0 calc(var(--base-space) * 2) 0
}

.u-btn--tertiary:before {
    inset: auto 0 0 0;
    height: 2px;
    transform-origin: center;
    box-shadow: none;
    opacity: 1;
    background-color: currentColor;
    transition: transform var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.u-btn--tertiary:after {
    display: none
}

.u-btn--tertiary:hover {
    --font-color: var(--neutral-0)
}

.u-btn--tertiary:hover span {
    transform: none
}

.u-btn--tertiary:hover:before {
    transform: scale(.75)
}

.u-btn--tertiary:active:before {
    transform: scale(.65);
    opacity: 1
}

.u-btn [data-icon=loading],.u-btn [data-icon=active] {
    opacity: 0;
    transition: opacity .4s cubic-bezier(.3,.15,.18,1)
}

.u-btn[data-state=loading] [data-icon=loading] {
    opacity: 1;
    animation: rotateIcon 1s infinite linear
}

@media (prefers-reduced-motion: reduce) {
    .u-btn[data-state=loading] [data-icon=loading] {
        animation: none!important
    }
}

.u-btn[data-state=active] [data-icon=in-active],.u-btn[data-state=loading] [data-icon=in-active] {
    opacity: 0
}

.u-btn[data-state=active] [data-icon=active] {
    opacity: 1
}

.u-hamburger {
    --burger-size: 48px;
    --burger-thickness: 2px;
    --height: calc(var(--burger-size) * .4);
    --width: calc(var(--burger-size) * .5);
    --transition-duration: .25s;
    position: relative;
    width: var(--burger-size);
    height: var(--burger-size);
    background-color: transparent
}

.u-hamburger>* {
    pointer-events: none
}

.u-hamburger,.u-hamburger:hover,.u-hamburger:focus,.u-hamburger:active {
    border: 0
}

.u-hamburger div {
    position: absolute;
    height: var(--height);
    width: var(--width);
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

.u-hamburger div:before,.u-hamburger div:after,.u-hamburger div span {
    content: "";
    position: absolute;
    width: 100%;
    height: var(--burger-thickness);
    background-color: currentColor;
    left: 0;
    transition: transform var(--transition-duration) cubic-bezier(.3,.15,.18,1),opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1),background-color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.u-hamburger div:before {
    top: 0
}

.u-hamburger div:after {
    bottom: 0
}

.u-hamburger div span {
    top: 50%;
    transform: translateY(-50%);
    opacity: 1
}

.u-hamburger[data-active] div:before,.u-hamburger[data-active] div:after,.u-hamburger[data-active] div span {
    --transition-duration: .4s
}

.u-hamburger[data-active] div:before {
    transform: translateY(calc(var(--height) / 2)) rotate(45deg)
}

.u-hamburger[data-active] div span {
    opacity: 0;
    transform: translateY(-50%) scaleX(.1)
}

.u-hamburger[data-active] div:after {
    transform: translateY(calc(var(--height) / -2 + var(--burger-thickness))) rotate(-45deg)
}

@media (min-width: 64em) {
    .u-limit-content {
        max-width:40ch
    }
}

@media (min-width: 64em) {
    .u-limit-content--large {
        max-width:85%
    }
}

.u-limit-content--centered {
    margin: 0 auto
}

.u-media {
    --image-width: 16;
    --image-height: 9;
    position: relative
}

.u-media[data-size="4/3"] {
    --image-width: 4;
    --image-height: 3
}

.u-media[data-size="1/1"] {
    --image-width: 1;
    --image-height: 1
}

.u-media[data-size=social] {
    --image-width: 1200;
    --image-height: 630
}

.u-media[data-size=portrait] {
    --image-width: 480;
    --image-height: 720
}

.u-media__wrap {
    position: relative;
    overflow: hidden;
    aspect-ratio: var(--image-width)/var(--image-height)
}

.u-media--square .u-media__wrap {
    border-radius: 0
}

.u-media__wrap>img,.u-media__wrap>picture,.u-media__wrap>picture img,.u-media .u-video__image,.u-media__wrap>iframe,.u-media__wrap>svg,.u-media__wrap>video,.u-media__wrap>div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.u-media__wrap>svg.u-media__icon-dark {
    color: #fff
}

.u-media[data-type=contain] img {
    object-fit: contain
}

.u-read-more__container {
    backface-visibility: hidden;
    transform: translateZ(0);
    height: 0;
    will-change: height;
    overflow: hidden;
    transition: height .25s cubic-bezier(.3,.15,.18,1)
}

.u-read-more__content {
    padding: calc(var(--base-space) * 3) 0
}

.u-read-more__container[data-active],.u-read-more__container.active {
    height: auto;
    transition: height .4s cubic-bezier(.3,.15,.18,1)
}

@keyframes moveUp {
    0% {
        transform: translateY(var(--distance))
    }

    to {
        transform: none
    }
}

.u-scroll-anim {
    --distance: 0
}

@media (min-width: 48em) {
    .u-scroll-anim {
        --distance: 40px
    }
}

.u-scroll-anim,body.loaded .u-scroll-anim[data-scroll-anim-active] {
    transform: translateY(var(--distance));
    animation-name: moveUp;
    animation-timing-function: var(--scroll-ease);
    animation-duration: var(--scroll-duration);
    animation-fill-mode: forwards
}

body.loaded .u-scroll-anim {
    transform: translateY(var(--distance));
    animation: none
}

@media (prefers-reduced-motion: reduce) {
    .u-scroll-anim {
        animation: none!important;
        transform: none!important
    }
}

body.editmode .u-scroll-anim {
    animation: none!important;
    transform: none!important
}

.u-shadow {
    box-shadow: var(--box-shadow)
}

.u-skip-to-content-btn {
    position: fixed;
    top: 0;
    left: 0;
    padding: 10px;
    transform: translateY(-100%);
    transition: transform .25s cubic-bezier(.3,.15,.18,1)
}

@media (prefers-reduced-motion: reduce) {
    .u-skip-to-content-btn {
        transition: none!important
    }
}

.u-skip-to-content-btn:focus-within {
    transform: none;
    transition-duration: .4s
}

@media (min-width: 48em) {
    .u-sticky {
        position:sticky;
        top: 40px
    }

    body.loggedin .u-sticky {
        top: 88px
    }
}

.u-nav-sticky {
    z-index: 99999
}

.u-nav-sticky>* {
    -webkit-transition: width 1s ease-in-out;
    -moz-transition: width 1s ease-in-out;
    -o-transition: width 1s ease-in-out;
    transition: width 1s ease-in-out
}

.is-sticky {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%
}

.c-sticky {
    z-index: 1000;
    background-color: #fff;
    box-shadow: var(--box-shadow-elevation-light);
    position: sticky;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%
}

.c-sticky .l-container {
    margin: 0 auto;
    max-width: 112.8rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem
}

.c-sticky .l-container a:not(.u-btn) {
    color: var(--primary-50);
    text-decoration: none
}

.c-sticky .l-container a:not(.u-btn):hover {
    text-decoration: underline
}

.u-tag {
    --color: var(--primary-100);
    --font-color: var(--primary-50);
    --transition-duration: .25s;
    display: inline-block;
    padding: calc(var(--base-space) * 1) calc(var(--base-space) * 1.5);
    min-width: 140px;
    border-radius: var(--border-radius);
    background-color: var(--color);
    color: var(--font-color);
    text-decoration: none;
    line-height: 1;
    text-align: center;
    transition: background-color var(--transition-duration) cubic-bezier(.3,.15,.18,1),color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.u-tag:hover {
    --transition-duration: .4s;
    --color: var(--primary-50);
    --font-color: var(--neutral-100)
}

.u-tag[data-color=secondary] {
    --color: var(--secondary-100);
    --font-color: var(--primary-50)
}

.u-tag[data-color=secondary]:hover {
    --color: var(--secondary-50)
}

.u-tick-list li {
    position: relative;
    display: inline-flex;
    align-items: flex-start;
    padding-top: space(.75);
    padding-bottom: space(.75)
}

.u-tick-list li:before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url(https://www.ocorian.com/themes/escape/ocorian/images/tick-secondary.svg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin-right: space(1.5);
    flex: 0 0 24px
}

.u-tick-list li+li {
    margin-top: 0
}

.u-tick-list--primary li:before {
    background-image: url(https://www.ocorian.com/themes/escape/ocorian/images/tick-primary.svg)
}

.u-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.u-video__player>*,.u-video__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.u-video__player {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%
}

.u-video__player iframe {
    width: 100%;
    height: 100%
}

.u-video__overlay {
    opacity: 1;
    transition: opacity 1.4s cubic-bezier(.3,.15,.18,1)
}

.u-video.is-open .u-video__overlay {
    pointer-events: none;
    opacity: 0
}

.u-video__icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 2
}

.u-video--autoplay {
    z-index: 20
}

.u-video--autoplay video {
    position: absolute;
    width: 100%;
    height: auto
}

.u-video__popup-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    pointer-events: none;
    z-index: 100
}

.u-video__popup-container:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000a6;
    opacity: 0;
    transition: opacity .25s cubic-bezier(.3,.15,.18,1)
}

.u-video.is-open .u-video__popup-container {
    pointer-events: auto
}

.u-video.is-open .u-video__popup-container:before {
    opacity: 1;
    transition-duration: .4s
}

.u-video__popup {
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(100% - 60px);
    max-width: 112.8rem;
    transform: translate(-50%,calc(-50% + 50px));
    transition: transform .25s cubic-bezier(.3,.15,.18,1),opacity .25s cubic-bezier(.3,.15,.18,1);
    pointer-events: none;
    opacity: 0
}

.u-video__popup:before {
    content: "";
    display: block;
    padding-bottom: ratio(16,9);
    padding-top: 80px
}

.u-video.is-open .u-video__popup {
    transform: translate(-50%,-50%);
    transition: transform .4s cubic-bezier(.3,.15,.18,1),opacity .4s cubic-bezier(.3,.15,.18,1);
    pointer-events: auto;
    opacity: 1
}

.u-video__close {
    position: absolute;
    top: 0;
    right: 0;
    color: var(--neutral-100);
    background-color: var(--primary-50);
    transition: color .25s cubic-bezier(.3,.15,.18,1),background-color .25s cubic-bezier(.3,.15,.18,1),transform .25s cubic-bezier(.3,.15,.18,1);
    transform: translateY(50px)
}

.u-video__close:hover {
    color: var(--primary-50);
    background-color: var(--neutral-100);
    transition: color .4s cubic-bezier(.3,.15,.18,1),background-color .4s cubic-bezier(.3,.15,.18,1),transform .4s cubic-bezier(.3,.15,.18,1)
}

.u-video.is-open .u-video__close {
    transition: color .4s cubic-bezier(.3,.15,.18,1),background-color .4s cubic-bezier(.3,.15,.18,1),transform .4s cubic-bezier(.3,.15,.18,1) .12s;
    transform: none
}

.u-video__btn {
    position: relative;
    background-color: transparent;
    color: var(--neutral-0);
    fill: var(--secondary-50);
    transition: color .25s cubic-bezier(.3,.15,.18,1),fill .25s cubic-bezier(.3,.15,.18,1)
}

.u-video__btn,.u-video__btn svg {
    width: 64px;
    height: 64px
}

.u-video__btn:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--secondary-50);
    border-radius: 50%
}

.u-video__btn svg {
    position: relative;
    z-index: 1
}

.u-video__overlay:hover .u-video__btn {
    color: var(--secondary-50);
    fill: var(--neutral-0);
    transition: color .4s cubic-bezier(.3,.15,.18,1),fill .4s cubic-bezier(.3,.15,.18,1)
}

.u-video__image img {
    transition: transform .25s cubic-bezier(.3,.15,.18,1);
    transform-origin: center
}

.u-video__overlay:hover .u-video__image img {
    transform: scale(1.1);
    transition-duration: .4s
}

.u-visually-hidden {
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px)
}

.u-visually-hidden+* {
    margin-top: 0
}

.u-chip {
    --trans-duration: .25s;
    display: inline-block;
    padding: calc(var(--base-space) * .875) calc(var(--base-space) * 3);
    font-size: 10px;
    letter-spacing: .1em;
    line-height: 1;
    text-transform: uppercase;
    font-weight: 500;
    background-color: var(--neutral-75);
    border-radius: var(--border-radius);
    color: var(--neutral-50);
    transition: background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    text-decoration: none
}

.u-chip[href]:hover {
    --trans-duration: .4s;
    background-color: var(--primary-100);
    color: var(--neutral-50)
}

.u-chip--large {
    background-color: var(--neutral-100);
    display: inline-flex;
    align-items: center;
    padding: calc(var(--base-space) * 1) calc(var(--base-space) * 2) calc(var(--base-space) * 1) calc(var(--base-space) * 1);
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .15em
}

.u-chip--large figure {
    margin-right: calc(var(--base-space) * 2)
}

.u-mac-cutout {
    position: relative
}

.u-mac-cutout__screen {
    position: absolute;
    top: 9.45%;
    bottom: 11.52%;
    left: 12.4%;
    right: 12.4%;
    aspect-ratio: 737/450
}

.u-mac-cutout__screen .u-media {
    --image-width: 736;
    --image-height: 448;
    --border-radius: 0
}

.u-mac-cutout__screen img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.u-mac-cutout__overlay {
    pointer-events: none;
    position: relative;
    aspect-ratio: 981/566
}

.u-mac-cutout__overlay img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain
}

.u-icon-text {
    display: flex;
    align-items: center
}

.u-icon-text svg {
    width: 24px;
    height: 24px;
    margin-right: calc(var(--base-space) * 1);
    flex: 0 0 auto
}

.u-icon-text--large svg {
    width: 48px;
    height: 48px;
    margin-right: 32px
}

.u-flag-circle {
    position: relative;
    width: 24px;
    height: 24px
}

.u-flag-circle img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: 1/1;
    object-fit: contain
}

.c-accordion-list {
    padding-bottom: var(--lg-block-space);
    --space: 32px
}

@media (min-width: 48em) {
    .c-accordion-list {
        --space: 96px
    }
}

.c-accordion-list__intro+* {
    margin-top: 96px
}

.c-accordion {
    position: relative;
    text-align: left;
    width: 100%;
    background-color: var(--neutral-75);
    border: 2px solid var(--neutral-75);
    border-radius: var(--border-radius)
}

.c-accordion:hover,.c-accordion[data-active] {
    background-color: var(--neutral-100);
    border-color: var(--primary-50)
}

.c-accordion__list>*+* {
    margin-top: calc(var(--base-space) * 1.5)
}

.c-accordion h2+* {
    margin-top: 0
}

.c-accordion__title {
    width: 100%;
    text-align: left;
    cursor: pointer;
    background-color: transparent;
    font-size: 1.86667rem;
    font-weight: 700;
    color: var(--neutral-50);
    padding: 0
}

.c-accordion__title-wrap {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%
}

.c-accordion__title span {
    display: block;
    padding: calc(var(--base-space) * 2) calc(var(--base-space) * 2.5)
}

.c-accordion:hover .c-accordion__title,.c-accordion[data-active] .c-accordion__title {
    color: var(--primary-50)
}

.c-accordion__icon {
    position: relative;
    width: 40px;
    height: 36px;
    margin-left: 16px;
    margin-right: 10px;
    outline: none;
    transition: color .25s cubic-bezier(.3,.15,.18,1);
    color: var(--neutral-50)
}

.c-accordion__icon svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    transform: translate(-50%,-50%)
}

.c-accordion__icon [data-icon=active],.c-accordion[data-active] .c-accordion__icon [data-icon=in-active] {
    opacity: 0
}

.c-accordion[data-active] .c-accordion__icon [data-icon=active] {
    opacity: 1
}

.c-accordion__container {
    backface-visibility: hidden;
    transform: translateZ(0);
    height: 0;
    will-change: height;
    overflow: hidden;
    transition: height .25s cubic-bezier(.3,.15,.18,1)
}

.c-accordion[data-active] .c-accordion__container {
    height: auto;
    transition: height .4s cubic-bezier(.3,.15,.18,1)
}

.c-accordion__content {
    padding: 24px 50px 32px 32px
}

.c-card-article h3 {
    font-size: var(--font-size);
    line-height: var(--line-height);
    color: var(--primary-50);
    font-weight: 700;
    padding-bottom: 24px
}

.c-card-article h3 a {
    color: currentColor
}

.c-card-article__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 24px;
    font-size: var(--md-font-size);
    margin-top: auto
}

.c-card-article__chips {
    padding-top: 24px;
    margin-top: 48px;
    border-top: 1px solid var(--neutral-75);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px
}

.c-card-article__type {
    position: absolute;
    top: 24px;
    left: 24px;
    border-radius: var(--border-radius);
    background-color: var(--secondary-50);
    color: var(--neutral-25);
    min-width: 88px;
    padding: 2px 8px;
    z-index: 1;
    text-align: center;
    font-size: var(--small-font-size)
}

.c-card {
    --trans-hover-duration: .25s;
    position: relative;
    z-index: 0;
    background-color: var(--neutral-100);
    display: flex;
    flex-direction: column
}

.c-card[data-hover-active] {
    --trans-hover-duration: .4s
}

.c-card:before,.c-card:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    transition: opacity var(--trans-hover-duration) cubic-bezier(.3,.15,.18,1)
}

.c-card:before {
    box-shadow: var(--box-shadow-light)
}

.c-card[data-hover-active]:before {
    opacity: 0
}

.c-card:after {
    box-shadow: var(--box-shadow-elevation-light);
    opacity: 0
}

.c-card[data-hover-active]:after {
    opacity: 1
}

.c-card__body {
    padding: 24px;
    flex-grow: 1;
    display: flex;
    flex-direction: column
}

.c-card__body :is(h2,h3,h4) a {
    text-decoration: none;
    color: inherit
}

.c-card__featured {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #0000004d;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-content: space-between;
    justify-content: flex-end
}

.c-card__featured h3 {
    position: relative;
    padding-bottom: 1rem
}

.c-card__featured h3 a {
    color: #fff
}

.c-card__featured h3:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 100%;
    max-width: 112.8rem;
    height: 1px;
    background-color: var(--neutral-75);
    transform: translate(-50%)
}

.c-card__image {
    display: block;
    position: relative;
    text-decoration: none
}

.c-card-media--icon {
    position: relative;
    box-shadow: var(--box-shadow);
    aspect-ratio: 255/191
}

.c-card-media--icon svg,.c-card-media--icon .u-media {
    position: absolute;
    top: 15%;
    left: 15%;
    width: 70%;
    height: 70%
}

.c-card-list {
    position: relative;
    gap: 0;
    padding-bottom: var(--lg-block-space)
}

.c-card-list:before,.c-card-list:after {
    content: "";
    background-color: var(--neutral-75);
    grid-column: content
}

.c-card-list:before {
    grid-row: 1/3
}

@media (max-width: 47.9375em) {
    .c-card-list:not([data-mobile-scroll=true]):before,.c-card-list:not([data-mobile-scroll=true]):after {
        margin:0 16px
    }
}

@media (max-width: 47.9375em) {
    .c-card-list--casestudy-more:not([data-mobile-scroll=true]):before {
        margin:0
    }
}

.c-card-list:after {
    grid-row: span 1;
    aspect-ratio: 1110/168;
    clip-path: polygon(0 0,100% 0,50% 100%)
}

.c-card-list__title {
    grid-row: 1;
    padding: var(--md-block-space) 16px 20px;
    text-align: center;
    color: var(--neutral-25)
}

@media (min-width: 48em) {
    .c-card-list__title {
        padding:106px 48px 8px
    }
}

@media (min-width: 48em) {
    .c-card-list__title--more-link {
        display:flex;
        align-items: baseline;
        justify-content: space-between
    }
}

@media (max-width: 47.9375em) {
    .c-card-list__title--more-link a {
        display:none
    }
}

.c-card-list__list,.c-card-list__list-slider {
    grid-row: 2;
    padding: 32px 0 64px;
    margin: 0;
    z-index: 1
}

@media (min-width: 48em) {
    .c-card-list__list,.c-card-list__list-slider {
        grid-column:full-bleed;
        padding: 80px 0
    }
}

@media (max-width: 47.9375em) {
    .c-card-list[data-mobile-scroll=true] .c-card-list__list {
        padding-left:24px;
        padding-right: 24px
    }
}

.c-card-list:not(.c-card-list--gap) .c-card-list__list {
    gap: 0
}

@media (max-width: 47.9375em) {
    .c-card-list[data-mobile-scroll=true] .c-card-list__list {
        overflow-x:scroll;
        overflow-y: clip;
        display: flex;
        gap: 10px
    }

    .c-card-list[data-mobile-scroll=true] .c-card-list__list>* {
        flex: 0 0 100%
    }
}

.c-card-list[data-mobile-scroll=true] .c-slider__track>* {
    flex: 0 0 95%
}

@media (max-width: 47.9375em) {
    .c-card-list__list-slider {
        margin-left:-12px;
        margin-right: -12px
    }
}

.c-card-list__list-slider .c-slider__viewport {
    overflow: visible
}

.c-card-list__list-slider .c-slider__track-viewport {
    box-shadow: var(--box-shadow-elevation)
}

.c-card-list__list-slider .c-slider__track-wrap {
    overflow: hidden
}

.c-card-list__list-slider .c-slider__controls {
    max-width: 780px;
    width: 100%;
    margin: 0 auto;
    padding-top: 74px
}

.c-card-list__show-more {
    text-align: center;
    background-color: var(--neutral-75);
    padding-bottom: 24px
}

@media (min-width: 48em) {
    .c-card-list__show-more--more-link {
        display:none
    }
}

.c-card-list__list+.c-card-list__list {
    padding-top: 0;
    margin-top: -40px
}

.c-card-list__list--center {
    display: flex;
    justify-content: center;
    gap: var(--space, 2.4rem) var(--column, 2.4rem)
}

.c-card-list__list--center>* {
    flex: 0 0 450px
}

.c-card-slider {
    padding-bottom: var(--lg-block-space);
    overflow: hidden
}

.c-card-slider[class*=h-background] {
    padding-bottom: 64px;
    margin-bottom: var(--lg-block-space)
}

@media (min-width: 48em) {
    .c-card-slider[class*=h-background] {
        padding-bottom:122px
    }
}

.c-card-slider__content+* {
    margin-top: 16px
}

@media (min-width: 48em) {
    .c-card-slider__content+* {
        margin-top:72px
    }
}

.c-card-slider[class*=h-background] .c-card-slider__content {
    padding-top: 64px
}

@media (min-width: 48em) {
    .c-card-slider[class*=h-background] .c-card-slider__content {
        padding-top:144px
    }
}

@media (min-width: 48em) {
    .c-card-slider .c-slider__viewport {
        margin-left:-15px;
        margin-right: -15px;
        width: calc(100% + 30px)
    }
}

.c-card-slider .c-card-media,.c-card-slider .c-team-card,.c-card-slider .c-role-card {
    margin: 15px
}

.c-card-slider .c-slider__slide {
    display: flex
}

.c-card-slider .c-slider__slide>* {
    flex-grow: 1
}

@media (max-width: 47.9375em) {
    .c-card-slider[data-mobile-scroll=true] .c-slider__slide {
        flex:0 0 90%
    }
}

.c-card-slider .c-slider__controls {
    display: flex;
    margin-left: 15px;
    margin-right: 15px;
    width: auto
}

@media (min-width: 48em) {
    .c-card-slider .c-slider__controls {
        margin-top:66px
    }
}

.c-card-slider .c-slider+.c-card-list__content--btn {
    margin-top: 0
}

@media (min-width: 64em) {
    .c-card-slider--see-viewport .c-slider__viewport,.c-card-slider--see-viewport .c-slider__track {
        overflow:visible
    }
}

.c-content-image-5050 {
    padding-bottom: var(--md-block-space);
    overflow-x: clip
}

.c-content-image-5050__container {
    display: grid;
    gap: 24px;
    align-items: center
}

@media (min-width: 48em) {
    .c-content-image-5050__container {
        grid-template-columns:repeat(12,minmax(0,1fr))
    }
}

.c-content-image-5050__content {
    order: 1
}

@media (min-width: 48em) {
    .c-content-image-5050__content {
        order:0;
        grid-column: span 5
    }

    .c-content-image-5050__content:first-child {
        margin-right: 66px
    }

    .c-content-image-5050__content:last-child {
        margin-left: 32px
    }
}

.c-content-image-5050__image .u-media__wrap {
    box-shadow: var(--box-shadow-elevation-light)
}

@media (min-width: 48em) {
    .c-content-image-5050__image {
        grid-column:span 7
    }
}

.c-content-image-5050__image:last-child .u-media {
    position: relative
}

@media (min-width: 48em) {
    .c-content-image-5050__image:last-child .u-media:before {
        content:"";
        position: absolute;
        top: -23%;
        bottom: -28.2%;
        left: -6.36%;
        right: -15%;
        background-color: var(--primary-100);
        clip-path: polygon(0 35.35%,100% 0,100% 100%)
    }
}

.c-content-width-media {
    --top: 5;
    --bot: 5;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width: 48em) {
    .c-content-width-media {
        --top: 15;
        --bot: 15
    }
}

.c-content-width-media:not([class*=h-background])+*:not([class*=h-background]) {
    --top: 0
}

.c-content {
    padding-bottom: 72px
}

.c-cookie-bar {
    bottom: 0;
    left: 0;
    width: 100%;
    position: fixed;
    z-index: 1000;
    background-color: #fff;
    box-shadow: 0 0 15px #0003;
    padding: 25px 0 30px;
    transform: translateY(100%);
    transition: transform .4s cubic-bezier(.3,.15,.18,1);
    border-top: 1px solid var(--neutral-50)
}

@media (min-width: 48em) {
    .c-cookie-bar {
        border-top:0
    }
}

.c-cookie-bar.is-active {
    transform: translateY(0)
}

.c-cookie-bar__btn {
    width: 100%
}

@media (min-width: 28.125em) {
    .c-cookie-bar__btn {
        width:auto
    }
}

.c-cookie-bar__content h3+* {
    margin-top: calc(var(--base-space) * 1.5)
}

.c-cookie-bar__btn-list {
    display: flex;
    justify-items: flex-end;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: column-reverse;
    margin-top: 36px
}

@media (min-width: 48em) {
    .c-cookie-bar__btn-list {
        flex-direction:row;
        margin-top: 0;
        align-items: flex-start
    }
}

.c-cookie-category__heading {
    margin-top: var(--space-800)
}

.c-cookie-category__table table {
    border-collapse: collapse;
    font-size: var(--font-size);
    table-layout: fixed;
    width: 100%
}

.c-cookie-category__table--responsive {
    overflow-x: auto
}

.c-cookie-category__table--responsive table {
    min-width: 700px
}

.c-cookie-category__table th,.c-cookie-category__table td {
    text-align: left;
    padding: 10px;
    vertical-align: top;
    width: 20%
}

.c-cookie-category__table th:last-child,.c-cookie-category__table td:last-child {
    width: 40%
}

.c-cookie-category__table th a,.c-cookie-category__table td a {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis
}

.c-cookie-category__table thead tr {
    border-bottom: 1px solid #000
}

.c-cookie-category__table tbody tr {
    border-bottom: 1px solid #eee
}

.c-cookie-category__table tbody tr:last-child {
    border-bottom-color: transparent
}

.c-cookie-category__table tbody tr td.c-cookie-category__table-no-data {
    text-align: center
}

.c-cookie-settings {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #fff;
    box-shadow: 0 0 15px #0003;
    transform: translateY(100%);
    transition: transform .25s cubic-bezier(.3,.15,.18,1);
    z-index: 1
}

.c-cookie-settings.is-active {
    transform: none;
    transition-duration: .4s
}

.c-cookie-settings__content+* {
    margin-top: calc(var(--base-space) * 6)
}

.c-cookie-settings__list {
    position: relative;
    margin: 0 auto;
    max-height: calc(var(--1vh, 1vh) * 100);
    overflow: auto;
    padding-top: 25px
}

.c-cookie-settings__item-container {
    overflow-y: auto;
    flex-grow: 10
}

.c-cookie-settings__item {
    display: flex;
    align-items: flex-start;
    max-width: 768px;
    width: 100%
}

.c-cookie-settings__item+* {
    margin-top: calc(var(--base-space) * 3)
}

.c-cookie-settings__footer {
    display: flex;
    justify-content: flex-end;
    margin-top: 0;
    padding: calc(var(--base-space) * 6) 0;
    flex-direction: column-reverse;
    align-items: center
}

@media (min-width: 48em) {
    .c-cookie-settings__footer {
        flex-direction:row
    }
}

.c-cookie-settings__switch {
    flex: 0 0 48px;
    display: block;
    width: 48px;
    height: 48px;
    margin-right: 30px
}

.c-cookie-settings__switch input {
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px)
}

.c-cookie-settings__switch span {
    position: relative;
    display: block;
    margin-top: 3px;
    width: 43px;
    height: 24px;
    border-radius: 24px;
    overflow: hidden
}

.c-cookie-settings__switch span:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 24px;
    background-color: var(--neutral-50);
    transition: background-color .25s cubic-bezier(.3,.15,.18,1)
}

.c-cookie-settings__switch span:after {
    content: "";
    position: absolute;
    top: 3px;
    left: 4px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: #fff;
    transition: transform .25s cubic-bezier(.3,.15,.18,1)
}

.c-cookie-settings__switch:hover span:after {
    background-color: #ddd
}

.c-cookie-settings__switch input.focus-visible+span {
    outline: 2px solid var(--uniques-focus);
    outline-offset: -2px
}

.c-cookie-settings__switch input:focus-visible+span {
    outline: 2px solid var(--uniques-focus);
    outline-offset: -2px
}

.c-cookie-settings__switch input:checked+span:before {
    background-color: var(--primary-50)
}

.c-cookie-settings__switch input:checked+span:after {
    transform: translate(17px)
}

.c-cookie-settings__switch input:disabled+span {
    opacity: .5
}

.c-cookie-settings__switch input:disabled+span:after {
    background-color: #fff
}

.c-cookie-settings__title {
    font-weight: 700;
    font-size: var(--font-size)
}

.c-cookie-settings__title+* {
    margin-top: calc(var(--base-space) * 1)
}

.c-cookie-settings__close {
    --transition-duration: .25s;
    position: absolute;
    right: 0;
    top: 25px;
    border-radius: 50%;
    background-color: var(--primary-100);
    color: var(--primary-50);
    padding: 4px;
    width: 48px;
    height: 48px;
    transition: background-color var(--transition-duration) cubic-bezier(.3,.15,.18,1),color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.c-cookie-settings__close:hover {
    --transition-duration: .4s;
    background-color: var(--primary-50);
    color: var(--neutral-100)
}

.c-error {
    --top: 9;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width: 48em) {
    .c-error {
        --top: 21.25;
        --bot: 21.25
    }
}

.c-error__container {
    max-width: 540px;
    margin: 0 auto;
    text-align: center;
    padding: calc(var(--base-space) * 7.5) calc(var(--base-space) * 1);
    background-color: var(--neutral-100);
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow)
}

@media (min-width: 48em) {
    .c-error__container {
        padding:calc(var(--base-space) * 7.5)
    }
}

.c-error__container h1+* {
    margin-top: calc(var(--base-space) * 4.5)
}

.c-footer {
    position: relative;
    z-index: 0;
    overflow: hidden
}

.c-footer__container {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    grid-template-areas: "links" "form" "details" "policy" "social" "mobileEscape"
}

@media (min-width: 48em) {
    .c-footer__container {
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-template-areas: "grouped form" "grouped form" "grouped form" "policy policy"
    }
}

.c-footer__grouped {
    display: contents
}

@media (min-width: 48em) {
    .c-footer__grouped {
        display:block;
        grid-area: grouped
    }
}

.c-footer__dark-bg {
    grid-area: 1/1/3/-1;
    position: relative;
    z-index: -1
}

@media (min-width: 48em) {
    .c-footer__dark-bg {
        grid-area:1/1/4/-1
    }
}

.c-footer__dark-bg:before {
    content: "";
    background-color: inherit;
    position: absolute;
    top: 0;
    left: 50%;
    width: calc(100 * var(--1vw, 1vw));
    height: 100%;
    transform: translate(-50%)
}

.c-footer__title {
    color: var(--secondary-50);
    font-size: var(--h5);
    line-height: var(--lh-h5);
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    margin-top: 0
}

.c-footer__title+* {
    margin-top: 32px
}

.c-footer__title+.c-social {
    margin-top: 24px
}

.c-footer__link-container {
    grid-area: links;
    padding-top: 64px;
    color: var(--neutral-100)
}

@media (min-width: 48em) {
    .c-footer__link-container {
        padding-top:128px
    }
}

.c-footer__links li+li {
    margin-top: 8px
}

.c-footer__links a {
    --trans-duration: .25s;
    display: block;
    position: relative;
    padding: 16px 0;
    color: var(--h-text--color);
    text-decoration: none
}

.c-footer__links a:hover {
    --trans-duration: .4s
}

.c-footer__links a:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background-image: url(https://www.ocorian.com/themes/escape/ocorian/images/logo-bug.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    transform: translate(-100%,-50%) rotate(-360deg);
    opacity: 0;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1),opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-footer__links a:hover:before {
    opacity: 1;
    transform: translateY(-50%)
}

.c-footer__links a:after {
    display: none
}

.c-footer__links a span {
    display: block;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-footer__links a:hover span {
    transform: translate(32px)
}

.c-footer__social {
    grid-area: social;
    color: var(--h-text--color, var(--neutral-50));
    font-size: var(--md-font-size)
}

@media (min-width: 48em) {
    .c-footer__social {
        padding-top:86px;
        color: var(--neutral-100)
    }
}

.c-footer__social .c-social {
    --hover-color: var(--primary-50)
}

@media (min-width: 48em) {
    .c-footer__social .c-social {
        --hover-color: var(--secondary-50)
    }
}

@media (max-width: 47.9375em) {
    .c-footer__social .c-footer__title {
        display:none
    }

    .c-footer__social .c-footer__title+* {
        margin-top: 0
    }
}

.c-footer__details {
    margin-top: 64px;
    grid-area: details
}

@media (min-width: 48em) {
    .c-footer__details {
        color:var(--neutral-100);
        margin-top: 106px;
        padding-bottom: var(--md-block-space)
    }
}

.c-footer__logo,.c-footer__logo svg {
    width: 157px;
    height: 19px
}

@media (min-width: 48em) {
    .c-footer__logo,.c-footer__logo svg {
        width:360px;
        height: 41px
    }
}

.c-footer__logo+* {
    margin-top: 24px
}

@media (min-width: 48em) {
    .c-footer__logo+* {
        margin-top:32px
    }
}

@media (max-width: 47.9375em) {
    .c-footer__logo-white {
        display:none
    }
}

@media (min-width: 48em) {
    .c-footer__logo-dark {
        display:none
    }
}

.c-footer__newsletter {
    grid-area: form;
    padding-top: 64px;
    padding-bottom: var(--md-block-space)
}

@media (min-width: 48em) {
    .c-footer__newsletter {
        padding-top:128px;
        padding-left: 96px
    }
}

.c-footer__newsletter .c-footer__title {
    padding-bottom: 16px
}

.c-footer__newsletter-intro+* {
    margin-top: 32px
}

.c-footer__bar {
    grid-area: policy;
    padding-top: 40px;
    padding-bottom: 56px
}

@media (min-width: 48em) {
    .c-footer__bar {
        padding-top:23px;
        padding-bottom: 32px
    }
}

.c-footer__bar-links {
    font-size: var(--md-font-size)
}

@media (min-width: 48em) {
    .c-footer__bar-links {
        display:flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 16px
    }
}

@media (max-width: 47.9375em) {
    .c-footer__bar-links li+li {
        margin-top:32px
    }
}

.c-footer__bar-links a {
    color: var(--neutral-0);
    text-decoration: none
}

@media (max-width: 47.9375em) {
    .c-footer__bar-links a {
        display:block
    }
}

.c-footer__bar-links a:hover {
    text-decoration: underline
}

.c-footer__bar-links a:after {
    display: none
}

@media (max-width: 47.9375em) {
    .c-footer__escape {
        display:none
    }
}

@media (min-width: 48em) {
    .c-footer__escape {
        width:100%;
        text-align: center
    }
}

.c-footer__escape--mobile {
    grid-area: mobileEscape;
    padding-top: 56px;
    display: block;
    padding-bottom: 64px;
    font-size: var(--md-font-size)
}

@media (min-width: 48em) {
    .c-footer__escape--mobile {
        display:none
    }
}

.c-footer__escape--mobile a {
    color: var(--neutral-0);
    text-decoration: none
}

.c-footer__escape--mobile a:hover {
    color: var(--primary-50)
}

.c-form-section {
    --top: 7.5;
    --bot: 7.5;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width: 48em) {
    .c-form-section {
        --top: 15;
        --bot: 15
    }
}

.c-form-section:not([class*=h-background])+*:not([class*=h-background]) {
    --top: 0
}

@keyframes fadeInError {
    0% {
        opacity: 0
    }
}

.c-form {
    --hover-bg: var(--primary-100);
    --active-color: var(--primary-50);
    --icon-active: var(--neutral-100);
    --color: var(--h-text-color, var(--neutral-50));
    --background: var(--neutral-75);
    --border: var(--neutral-75)
}

.h-background--neutral-25 .c-form,.c-form.h-background--neutral-25 {
    --hover-bg: var(--secondary-100);
    --active-color: var(--secondary-50);
    --icon-active: var(--neutral-25)
}

.c-form label,.c-form legend {
    display: block;
    font-weight: 500;
    color: var(--color)
}

.c-form label+*,.c-form legend+* {
    margin-top: calc(var(--base-space) * 1.5)
}

.c-form legend {
    color: var(--active-color)
}

.c-form textarea {
    resize: vertical;
    min-height: 256px
}

.c-form textarea,.c-form input,.c-form select {
    --trans-duration: .25s;
    display: block;
    width: 100%;
    box-shadow: none;
    font-family: cera_pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;
    font-size: 1.866rem;
    border: 2px solid var(--border);
    background-color: var(--background);
    color: var(--neutral-0);
    border-radius: var(--border-radius);
    padding: calc(var(--base-space) * 1.75) calc(var(--base-space) * 2);
    line-height: 1;
    transition: border-color var(--trans-duration) cubic-bezier(.3,.15,.18,1),background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-form textarea:focus,.c-form textarea:hover,.c-form input:focus,.c-form input:hover,.c-form select:focus,.c-form select:hover {
    --trans-duration: .4s;
    --background: var(--hover-bg);
    --border: var(--active-color);
    outline: 0;
    transition-duration: .4s
}

.c-form__group+.c-form__group {
    margin-top: calc(var(--base-space) * 4)
}

@media (max-width: 34.9375em) {
    .c-form__group--submit .u-btn {
        width:100%
    }
}

.c-form__group+.c-form__group--submit {
    margin-top: calc(var(--base-space) * 7)
}

.c-form__group+.c-form__group--fieldset,.c-form__group--fieldset+.c-form__group {
    margin-top: calc(var(--base-space) * 5)
}

.c-form fieldset.c-form__group {
    border: 0;
    padding: 0
}

.c-form__group[data-error],.c-form .u-input-btn[data-error] {
    --active-color: var(--status-error)
}

.c-form__group[data-error] textarea,.c-form__group[data-error] input,.c-form__group[data-error] select,.c-form .u-input-btn[data-error] textarea,.c-form .u-input-btn[data-error] input,.c-form .u-input-btn[data-error] select {
    --border: var(--active-color)
}

.c-form__select-group,.c-form__date-picker {
    position: relative;
    z-index: 10
}

.c-form__select-group~.c-form__select-group,.c-form__select-group~.c-form__date-picker,.c-form__date-picker~.c-form__select-group,.c-form__date-picker~.c-form__date-picker {
    z-index: 9
}

.c-form__select-group~.c-form__select-group~.c-form__select-group,.c-form__select-group~.c-form__select-group~.c-form__date-picker,.c-form__select-group~.c-form__date-picker~.c-form__select-group,.c-form__select-group~.c-form__date-picker~.c-form__date-picker,.c-form__date-picker~.c-form__select-group~.c-form__select-group,.c-form__date-picker~.c-form__select-group~.c-form__date-picker,.c-form__date-picker~.c-form__date-picker~.c-form__select-group,.c-form__date-picker~.c-form__date-picker~.c-form__date-picker {
    z-index: 8
}

.c-form__select-group~.c-form__select-group~.c-form__select-group~.c-form__select-group,.c-form__select-group~.c-form__select-group~.c-form__select-group~.c-form__date-picker,.c-form__select-group~.c-form__select-group~.c-form__date-picker~.c-form__select-group,.c-form__select-group~.c-form__select-group~.c-form__date-picker~.c-form__date-picker,.c-form__select-group~.c-form__date-picker~.c-form__select-group~.c-form__select-group,.c-form__select-group~.c-form__date-picker~.c-form__select-group~.c-form__date-picker,.c-form__select-group~.c-form__date-picker~.c-form__date-picker~.c-form__select-group,.c-form__select-group~.c-form__date-picker~.c-form__date-picker~.c-form__date-picker,.c-form__date-picker~.c-form__select-group~.c-form__select-group~.c-form__select-group,.c-form__date-picker~.c-form__select-group~.c-form__select-group~.c-form__date-picker,.c-form__date-picker~.c-form__select-group~.c-form__date-picker~.c-form__select-group,.c-form__date-picker~.c-form__select-group~.c-form__date-picker~.c-form__date-picker,.c-form__date-picker~.c-form__date-picker~.c-form__select-group~.c-form__select-group,.c-form__date-picker~.c-form__date-picker~.c-form__select-group~.c-form__date-picker,.c-form__date-picker~.c-form__date-picker~.c-form__date-picker~.c-form__select-group,.c-form__date-picker~.c-form__date-picker~.c-form__date-picker~.c-form__date-picker {
    z-index: 7
}

.c-form__message {
    margin-top: calc(var(--base-space) * 1);
    padding: calc(var(--base-space) * 1) calc(var(--base-space) * 2);
    display: none;
    border-radius: var(--border-radius);
    background-color: var(--status-error);
    color: var(--neutral-100)
}

.c-form__group[data-error] .c-form__message,.u-input-btn[data-error] .c-form__message {
    display: block
}

.c-form__errors {
    position: absolute;
    padding: calc(var(--base-space) * 2) calc(var(--base-space) * 2) calc(var(--base-space) * 2.5);
    border-radius: var(--border-radius);
    background-color: var(--status-error);
    color: var(--neutral-100);
    height: 0;
    opacity: 0;
    transition: opacity .4s cubic-bezier(.3,.15,.18,1)
}

.c-form__errors+* {
    margin-top: calc(var(--base-space) * 4)
}

.c-form__errors p {
    font-size: 1.86667rem
}

.c-form__errors p+ul {
    margin-top: calc(var(--base-space) * 2.5)
}

.c-form__errors ul:not([data-unstyled]):not([data-minimal]):not(.u-tick-list) {
    margin-top: calc(var(--base-space) * 2);
    padding-left: 10px
}

.c-form__errors ul:not([data-unstyled]):not([data-minimal]):not(.u-tick-list) li:before {
    background-color: var(--neutral-100)!important;
    width: 4px;
    height: 4px;
    left: -10px;
    top: 9px
}

.c-form__errors ul:not([data-unstyled]):not([data-minimal]):not(.u-tick-list) li+li {
    margin-top: 0
}

.c-form__errors a {
    color: currentColor
}

.c-form__errors[data-active] {
    position: relative;
    height: auto;
    opacity: 1
}

.c-form__input-list {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(var(--base-space) * -2);
    margin-right: 0;
    width: calc(100% + 32px)
}

.c-form__input-list>* {
    margin-left: calc(var(--base-space) * 2);
    margin-right: calc(var(--base-space) * 2);
    padding: calc(var(--base-space) * .5) 0
}

.c-form__vertical-list>*+* {
    margin-top: calc(var(--base-space) * 2)
}

.c-form__search {
    position: relative
}

.c-form__search button {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 48px;
    background-color: transparent;
    color: var(--neutral-25);
    transition: color .25s cubic-bezier(.3,.15,.18,1)
}

.c-form__search button:hover {
    color: var(--primary-50);
    transition-duration: .4s
}

.c-form__search button svg {
    width: 24px;
    height: 24px
}

.c-checkbox {
    --transition-duration: .25s;
    display: flex;
    align-items: center
}

.c-checkbox input {
    position: absolute!important;
    height: 1px;
    width: 1px!important;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px)
}

.c-checkbox input:hover+label,.c-checkbox input+label:hover,.c-checkbox input:focus+label,.c-checkbox input:focus-visible+label {
    --transition-duration: .4s
}

.c-checkbox input:hover+label,.c-checkbox input+label:hover {
    cursor: pointer
}

.c-checkbox input.focus-visible+label {
    --transition-duration: .4s
}

.c-checkbox p label {
    font-weight: 400;
    display: inline
}

.c-checkbox p label+* {
    margin-top: 0
}

.c-checkbox input+label {
    position: relative;
    padding-left: 32px;
    text-transform: none;
    letter-spacing: 0;
    font-weight: 400;
    font-size: var(--small-font-size)
}

.c-checkbox input+label>* {
    pointer-events: none
}

.c-checkbox input+label a {
    pointer-events: auto
}

.c-checkbox input+label:before,.c-checkbox input+label svg {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 24px;
    height: 24px
}

.c-checkbox input+label svg {
    left: 0;
    width: 24px;
    height: 24px;
    color: var(--neutral-25);
    opacity: 0;
    transition: color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.c-checkbox input+label:before {
    content: "";
    border: 2px solid var(--neutral-50);
    border-radius: calc(var(--border-radius) / 2);
    background-color: transparent;
    transition: border-color var(--transition-duration) cubic-bezier(.3,.15,.18,1),background-color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.h-background--neutral-25 .c-checkbox input+label:before {
    border-color: var(--active-color)
}

.c-form .c-checkbox input+label+p {
    margin-top: 0
}

.c-checkbox p a {
    color: var(--h-text-color, var(--neutral-0))
}

.c-checkbox input:focus+label:before,.c-checkbox input:hover+label:before,.c-checkbox input+label:hover:before {
    border-color: var(--active-color);
    background-color: var(--hover-bg)
}

.c-checkbox input:checked+label:before {
    border-color: var(--active-color);
    background-color: var(--active-color)
}

.c-checkbox input:checked+label svg {
    opacity: 1;
    color: var(--icon-active)
}

.c-checkbox input:checked+label:hover:before {
    background-color: var(--hover-bg)
}

.c-checkbox input:checked+label:hover svg {
    color: var(--neutral-25)
}

:root {
    --duet-color-primary: var(--primary-50);
    --duet-color-text: var(--neutral-0);
    --duet-color-text-active: var(--neutral-100);
    --duet-color-placeholder: var(--neutral-50);
    --duet-color-button: var(--neutral-75);
    --duet-color-surface: var(--neutral-100);
    --duet-color-overlay: var(--neutral-o-60);
    --duet-color-border: var(--neutral-50);
    --duet-font-normal: 400;
    --duet-font-bold: 700;
    --duet-radius: 0;
    --duet-z-index: 60
}

.duet-date {
    box-sizing: border-box;
    color: var(--duet-color-text);
    display: block;
    font-family: var(--duet-font);
    margin: 0;
    position: relative;
    text-align: left;
    width: 100%
}

.duet-date *,.duet-date *:before,.duet-date *:after {
    box-sizing: border-box;
    margin: 0;
    width: auto
}

.duet-date__input {
    -webkit-appearance: none;
    appearance: none;
    background: var(--duet-color-surface);
    border: 1px solid var(--duet-color-border, var(--duet-color-text));
    border-radius: var(--duet-radius);
    color: var(--duet-color-text);
    float: none;
    font-family: var(--duet-font);
    font-size: 100%;
    line-height: normal;
    padding: 14px 60px 14px 14px;
    width: 100%
}

.duet-date__input:focus {
    border-color: var(--duet-color-primary);
    box-shadow: 0 0 0 1px var(--duet-color-primary);
    outline: 0
}

.duet-date__input::-webkit-input-placeholder {
    color: var(--duet-color-placeholder);
    opacity: 1
}

.duet-date__input:-moz-placeholder {
    color: var(--duet-color-placeholder);
    opacity: 1
}

.duet-date__input:-ms-input-placeholder {
    color: var(--duet-color-placeholder)
}

.duet-date__input-wrapper {
    position: relative;
    width: 100%
}

.duet-date__toggle {
    -moz-appearance: none;
    -webkit-appearance: none;
    -webkit-user-select: none;
    align-items: center;
    appearance: none;
    background: var(--duet-color-button);
    border: 0;
    border-radius: 0;
    border-bottom-right-radius: var(--duet-radius);
    border-top-right-radius: var(--duet-radius);
    box-shadow: inset 1px 0 #0000001a;
    color: var(--duet-color-text);
    cursor: pointer;
    display: flex;
    height: calc(100% - 2px);
    justify-content: center;
    padding: 0;
    position: absolute;
    right: 1px;
    top: 1px;
    user-select: none;
    width: 48px;
    z-index: 2
}

.duet-date__toggle:focus {
    box-shadow: 0 0 0 2px var(--duet-color-primary);
    outline: 0
}

.duet-date__toggle-icon {
    display: flex;
    flex-basis: 100%;
    justify-content: center;
    align-items: center;
    color: var(--neutral-0)
}

.duet-date__dialog {
    display: flex;
    left: 0;
    min-width: 320px;
    opacity: 0;
    position: absolute;
    top: 100%;
    transform: scale(.96) translateZ(0) translateY(-20px);
    transform-origin: top right;
    transition: transform .3s ease,opacity .3s ease,visibility .3s ease;
    visibility: hidden;
    width: 100%;
    will-change: transform,opacity,visibility;
    z-index: var(--duet-z-index)
}

@media (max-width: 35.9375em) {
    .duet-date__dialog {
        background:var(--duet-color-overlay);
        bottom: 0;
        position: fixed;
        right: 0;
        top: 0;
        transform: translateZ(0);
        transform-origin: bottom center
    }
}

.duet-date__dialog.is-left {
    left: auto;
    right: 0;
    width: auto
}

.duet-date__dialog.is-active {
    opacity: 1;
    transform: scale(1.0001) translateZ(0) translateY(0);
    visibility: visible
}

.duet-date__dialog-content {
    background: var(--duet-color-surface);
    border: 1px solid rgba(0,0,0,.1);
    border-radius: var(--duet-radius);
    box-shadow: 0 4px 10px #0000001a;
    margin-left: auto;
    margin-top: 8px;
    max-width: 310px;
    min-width: 290px;
    padding: 16px 16px 20px;
    position: relative;
    transform: none;
    width: 100%;
    z-index: var(--duet-z-index)
}

@media (max-width: 35.9375em) {
    .duet-date__dialog-content {
        border:0;
        border-radius: 0;
        border-top-left-radius: var(--duet-radius);
        border-top-right-radius: var(--duet-radius);
        bottom: 0;
        left: 0;
        margin: 0;
        max-width: none;
        min-height: 26em;
        opacity: 0;
        padding: 0 8% 20px;
        position: absolute;
        transform: translateZ(0) translateY(100%);
        transition: transform .4s ease,opacity .4s ease,visibility .4s ease;
        visibility: hidden;
        will-change: transform,opacity,visibility
    }

    .is-active .duet-date__dialog-content {
        opacity: 1;
        transform: translateZ(0) translateY(0);
        visibility: visible
    }
}

.duet-date__table {
    border-collapse: collapse;
    border-spacing: 0;
    color: var(--duet-color-text);
    font-size: 1.6rem;
    font-weight: var(--duet-font-normal);
    line-height: 1.25;
    text-align: center;
    width: 100%
}

.duet-date__table-header {
    font-size: 1.2rem;
    font-weight: var(--duet-font-bold);
    letter-spacing: 1px;
    line-height: 1.25;
    padding-bottom: 8px;
    text-decoration: none;
    text-transform: uppercase
}

.duet-date__cell {
    text-align: center
}

.duet-date__day {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    border-radius: 50%;
    color: var(--duet-color-text);
    cursor: pointer;
    display: inline-block;
    font-family: var(--duet-font);
    font-size: var(--small-font-size);
    font-variant-numeric: tabular-nums;
    font-weight: var(--duet-font-normal);
    height: 36px;
    line-height: 1.25;
    padding: 0 0 1px;
    position: relative;
    text-align: center;
    vertical-align: middle;
    width: 36px;
    z-index: 1
}

.duet-date__day.is-today {
    box-shadow: 0 0 0 1px var(--duet-color-primary);
    position: relative;
    z-index: 200
}

.duet-date__day:hover:before,.duet-date__day.is-today:before {
    background: var(--duet-color-primary);
    border-radius: 50%;
    bottom: 0;
    content: "";
    left: 0;
    opacity: .06;
    position: absolute;
    right: 0;
    top: 0
}

.duet-date__day[aria-pressed=true],.duet-date__day:focus {
    background: var(--duet-color-primary);
    box-shadow: none;
    color: var(--duet-color-text-active);
    outline: 0
}

.duet-date__day:active {
    background: var(--duet-color-primary);
    box-shadow: 0 0 5px var(--duet-color-primary);
    color: var(--duet-color-text-active);
    z-index: 200
}

.duet-date__day:focus {
    box-shadow: 0 0 5px var(--duet-color-primary);
    z-index: 200
}

.duet-date__day.is-disabled {
    background: transparent;
    box-shadow: none;
    color: var(--duet-color-text);
    cursor: default;
    opacity: .5
}

.duet-date__day.is-disabled:before {
    display: none
}

.duet-date__day.is-outside {
    background: var(--duet-color-button);
    box-shadow: none;
    color: var(--duet-color-text);
    cursor: default;
    opacity: .6;
    pointer-events: none
}

.duet-date__day.is-outside:before {
    display: none
}

.duet-date__header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 16px;
    width: 100%
}

.duet-date__nav {
    white-space: nowrap
}

.duet-date__prev,.duet-date__next {
    -moz-appearance: none;
    -webkit-appearance: none;
    align-items: center;
    appearance: none;
    background: var(--duet-color-button);
    border: 0;
    border-radius: 50%;
    color: var(--duet-color-text);
    cursor: pointer;
    display: inline-flex;
    height: 32px;
    justify-content: center;
    margin-left: 8px;
    padding: 0;
    transition: background-color .3s ease;
    width: 32px
}

@media (max-width: 35.9375em) {
    .duet-date__prev,.duet-date__next {
        height:40px;
        width: 40px
    }
}

.duet-date__prev:focus,.duet-date__next:focus {
    box-shadow: 0 0 0 2px var(--duet-color-primary);
    outline: 0
}

.duet-date__prev:active:focus,.duet-date__next:active:focus {
    box-shadow: none
}

.duet-date__prev:disabled,.duet-date__next:disabled {
    cursor: default;
    opacity: .5
}

.duet-date__prev svg,.duet-date__next svg {
    margin: 0 auto
}

.duet-date__select {
    display: inline-flex;
    margin-top: 4px;
    position: relative
}

.duet-date__select span {
    margin-right: 4px
}

.duet-date__select select {
    cursor: pointer;
    font-size: 1.6rem;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2
}

.duet-date__select select:focus+.duet-date__select-label {
    box-shadow: 0 0 0 2px var(--duet-color-primary)
}

.duet-date__select-label {
    align-items: center;
    border-radius: var(--duet-radius);
    color: var(--duet-color-text);
    display: flex;
    font-size: 2rem;
    font-weight: var(--duet-font-bold);
    line-height: 1.25;
    padding: 0 4px 0 8px;
    pointer-events: none;
    position: relative;
    width: 100%;
    z-index: 1
}

.duet-date__select-label svg {
    width: 16px;
    height: 16px
}

.duet-date__mobile {
    align-items: center;
    border-bottom: 1px solid rgba(0,0,0,.12);
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
    margin-left: -10%;
    overflow: hidden;
    padding: 12px 20px;
    position: relative;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 120%
}

@media (min-width: 36em) {
    .duet-date__mobile {
        border:0;
        margin: 0;
        overflow: visible;
        padding: 0;
        position: absolute;
        right: -8px;
        top: -8px;
        width: auto
    }
}

.c-form .duet-date__mobile-heading {
    display: inline-block;
    font-weight: var(--duet-font-bold);
    max-width: 84%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

@media (min-width: 36em) {
    .c-form .duet-date__mobile-heading {
        display:none
    }
}

.duet-date__close {
    -webkit-appearance: none;
    align-items: center;
    appearance: none;
    background: var(--duet-color-button);
    border: 0;
    border-radius: 50%;
    color: var(--duet-color-text);
    cursor: pointer;
    display: flex;
    height: 24px;
    justify-content: center;
    padding: 0;
    width: 24px
}

@media (min-width: 36em) {
    .duet-date__close {
        opacity:0
    }
}

.duet-date__close:focus {
    box-shadow: 0 0 0 2px var(--duet-color-primary);
    outline: none
}

@media (min-width: 36em) {
    .duet-date__close:focus {
        opacity:1
    }
}

.duet-date__close svg {
    margin: 0 auto
}

.duet-date__vhidden {
    border: 0;
    clip: rect(1px,1px,1px,1px);
    height: 1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    top: 0;
    width: 1px
}

.c-form-label {
    position: relative;
    width: 100%
}

.c-form-label label {
    position: absolute;
    top: 1.8em;
    left: 0;
    pointer-events: none;
    transition: transform .25s cubic-bezier(.3,.15,.18,1);
    z-index: 1
}

.c-form-label:focus-within label,.c-form-label[data-active] label {
    transform: scale(.75) translateY(-1.8em);
    transform-origin: left;
    transition-duration: .4s
}

.c-form-label textarea {
    height: 90px;
    will-change: height;
    transition: height .25s cubic-bezier(.3,.15,.18,1)
}

.c-form-label:focus-within textarea,.c-form-label[data-active] textarea {
    height: 250px;
    transition-duration: .25s
}

.c-radio {
    --color: var(--h-text-color, var(--neutral-0));
    --focus-color: var(--secondary-50);
    --transition-duration: .25s
}

.c-radio input {
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px)
}

.c-radio input:hover+label,.c-radio input:focus+label,.c-radio input:focus-visible+label {
    --transition-duration: .4s
}

.c-radio input:hover+label {
    cursor: pointer
}

.c-radio input.focus-visible+label {
    --transition-duration: .4s
}

@media (prefers-reduced-motion: reduce) {
    .c-radio {
        --transition-duration: 1ms
    }
}

.c-radio label {
    user-select: none;
    position: relative;
    padding-left: 32px;
    text-transform: none;
    letter-spacing: 0;
    font-weight: 400;
    font-size: var(--small-font-size)
}

.c-radio label:before,.c-radio label:after {
    content: "";
    position: absolute;
    top: 50%;
    border-radius: 50%;
    transform: translateY(-50%)
}

.c-radio label:before {
    left: 0;
    width: 24px;
    height: 24px;
    border: 2px solid var(--neutral-50);
    background-color: transparent;
    transition: border-color var(--transition-duration) cubic-bezier(.3,.15,.18,1),background-color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.c-radio label:after {
    left: 6px;
    width: 12px;
    height: 12px;
    background-color: var(--active-color);
    opacity: 0;
    transition: opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.h-background--neutral-25 .c-radio label:before {
    border-color: var(--active-color)
}

.c-radio input:checked+label:before {
    border-color: var(--active-color)
}

.c-radio input:checked+label:hover:before {
    background-color: var(--hover-bg)
}

.c-radio input:checked+label:after {
    opacity: 1
}

.c-radio input:focus+label:before,.c-radio input:hover+label:before {
    border-color: var(--active-color);
    background-color: var(--hover-bg)
}

.c-switch {
    --transition-duration: .25s
}

.c-switch input {
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px)
}

.c-switch input:hover+label,.c-switch input:focus+label,.c-switch input:focus-visible+label {
    --transition-duration: .4s
}

.c-switch input:hover+label {
    cursor: pointer
}

.c-switch input.focus-visible+label {
    --transition-duration: .4s
}

@media (prefers-reduced-motion: reduce) {
    .c-switch {
        --transition-duration: 1ms
    }
}

.c-switch label {
    user-select: none;
    position: relative;
    padding-left: 56px;
    text-transform: none;
    letter-spacing: 0;
    font-weight: 400
}

.c-switch label:before,.c-switch label:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.c-switch label:before {
    left: 0;
    width: 48px;
    height: 24px;
    border-radius: 12px;
    border: 2px solid var(--primary-50);
    background-color: transparent;
    transition: background-color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.c-switch label:after {
    left: 5px;
    width: 16px;
    height: 16px;
    border-radius: 8px;
    background-color: var(--primary-50);
    transition: transform var(--transition-duration) cubic-bezier(.3,.15,.18,1),background-color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.c-switch:hover label:before {
    background-color: var(--primary-100)
}

.c-switch input:checked+label:before,.c-switch input:checked+label:hover:before {
    background-color: var(--primary-50)
}

.c-switch input:checked+label:after {
    transform: translateY(-50%) translate(22px);
    background-color: var(--neutral-100)
}

.c-switch input.focus-visible+label:before {
    outline: 2px solid var(--primary-50);
    outline-offset: 2px
}

.c-switch input:focus-visible+label:before {
    outline: 2px solid var(--primary-50);
    outline-offset: 2px
}

.choices {
    position: relative;
    color: var(--neutral-50)
}

.h-background--neutral-25 .choices {
    --hover-bg: var(--secondary-100);
    --active-color: var(--secondary-50);
    --icon-active: var(--neutral-25)
}

.choices:focus {
    outline: none
}

.choices:last-child {
    margin-bottom: 0
}

.choices[data-type*=select-one] {
    cursor: pointer
}

.choices [hidden] {
    display: none!important
}

.choices__inner {
    --trans-duration: .25s;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    background-color: var(--neutral-75);
    padding: calc(var(--base-space) * 1.5) calc(var(--base-space) * 2);
    overflow: hidden;
    border-radius: var(--border-radius);
    border: 2px solid var(--neutral-75);
    color: var(--h-text-color, var(--neutral-50));
    transition: border-color var(--trans-duration) cubic-bezier(.3,.15,.18,1),background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.choices__inner:hover,.choices.is-focused .choices__inner {
    --trans-duration: .4s;
    border-color: var(--active-color);
    background-color: var(--hover-bg)
}

[data-error] .choices__inner {
    border-color: var(--status-error)
}

.choices[data-type*=select-multiple] .choices__inner {
    padding: 25px 0 4px;
    min-height: 67px
}

.choices__inner .choices__placeholder {
    color: transparent
}

.choices__item {
    cursor: default
}

.choices__item--selectable {
    cursor: pointer
}

.choices__item--disabled {
    cursor: not-allowed;
    user-select: none;
    opacity: .5
}

.choices__list {
    margin: 0;
    padding-left: 0;
    list-style: none
}

.choices__list--single {
    display: inline-block;
    width: 100%
}

.choices__list--multiple {
    display: inline
}

.choices__list--dropdown {
    z-index: 2;
    position: absolute;
    width: 100%;
    background-color: var(--h-background-color, var(--neutral-100));
    top: 100%;
    margin-top: min(-2px,-1 * var(--border-radius));
    overflow: hidden;
    word-break: break-all;
    opacity: 0;
    pointer-events: none;
    border: 2px solid var(--active-color);
    color: var(--h-text-color, var(--neutral-0));
    border-top: 0;
    border-bottom-left-radius: var(--border-radius);
    border-bottom-right-radius: var(--border-radius)
}

.choices__list--dropdown.is-active {
    opacity: 1;
    pointer-events: auto
}

.is-flipped .choices__list--dropdown {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: min(-2px,-1 * var(--border-radius));
    border-top: 2px solid var(--active-color);
    border-bottom: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--border-radius);
    border-bottom-right-radius: var(--border-radius)
}

.choices__list--single .choices__item {
    width: 100%
}

.choices__list--multiple .choices__item {
    display: inline-block;
    vertical-align: middle;
    border-radius: 32px;
    padding: 4px 15px;
    font-size: var(--font-size);
    font-weight: 500;
    margin-right: 3px;
    margin-bottom: 3px;
    background-color: var(--neutral-25);
    color: var(--neutral-25);
    word-break: break-all;
    box-sizing: border-box;
    transition: background-color .25s cubic-bezier(.3,.15,.18,1),color .25s cubic-bezier(.3,.15,.18,1)
}

.choices__list--multiple .choices__item:hover {
    transition: background-color .4s cubic-bezier(.3,.15,.18,1),color .4s cubic-bezier(.3,.15,.18,1);
    background-color: var(--hover-bg);
    color: var(--neutral-0)
}

.choices__list--dropdown .choices__list {
    position: relative;
    max-height: 300px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    will-change: scroll-position
}

.choices__list--dropdown .choices__item {
    position: relative;
    padding: 10px
}

.choices__list--dropdown .choices__item--selectable.is-highlighted {
    background-color: var(--hover-bg);
    color: var(--neutral-25)
}

.choices__heading {
    font-size: 1.3rem;
    text-transform: uppercase;
    letter-spacing: .2em;
    font-weight: 700;
    line-height: 1.2;
    padding: 10px;
    color: var(--neutral-0)
}

.choices__list--dropdown .choices__placeholder {
    min-height: 41px
}

.choices__icon {
    pointer-events: none;
    position: absolute;
    top: 48%;
    right: 16px;
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
    color: var(--color)
}

.choices__icon svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 24px;
    height: 24px
}

.choices__inner:hover .choices__icon,.choices.is-focused .choices__inner .choices__icon {
    color: var(--focus-color)
}

[data-error] .choices__icon {
    color: var(--status-error)
}

.choices.is-open .choices__icon {
    transform: translateY(-50%) rotate(180deg)
}

.choices[data-type*=select-multiple] .choices__input {
    padding: 0;
    border-bottom: 0;
    display: inline-block;
    width: auto
}

.choices__button {
    text-indent: -9999px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer
}

.choices[data-type*=select-multiple] .choices__button {
    position: relative;
    display: inline-block;
    margin: 0 -4px 0 8px;
    padding-left: 16px;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);
    background-size: 8px;
    width: 8px;
    line-height: 1;
    opacity: .75;
    border-radius: 0
}

.choices[data-type*=select-multiple] .choices__list--multiple .choices__item:hover .choices__button {
    filter: invert(1)
}

.c-hover-label {
    position: relative
}

.c-hover-label label {
    --trans-duration: .25s;
    position: absolute;
    top: calc(var(--base-space) * 1.5);
    left: calc(var(--base-space) * 1.75);
    padding: 0 4px;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1),color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    z-index: 1;
    color: var(--neutral-50)
}

.c-hover-label label:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%;
    background-color: var(--h-background-color, var(--neutral-100));
    z-index: -1;
    transform: translateY(-85%) scaleX(0);
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    transform-origin: center
}

.c-hover-label label+* {
    margin-top: 0
}

.c-form__search .c-hover-label label {
    font-size: var(--md-font-size);
    top: 15px
}

.c-hover-label[data-active] label {
    --trans-duration: .4s;
    transition-delay: .1s;
    transform: translateY(-85%);
    color: var(--color)
}

.c-hover-label[data-active] label:before {
    transform: translateY(-30%)
}

.c-form__search .c-hover-label[data-active] label {
    transform: translateY(-115%)
}

.c-hover-label[data-active] input,.c-hover-label[data-active] textarea,.c-hover-label[data-active] select,.c-hover-label[data-active] .choices__inner {
    background-color: transparent;
    border-color: var(--active-color);
    color: var(--h-text-color, var(--neutral-0))
}

.hs-submit {
    text-align: left;
    padding: 32px 0 0
}

.hs-form-field {
    margin-top: 32px;
    padding-bottom: 0
}

.hs-form-booleancheckbox {
    margin: 0!important
}

.legal-consent-container .field.hs-form-field,.hs-form-field.hs-fieldtype-booleancheckbox {
    margin-top: 32px;
    margin-bottom: 0!important;
    padding-bottom: 0
}

.legal-consent-container .field.hs-form-field .hs-error-msgs {
    bottom: -24px
}

.c-header-cta {
    box-shadow: var(--box-shadow-light);
    padding: calc(var(--base-space) * 3);
    font-weight: 500;
    letter-spacing: -.01em
}

.c-header-cta p+* {
    margin-top: 24px
}

.c-header-cta .u-btn {
    margin-top: calc(var(--base-space) * 3)
}

.c-header-cta__title {
    font-weight: 700;
    font-size: var(--h5);
    text-transform: uppercase;
    letter-spacing: .1em
}

.c-header-dropdown {
    --trans-duration: .65s;
    --offset: -263px
}

@media (max-width: 63.9375em) {
    .c-header-dropdown {
        backface-visibility:hidden;
        transform: translateZ(0);
        height: 0;
        will-change: height;
        overflow: hidden;
        transition: height .25s cubic-bezier(.3,.15,.18,1)
    }
}

@media (min-width: 64em) {
    .c-header-dropdown {
        pointer-events:none;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        padding-bottom: 90px;
        height: auto!important
    }
}

@media (max-width: 63.9375em) {
    .c-header__item.is-accordion-open .c-header-dropdown {
        height:auto;
        transition: height .4s cubic-bezier(.3,.15,.18,1)
    }
}

.c-header__item.is-active .c-header-dropdown,.c-header-dropdown:focus-within {
    --trans-duration: .9s;
    pointer-events: auto
}

@media (min-width: 64em) {
    .c-header-dropdown:before {
        content:"";
        position: absolute;
        inset: var(--offset) 0 0 0;
        background-color: var(--neutral-100);
        z-index: -1;
        transform: translateY(-100%);
        transition: transform var(--trans-duration) cubic-bezier(.19,1,.22,1)
    }
}

.c-header.is-open .c-header-dropdown:before,.c-header-dropdown:focus-within:before {
    transform: none
}

.c-header-dropdown__links ul+ul {
    margin-top: calc(var(--base-space) * 4)
}

@media (min-width: 64em) {
    .c-header-dropdown__links li+li {
        margin-top:calc(var(--base-space) * 3)
    }
}

@media (max-width: 63.9375em) {
    .c-header-dropdown__links li:not(.c-header-dropdown__links-title)+li {
        border-top:1px solid var(--neutral-75)
    }
}

.c-header-dropdown__links a {
    font-size: var(--md-font-size);
    white-space: normal;
    font-weight: 500;
    color: var(--neutral-50);
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none
}

@media (max-width: 63.9375em) {
    .c-header-dropdown__links a {
        padding:calc(var(--base-space) * 2) 0
    }
}

.c-header-dropdown__links a:after {
    display: none
}

.c-header-dropdown__links a:hover {
    color: var(--primary-50)
}

.c-header-dropdown__links a svg {
    width: 24px;
    height: 24px
}

@media (min-width: 64em) {
    .c-header-dropdown__links a svg {
        display:none
    }
}

.c-header-dropdown__container {
    display: grid;
    gap: 32px;
    padding-top: 32px;
    padding-bottom: 32px;
    grid-column: cover-page
}

@media (min-width: 64em) {
    .c-header-dropdown__container {
        grid-column:content;
        padding-top: 60px;
        padding-bottom: 0;
        gap: 60px;
        grid-template-columns: repeat(4,minmax(0,1fr))
    }
}

@media (min-width: 64em) {
    .c-header-dropdown__container>* {
        opacity:0;
        transform: translateY(-100%);
        transition: transform var(--trans-duration) cubic-bezier(.19,1,.22,1),opacity var(--trans-duration) cubic-bezier(.19,1,.22,1)
    }
}

@media (min-width: 64em) {
    .c-header.is-open .c-header-dropdown__container>* {
        transform:translateY(-100px)
    }

    .c-header.is-open .c-header-dropdown__container>*:nth-child(2) {
        transition-delay: 69ms
    }

    .c-header.is-open .c-header-dropdown__container>*:nth-child(3) {
        transition-delay: 104ms
    }

    .c-header.is-open .c-header-dropdown__container>*:nth-child(4) {
        transition-delay: 139ms
    }
}

.c-header__item.is-active .c-header-dropdown__container>*,.c-header-dropdown:focus-within .c-header-dropdown__container>* {
    opacity: 1;
    transform: none
}

@media (min-width: 64em) {
    .c-header-dropdown__links-container {
        column-count:2;
        column-gap: 50px;
    }
}

@media (min-width: 64em) {
    .c-header-dropdown__l;inks-container:has(ul:first-child:last-child) {
        column-count:1
    }
}

.c-header-dropdown__links-container ul:not(:first-child:last-child) {
    break-inside: avoid;
}

.c-header-dropdown__links:not(:last-child) {
    grid-column: span 2;
}

.c-header-dropdown__links:nth-child(2):last-child {
    grid-column: span 3;
}

.c-header-dropdown__links:not(:last-child):has(.c-header-dropdown__links-container ul:first-child:last-child) {
    grid-column: span 1;
}

@media (min-width: 64em) {
    .c-header-dropdown__links:nth-child(2):last-child .c-header-dropdown__links-container {
        column-count:3;
    }
}

@media (min-width: 48em) {
    .c-header-dropdown__links:nth-child(3):last-child .c-header-dropdown__links-container {
        column-count:1;
    }
}

.c-header-dropdown__title {
    font-size: var(--h5);
    line-height: 1.4;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .1em;
}

.c-header-dropdown__title+* {
    margin-top: calc(var(--base-space) * 1)
}

@media (min-width: 64em) {
    .c-header-dropdown__title+* {
        margin-top:calc(var(--base-space) * 4);
    }
}

@media (max-width: 47.9375em) {
    .c-header-dropdown__title+* ul:first-child .c-header-dropdown__links-title {
        margin-top:calc(var(--base-space) * 2);
    }
}

.c-header-dropdown__links-title {
    color: var(--primary-50);
    font-weight: 700;
}

.c-header-dropdown__links-title+* {
    margin-top: calc(var(--base-space) * 1)!important;
}

.c-header-search {
    --trans-duration: .6s;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    padding: 23px 0 150px;
    border: 0;
    background-color: transparent;
    pointer-events: none;
    max-width: calc(var(--1vw, 1vw) * 100);
    width: 100vw;
    max-height: none;
    bottom: auto;
    overflow: visible;
    gap: 0;
}

@media (min-width: 64em) {
    .c-header-search {
        padding-top:75px;
        padding-bottom: 200px;
    }
}

.c-header-search::backdrop {
    background-color: #0009;
}

.c-header-search[open] {
    --trans-duration: .9s;
    pointer-events: auto;
}

.c-header-search:before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--neutral-100);
    z-index: -1;
    transform: translateY(-100%);
    transition: transform var(--trans-duration) cubic-bezier(.19,1,.22,1);
}

.c-header-search[open]:before {
    transform: none;
}

.c-header-search .c-header__logo-color {
    fill: var(--neutral-50);
}

.c-header-search__container {
    transform: translateY(-100%);
    opacity: 0;
    padding-top: 138px;
    transition: transform var(--trans-duration) cubic-bezier(.19,1,.22,1),opacity var(--trans-duration) cubic-bezier(.19,1,.22,1)
}

.c-header-search[open] .c-header-search__container {
    transform: none;
    opacity: 1
}

.c-header-search__close-btn-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    opacity: 0;
    pointer-events: none;
    position: relative;
    padding-bottom: 23px;
    transition: opacity var(--trans-duration) cubic-bezier(.19,1,.22,1)
}

@media (min-width: 48em) {
    .c-header-search__close-btn-wrap {
        padding-bottom:38px
    }
}

.c-header-search__close-btn-wrap:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--neutral-0)
}

.c-header-search[open] .c-header-search__close-btn-wrap {
    opacity: 1;
    pointer-events: auto
}

.c-header-search__close-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    background-color: transparent
}

.c-header-search__close-btn svg {
    width: 24px;
    height: 24px
}

.c-header-search__close-btn:focus-visible {
    outline: 1px solid var(--primary-50)
}

.c-header-search__title {
    font-size: var(--h3);
    color: var(--primary-50);
    padding-bottom: calc(var(--base-space) * 3)
}

@media (min-width: 48em) {
    .c-header-search__title {
        padding-bottom:calc(var(--base-space) * 6)
    }
}

@media (max-width: 47.9375em) {
    .c-header-search__title {
        text-align:center
    }
}

.c-header-search__input {
    display: flex;
    flex-direction: column;
    gap: calc(var(--base-space) * 2)
}

@media (min-width: 48em) {
    .c-header-search__input {
        flex-direction:row;
        align-items: center;
        gap: calc(var(--base-space) * 1)
    }
}

.c-header-search__input input {
    background-color: var(--neutral-75);
    border-radius: var(--border-radius);
    border: 0;
    padding: calc(var(--base-space) * 2);
    font-size: var(--md-font-size);
    font-weight: 700;
    flex: 1 1 100%;
    line-height: 1.5
}

.c-header-search__input input::placeholder {
    color: var(--neutral-0)
}

.c-search__results-box .results--count {
    text-transform: uppercase;
    font-weight: 700;
    padding-right: 20px
}

@media (max-width: 47.9375em) {
    .c-search__results-box .results--count {
        display:block;
    }
}

.c-search__row {
    margin-bottom: 24px;
}

.c-search__row .node__content {
    margin: 15px 0;
}

.c-search__row h4.h-text--primary-50 a {
    text-decoration: none!important;
}

.c-search__row span.u-chip {
    float: right;
}

.c-header {
    position: relative;
}

.c-header__wrap {
  position: absolute;
  z-index: 20;
  top: 0;
  left: 0;
  width: 100%;
}

.c-header__container {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,48px) minmax(0,72px);
    grid-template-areas: "logo search mobbtn" "line line line" "dropdown dropdown dropdown";
    padding-top: 12px;
    align-items: center;
    z-index: 1
}

@media (min-width: 64em) {
    .c-header__container {
        padding-top:calc(var(--base-space) * 8);
        grid-template-columns: minmax(0,4fr) minmax(0,6fr) minmax(0,1fr) minmax(0,1fr);
        grid-template-areas: "logo subnav language search" "line line line line" "nav nav contact contact"
    }
}

.c-header__container:before {
    grid-area: line;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: var(--neutral-100);
    transition: background-color .25s cubic-bezier(.3,.15,.18,1);
    margin-top: 12px
}

@media (min-width: 64em) {
    .c-header__container:before {
        margin:30px 0 32px
    }
}

@media (max-width: 63.9375em) {
    .c-header__container:after {
        content:"";
        position: absolute;
        inset: 0;
        background-color: var(--neutral-100);
        z-index: -1;
        opacity: 0
    }
}

.c-header.is-open .c-header__container:after {
    opacity: 1
}

.c-header.is-open .c-header__container:before,.c-header:has(.c-header-dropdown:focus-within) .c-header__container:before {
    background-color: var(--neutral-0);
    transition-duration: .4s
}

.c-header__logo {
    display: block;
    grid-area: logo;
    height: 20px
}

@media (min-width: 64em) {
    .c-header__logo {
        height:37px;
        margin: 0
    }
}

.c-header__logo svg {
    width: 172px;
    height: 20px
}

@media (min-width: 64em) {
    .c-header__logo svg {
        width:316px;
        height: 37px
    }
}

.c-header__logo-color {
    fill: var(--neutral-100)
}

.c-header.is-open .c-header__logo-color,.c-header:has(.c-header-dropdown:focus-within) .c-header__logo-color {
    fill: var(--neutral-50)
}

.c-header__button,.c-header__button-link {
    --trans-duration: .25s;
    display: flex;
    align-items: center;
    background-color: transparent;
    color: var(--neutral-100);
    padding: calc(var(--base-space) * 2) 0;
    line-height: 1.5;
    font-weight: 700;
    text-decoration: none
}

@media (max-width: 63.9375em) {
    .c-header__button,.c-header__button-link {
        width:100%;
        justify-content: space-between;
        border-bottom: 1px solid var(--neutral-75);
        padding: calc(var(--base-space) * 1.75) 0
    }
}

.c-header__button:hover,.c-header__button:focus-visible,.c-header__button-link:hover,.c-header__button-link:focus-visible {
    --trans-duration: .4s;
    color: var(--primary-50)
}

.c-header__button>*+*,.c-header__button-link>*+* {
    margin-left: calc(var(--base-space) * 1)
}

.c-header__button svg,.c-header__button-link svg {
    width: 24px;
    height: 24px;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-header__button[data-active] svg,.c-header__button-link[data-active] svg {
    transform: rotateX(180deg)
}

.c-header.is-open .c-header__button:hover,.c-header.is-open .c-header__button:focus-visible,.c-header.is-open .c-header__button[data-active],.c-header.is-open .c-header__button-link:hover,.c-header.is-open .c-header__button-link:focus-visible,.c-header.is-open .c-header__button-link[data-active],.c-header:has(.c-header-dropdown:focus-within) .c-header__button:hover,.c-header:has(.c-header-dropdown:focus-within) .c-header__button:focus-visible,.c-header:has(.c-header-dropdown:focus-within) .c-header__button[data-active],.c-header:has(.c-header-dropdown:focus-within) .c-header__button-link:hover,.c-header:has(.c-header-dropdown:focus-within) .c-header__button-link:focus-visible,.c-header:has(.c-header-dropdown:focus-within) .c-header__button-link[data-active] {
    color: var(--primary-50)
}

.c-header__item:focus-within .c-header__button {
    color: var(--primary-50)!important
}

.c-header__item:focus-within .c-header__button svg {
    transform: rotateX(180deg)
}

@media (min-width: 64em) {
    .c-header__mobile-icon {
        display:none
    }
}

.c-header__search {
    grid-area: search;
    position: relative;
    display: flex
}

.c-header__search svg {
    width: 24px;
    height: 24px;
    flex: 0 0 24px
}

.c-header__search-btn {
    --trans-duration: .25s;
    background-color: transparent;
    color: var(--neutral-100);
    width: 48px;
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center
}

@media (min-width: 64em) {
    .c-header__search-btn {
        width:100%;
        height: 100%;
        justify-content: flex-end
    }
}

.c-header__search-btn:after {
    display: none
}

.c-header__search-btn:hover,.c-header__search-btn:focus-visible {
    --trans-duration: .4s;
    color: var(--primary-50)
}

.c-header__mobile-btn {
    grid-area: mobbtn;
    margin-left: 24px;
    color: var(--neutral-100)
}

.c-header__mobile-btn:hover {
    color: var(--primary-50)
}

@media (min-width: 64em) {
    .c-header__mobile-btn {
        display:none
    }
}

.c-header.is-open .c-header__search-btn,.c-header.is-open .c-header__mobile-btn {
    color: var(--neutral-0)
}

.c-header.is-open .c-header__search-btn:hover,.c-header.is-open .c-header__search-btn:focus-visible,.c-header.is-open .c-header__mobile-btn:hover,.c-header.is-open .c-header__mobile-btn:focus-visible {
    color: var(--primary-50)
}

@media (max-width: 63.9375em) {
    .c-header__mobile-container {
        position:absolute;
        top: 73px;
        left: 0;
        width: 100%;
        height: calc(var(--1vh, 1vh) * 100 - 73px);
        overflow-y: auto;
        overflow-x: hidden;
        padding: 20px 1.2rem 24px;
        z-index: -1;
        background-color: var(--neutral-100);
        display: flex;
        flex-direction: column;
        transform: translateY(-120%);
        transition: transform .45s cubic-bezier(.215,.61,.355,1)
    }
}

@media (min-width: 64em) {
    .c-header__mobile-container {
        display:contents
    }
}

@media (max-width: 63.9375em) {
    .c-sticky~.dialog-off-canvas-main-canvas .c-header__mobile-container {
        height:calc(var(--1vh, 1vh) * 100 - 73px - 60px)
    }
}

@media (max-width: 63.9375em) {
    .c-header.is-open .c-header__mobile-container {
        transform:none;
        transition-duration: .65s
    }
}

.c-header__subnav {
    grid-area: subnav;
    order: 1;
    transition: opacity .25s cubic-bezier(.3,.15,.18,1)
}

@media (min-width: 64em) {
    .c-header__subnav>ul {
        display:flex;
        align-items: center;
        gap: calc(var(--base-space) * 5);
        justify-content: flex-end
    }
}

@media (min-width: 64em) {
    .c-header__subnav .c-header__button-link,.c-header__subnav .c-header__button,.c-header__language-select .c-header__button {
        font-size:var(--md-font-size);
        font-weight: 500
    }
}

.c-header__language-select .c-header__button {
    border-bottom: 0
}

.c-header__subnav .c-header__button:before,.c-header__language-select .c-header__button:before {
    content: "";
    position: absolute;
    inset: 0 calc(var(--base-space) * -2) 0 calc(var(--base-space) * -2);
    background-color: var(--neutral-100);
    border-top-left-radius: var(--border-radius);
    border-top-right-radius: var(--border-radius);
    z-index: -1;
    opacity: 0;
    transition: opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

@media (min-width: 64em) {
    .c-header.is-open .c-header__subnav .c-header__button:before,.c-header.is-open .c-header__language-select .c-header__button:before {
        box-shadow:var(--box-shadow-light)
    }
}

.c-header__subnav .c-header__button[data-active],.c-header__language-select .c-header__button[data-active],.c-header__subitem:has(ul:focus-within) .c-header__button,.c-header__language-select:has(ul:focus-within) .c-header__button {
    color: var(--neutral-0)
}

.c-header__subnav .c-header__button[data-active]:before,.c-header__language-select .c-header__button[data-active]:before,.c-header__subitem:has(ul:focus-within) .c-header__button:before,.c-header__language-select:has(ul:focus-within) .c-header__button:before {
    opacity: 1
}

.c-header__subnav .c-header__button[data-active]:focus-visible,.c-header__language-select .c-header__button[data-active]:focus-visible,.c-header__subitem:has(ul:focus-within) .c-header__button:focus-visible,.c-header__language-select:has(ul:focus-within) .c-header__button:focus-visible {
    color: var(--primary-50)
}

.c-header__subnav .c-header__button[data-active] svg,.c-header__language-select .c-header__button[data-active] svg,.c-header__subitem:has(ul:focus-within) .c-header__button svg,.c-header__language-select:has(ul:focus-within) .c-header__button svg {
    transform: rotateX(180deg)
}

.c-header.is-open .c-header__button,.c-header.is-open .c-header__button-link,.c-header:has(.c-header-dropdown:focus-within) .c-header__button,.c-header:has(.c-header-dropdown:focus-within) .c-header__button-link {
    color: var(--neutral-0)
}

.c-header.is-open .c-header__button:hover,.c-header.is-open .c-header__button-link:hover,.c-header:has(.c-header-dropdown:focus-within) .c-header__button:hover,.c-header:has(.c-header-dropdown:focus-within) .c-header__button-link:hover {
    color: var(--primary-50)
}

.c-header__subitem {
    position: relative;
    z-index: 1
}

.c-header__subnav-dropdown {
    --trans-duration: .25s
}

@media (max-width: 63.9375em) {
    .c-header__subnav-dropdown {
        backface-visibility:hidden;
        transform: translateZ(0);
        height: 0;
        will-change: height;
        overflow: hidden;
        transition: height .25s cubic-bezier(.3,.15,.18,1)
    }

    .c-header__subnav-dropdown.is-accordion-open {
        height: auto;
        transition: height .4s cubic-bezier(.3,.15,.18,1)
    }
}

@media (min-width: 64em) {
    .c-header__subnav-dropdown {
        position:absolute;
        top: 100%;
        left: calc(var(--base-space) * -2);
        z-index: 1;
        background-color: var(--neutral-100);
        padding: calc(var(--base-space) * 2) 0;
        border-radius: var(--border-radius);
        border-top-left-radius: 0;
        opacity: 0;
        pointer-events: none;
        transition: opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1);
        height: auto!important
    }
}

.c-header__subnav-dropdown a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: calc(var(--base-space) * 2) 0;
    font-size: var(--md-font-size);
    color: var(--neutral-0);
    min-width: 244px;
    font-weight: 500;
    text-decoration: none
}

@media (min-width: 64em) {
    .c-header__subnav-dropdown a {
        padding:calc(var(--base-space) * 2)
    }
}

.c-header__subnav-dropdown a:hover {
    color: var(--primary-50)
}

.c-header__subnav-dropdown a:after {
    display: none
}

.c-header__subnav-dropdown a svg {
    width: 24px;
    height: 24px
}

@media (min-width: 64em) {
    .c-header__subnav-dropdown a svg {
        display:none
    }
}

@media (max-width: 63.9375em) {
    .c-header__subnav-dropdown li+li {
        border-top:1px solid var(--neutral-75)
    }
}

@media (max-width: 63.9375em) {
    .c-header__subnav-dropdown-wrap {
        padding:12px 0 24px
    }
}

@media (min-width: 64em) {
    .c-header.is-open .c-header__subnav-dropdown {
        box-shadow:var(--box-shadow-light)
    }
}

.c-header__subnav .c-header__button[data-active]+.c-header__subnav-dropdown,.c-header__language-select .c-header__button[data-active]+.c-header__subnav-dropdown,.c-header__subitem:has(ul:focus-within) .c-header__subnav-dropdown,.c-header__language-select:has(ul:focus-within) .c-header__subnav-dropdown {
    --trans-duration: .4s
}

@media (min-width: 64em) {
    .c-header__subnav .c-header__button[data-active]+.c-header__subnav-dropdown,.c-header__language-select .c-header__button[data-active]+.c-header__subnav-dropdown,.c-header__subitem:has(ul:focus-within) .c-header__subnav-dropdown,.c-header__language-select:has(ul:focus-within) .c-header__subnav-dropdown {
        opacity:1;
        pointer-events: auto
    }
}

.c-header__language-select {
    grid-area: language;
    position: relative;
    z-index: 1;
    order: 2
}

@media (min-width: 64em) {
    .c-header__language-select {
        left:calc(var(--base-space) * 5)
    }
}

.c-header__nav {
    grid-area: nav
}

@media (min-width: 64em) {
    .c-header__nav {
        display:flex;
        align-items: center
    }
}

@media (min-width: 64em) {
    .c-header__nav>ul {
        display:flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        gap: calc(var(--base-space) * 2)
    }
}

.c-header__contact {
    grid-area: contact;
    order: 2;
    padding-top: 24px
}

@media (min-width: 64em) {
    .c-header__contact {
        display:flex;
        justify-content: flex-end;
        align-items: center;
        padding-top: 0
    }
}

.c-header__contact .u-btn {
    width: 100%
}

@media (min-width: 35em) {
    .c-header__contact .u-btn {
        width:auto
    }
}

.c-header__link {
    --trans-duration: .25s;
    position: relative
}

.c-header__link:hover {
    --trans-duration: .4s
}

.c-header__link span {
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

@media (min-width: 64em) {
    .c-header__link:hover span {
        transform:translate(calc(var(--base-space) * 4))
    }
}

.c-header__link .c-header__link-bug {
    display: none
}

@media (min-width: 64em) {
    .c-header__link .c-header__link-bug {
        position:absolute;
        top: 50%;
        left: calc(var(--base-space) * 2);
        display: block;
        transform: translateY(-50%) translate(-100%) rotate(-360deg);
        opacity: 0;
        pointer-events: none;
        transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1),opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1)
    }
}

.c-header__link:hover .c-header__link-bug {
    transform: translateY(-50%);
    opacity: 1
}

.c-header__nav .c-header__link-bug {
    left: 0
}

body:not(:has(.c-hero)) .c-header__wrap {
    position: relative;
    background-color: var(--neutral-50)
}

.c-hero {
    --top: 15;
    --bot: 12;
    position: relative
}

@media (min-width: 64em) {
    .c-hero {
        --top: 42.5;
        --bot: 42
    }
}

@media (min-width: 75em) {
    .c-hero {
        --top: 38;
        --bot: 35.5
    }
}

.c-hero__container {
    --space: 0
}

@media (min-width: 48em) {
    .c-hero__container {
        --space: calc(var(--base-space) * 3)
    }
}

.c-hero__background {
    --video-width: 1440;
    --video-height: 865;
    --grad-opacity: .9;
    position: relative;
    grid-row: 1;
    grid-column: 1/-1;
    overflow: hidden;
    clip-path: polygon(0 0,100% 0,100% 100%,50% calc(100% - clamp(20px,11.5vw,250px)),0 100%)
}

.c-hero__background img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.c-hero__background video {
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    height: 100%;
    width: calc(100 * var(--video-width) / var(--video-height) * 1vh);
    min-width: 100%;
    min-height: calc(100 * var(--video-height) / var(--video-width) * 1vw)
}

.c-hero__cover {
    --opacity: .8;
    position: absolute;
    top: 100%;
    background-color: var(--primary-50);
    opacity: var(--opacity);
    width: 100%;
    height: 100%;
    transform: skewY(-13deg);
    transform-origin: left;
    z-index: 2
}

@media (min-width: 142.1875em) {
    .c-hero__cover {
        transform:skewY(-12.5deg)
    }
}

@media (min-width: 148.4375em) {
    .c-hero__cover {
        transform:skewY(-12deg)
    }
}

@media (min-width: 154.5em) {
    .c-hero__cover {
        transform:skewY(-11.5deg)
    }
}

.c-hero__grad {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: var(--grad-dark);
    z-index: 1;
    opacity: var(--grad-opacity)
}

.c-hero__content {
    grid-column: content;
    grid-row: 1;
    padding: calc(var(--base-space) * var(--top)) 0 calc(var(--base-space) * var(--bot));
    z-index: 1;
    text-align: center;
    max-width: 820px;
    margin: 0 auto
}


.c-hero__content h1 {
    margin-top: 40px
}

.c-hero__content h1+* {
    margin-top: calc(var(--base-space) * 4)
}

.c-hero__content p {
    font-size: var(--h4);
    line-height: 1.25
}

.c-hero__content a {
    text-decoration: none
}

.c-hero__content>a {
    color: #fff;
    font-size: var(--h4);
    line-height: 1.25
}

.c-hero--jobs-search .c-hero__content,.c-hero--jobs-search .c-hero__content-jobs {
    max-width: none;
    width: 100%
}

@media (min-width: 64em) {
    .c-hero--jobs-search .c-hero__content,.c-hero--jobs-search .c-hero__content-jobs {
        text-align:left
    }
}

.c-hero__content-jobs {
    grid-column: content;
    grid-row: 1;
    padding: calc(var(--base-space) * var(--top)) 0 calc(var(--base-space) * var(--bot));
    z-index: 1;
    text-align: center;
    margin: 0 auto
}

@media (min-width: 48em) {
    .c-hero__content-jobs {
        min-height:865px
    }
}

.c-hero__content-jobs h1 {
    margin-top: 40px
}

.c-hero__content-jobs h1+* {
    margin-top: calc(var(--base-space) * 4)
}

.c-hero__content-jobs p {
    font-size: var(--h4);
    line-height: 1.25
}

.c-hero__content-jobs a {
    color: #fff;
    font-size: var(--h4);
    line-height: 1.25
}

.c-hero--wide-content .c-hero__content {
    max-width: 920px
}

.c-hero__error-title {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 10px
}

.c-hero__error-title span {
    font-size: 14rem;
    line-height: 1.25
}

.c-hero__error-title svg {
    width: 88px;
    height: 86px
}

.c-job-card h4 {
    margin-top: 0
}

.c-modal {
    --transition-delay: 0ms;
    position: absolute;
    max-width: 552px;
    width: 100%;
    background-color: transparent;
    opacity: 0;
    transform: translateY(50px);
    transition: transform var(--transition-duration) cubic-bezier(.3,.15,.18,1) var(--transition-delay),opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1) var(--transition-delay);
    pointer-events: none
}

.c-modal>* {
    position: relative;
    z-index: 1
}

.c-modal:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: var(--neutral-100)
}

.c-modal[data-active] {
    --transition-delay: .15s;
    position: relative;
    transform: none;
    opacity: 1;
    pointer-events: auto
}

.c-modal__container {
    --transition-duration: .25s;
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    width: calc(100% - 40px);
    height: calc(100% - 136px);
    max-height: 100vh;
    opacity: 0;
    transition: opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1);
    margin: 68px 20px
}

.c-modal__container:before {
    content: "";
    position: absolute;
    top: -68px;
    left: -20px;
    right: -20px;
    bottom: -68px;
    background-color: var(--neutral-o-50)
}

.c-modal__container[data-active] {
    --transition-duration: .4s;
    opacity: 1;
    pointer-events: auto;
    z-index: 80
}

.c-modal__close {
    --btn-trans-duration: .25s;
    --btn-hover-duration: .25s;
    position: absolute;
    top: -80px;
    width: 48px;
    height: 48px;
    right: 0;
    padding: 20px;
    color: var(--neutral-100);
    background-color: var(--secondary-50);
    transform: translateY(60px);
    opacity: 0;
    transition: color var(--btn-hover-duration) cubic-bezier(.3,.15,.18,1),background-color var(--btn-hover-duration) cubic-bezier(.3,.15,.18,1),transform var(--btn-trans-duration) cubic-bezier(.3,.15,.18,1),opacity var(--btn-trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-modal__close:hover {
    --btn-hover-duration: .4s;
    color: var(--secondary-50);
    background-color: var(--neutral-100)
}

.c-modal[data-active] .c-modal__close {
    --btn-trans-duration: .4s;
    opacity: 1;
    transform: none
}

.c-modal__content {
    padding: calc(var(--base-space) * 5) calc(var(--base-space) * 4);
    font-size: var(--font-size)
}

@media (min-width: 48em) {
    .c-modal__content .u-btn {
        width:45%
    }
}

.c-modal__content .u-btn__btn-wrap {
    text-align: center
}

@media (min-width: 48em) {
    .c-modal__content .u-btn__btn-wrap {
        text-align:left
    }
}

.c-modal__header {
    --column: 0;
    padding: calc(var(--base-space) * 4);
    background-color: var(--secondary-50);
    background-image: var(--primary-grad)
}

@media (min-width: 48em) {
    .c-modal__header {
        padding:0
    }
}

@media (min-width: 48em) {
    .c-modal__header .u-logo-title {
        padding-left:calc(var(--base-space) * 4)
    }
}

.c-modal__header-image {
    padding-left: calc(var(--base-space) * 2);
    padding-top: 10px;
    display: none
}

@media (min-width: 48em) {
    .c-modal__header-image {
        display:block
    }
}

.c-modal__header-image-wrap {
    --image-width: 1;
    --image-height: 1;
    position: relative;
    overflow: hidden
}

.c-modal__header-image-wrap:before {
    content: "";
    display: block;
    padding-bottom: calc(var(--image-height) / var(--image-width) * 100%)
}

.c-modal__header-image-wrap img {
    position: absolute;
    top: 0;
    left: -25%;
    width: 150%;
    height: 150%;
    object-fit: contain;
    object-position: bottom
}

.c-signpost-bar {
    margin-bottom: var(--lg-block-space)
}

.c-signpost-bar__container {
    position: relative;
    overflow: hidden;
    padding: 50px 48px;
    box-shadow: var(--box-shadow-elevation-light);
    text-align: center
}

@media (min-width: 48em) {
    .c-signpost-bar__container {
        display:flex;
        justify-content: space-between;
        align-items: center;
        text-align: left
    }

    .c-signpost-bar__container .u-btn {
        margin-top: 0
    }
}

.c-slider {
    position: relative
}

.c-slider[data-dots=false] {
    padding-bottom: 0
}

.c-slider__viewport {
    overflow: hidden
}

.c-slider__track {
    display: flex;
    overflow-x: auto
}

.c-slider__track>* {
    flex: 0 0 100%
}

.c-slider[data-slides-to-show="2"] .c-slider__track>* {
    flex: 0 0 50%
}

.c-slider[data-slides-to-show="3"] .c-slider__track>* {
    flex: 0 0 33.3333333333%
}

.c-slider[data-slides-to-show="4"] .c-slider__track>* {
    flex: 0 0 25%
}

.c-slider[data-slides-to-show="5"] .c-slider__track>* {
    flex: 0 0 20%
}

.c-slider[data-slides-to-show="6"] .c-slider__track>* {
    flex: 0 0 16.6666666667%
}

.c-slider__slide:focus {
    outline: none
}

.c-slider__slide.focus-visible {
    outline: 2px solid var(--alt-color, var(--primary-50))
}

.c-slider__slide:focus-visible {
    outline: 2px solid var(--alt-color, var(--primary-50))
}

.c-slider[data-init] .c-slider__track {
    overflow-x: visible
}

.c-slider[data-slides-to-show="4"] .c-slider__track>* {
    flex: 0 0 50%
}

@media (min-width: 64em) {
    .c-slider[data-slides-to-show="4"] .c-slider__track>* {
        flex:0 0 25%
    }
}

.c-slider__dots {
    position: absolute;
    bottom: calc(var(--base-space) * 3);
    left: 0;
    display: flex
}

.c-slider__dot {
    --color: var(--alt-color, var(--primary-50));
    position: relative;
    width: 24px;
    height: 24px;
    transform: translate(-4px);
    transition: transform .4s cubic-bezier(.3,.15,.18,1);
    background-color: transparent
}

.c-slider__dot[data-active] {
    transform: none
}

.c-slider__dot[data-active]~* {
    transform: translate(4px)
}

.c-slider__dot:before {
    content: "";
    position: absolute;
    bottom: 4px;
    left: 4px;
    width: 16px;
    height: 16px;
    background-color: var(--h-text-color, var(--neutral-50));
    border-radius: 50%;
    transition: transform .4s cubic-bezier(.3,.15,.18,1),background-color .4s cubic-bezier(.3,.15,.18,1)
}

.c-slider__dot:hover:before {
    background-color: var(--color)
}

.c-slider__dot[data-active]:before {
    background-color: var(--color);
    transform: scale(1.6)
}

.c-slider__dot.focus-visible {
    outline: 2px solid var(--color)
}

.c-slider__dot:focus-visible {
    outline: 2px solid var(--color)
}

.h-background--primary-50 .c-slider__dot {
    --color: var(--neutral-100)
}

.c-slider__controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--primary-50);
    width: 100%
}

.c-slider__controls>*+* {
    margin-left: calc(var(--base-space) * 2)
}

.c-slider[data-align=center] .c-slider__controls {
    justify-content: center
}

.h-background--primary-50 .c-slider__controls {
    color: var(--neutral-100)
}

.c-slider__controls .c-slider__dots {
    position: static
}

.c-slider__arrows>*+* {
    margin-left: 30px
}

.c-slider__arrow {
    z-index: 1;
    color: inherit;
    background-color: transparent;
    width: 64px;
    height: 48px;
    padding: 12px 0;
    color: var(--h-text-color, var(--neutral-25));
    transition: color .25s cubic-bezier(.3,.15,.18,1)
}

.c-slider__arrow:hover {
    transition-duration: .4s;
    color: var(--alt-color, var(--primary-50))
}

.c-slider__arrow svg {
    width: 64px;
    height: 24px
}

.c-slider__arrow.focus-visible {
    outline: 2px solid currentColor;
    outline-offset: -2px
}

.c-slider__arrow:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: -2px
}

.c-slider__arrow[data-arrow=prev] svg {
    transform: rotate(180deg)
}

.c-slider__skip-btn {
    --transition-duration: .25s;
    position: absolute;
    opacity: 0;
    left: 0;
    background-color: var(--neutral-100);
    box-shadow: var(--box-shadow);
    padding: calc(var(--base-space) * 1);
    transition: opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1),transform var(--transition-duration) cubic-bezier(.3,.15,.18,1);
    z-index: 20;
    pointer-events: none
}

@media (prefers-reduced-motion: reduce) {
    .c-slider__skip-btn {
        transition: none
    }
}

.c-slider__skip-btn:focus-visible {
    opacity: 1;
    pointer-events: auto
}

.c-slider__skip-btn.focus-visible {
    opacity: 1;
    pointer-events: auto
}

.c-slider__skip-btn:first-child {
    top: 0
}

.c-slider__skip-btn:first-child:focus-visible {
    transform: translateY(-100%)
}

.c-slider__skip-btn:first-child.focus-visible {
    transform: translateY(-100%)
}

.c-slider__skip-btn:last-child {
    bottom: 0
}

.c-slider__skip-btn:last-child:focus-visible {
    transform: translateY(100%)
}

.c-slider__skip-btn:last-child.focus-visible {
    transform: translateY(100%)
}

.c-social {
    --hover-color: currentColor;
    display: flex;
    flex-direction: row;
    gap: 24px
}

.c-social a {
    display: inline-block;
    color: currentColor;
    width: 48px;
    height: 48px
}

.c-social a svg {
    width: 48px;
    height: 48px
}

.c-social a:after {
    display: none
}

.c-social a:hover {
    color: var(--hover-color)
}

.c-social a:focus-visible {
    outline: 2px solid var(--secondary-50)
}

.c-social a.focus-visible {
    outline: 2px solid var(--secondary-50)
}

.c-testimonial-slider {
    --alt-color: var(--primary-50);
    position: relative;
    padding-bottom: var(--md-block-space);
    overflow: hidden
}

.c-testimonial-slider--orange {
    --alt-color: var(--secondary-50)
}

.c-testimonial-slider--small {
    padding: 48px 0
}

.c-testimonial-slider--small .c-testimonial-slider__wrapper {
    display: contents
}

.c-testimonial-slider--small-container {
    padding-bottom: var(--md-block-space)
}

.c-accordion-list+.c-testimonial-slider {
    padding-top: var(--md-block-space);
    position: relative
}

@media (min-width: 48em) {
    .c-accordion-list+.c-testimonial-slider {
        margin-top:-64px
    }
}

.c-accordion-list+.c-testimonial-slider:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    height: 1px;
    max-width: 112.8rem;
    width: calc(100% - 32px);
    background-color: var(--neutral-50);
    transform: translate(-50%)
}

.c-testimonial-slider .c-slider__controls {
    margin-top: calc(var(--base-space) * 4.5)
}

@media (min-width: 48em) {
    .c-testimonial-slider .c-slider__controls {
        margin-top:calc(var(--base-space) * 6)
    }
}

.c-testimonial-slider__controls,.c-testimonial-slider__title {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    justify-content: flex-start
}

.c-testimonial-slider__controls>*,.c-testimonial-slider__title>* {
    grid-column: span 4
}

@media (min-width: 48em) {
    .c-testimonial-slider__controls>*,.c-testimonial-slider__title>* {
        grid-column:2/span 3
    }
}

.c-testimonial-slider--small .c-testimonial-slider__controls,.c-testimonial-slider--small .c-testimonial-slider__title {
    display: block;
    padding: 0 64px
}

.c-testimonial-slider__title {
    position: relative
}

@media (max-width: 47.9375em) {
    .c-testimonial-slider__title {
        top:120px
    }
}

.c-testimonial-slider__title p {
    font-size: var(--h5);
    line-height: var(--lh-h5);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--alt-color)
}

@media (max-width: 47.9375em) {
    .c-testimonial-slider--small .c-testimonial-slider__title {
        top:0
    }
}

.c-testimonial {
    --alt-color-testimonial: var(--alt-color, var(--primary-50));
    margin: 0 auto
}

.c-testimonial-slider--small .c-testimonial {
    padding: 0 64px
}

.c-testimonial__container {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr))
}

.c-testimonial-slider--small .c-testimonial__container {
    display: block
}

.c-testimonial__avatar {
    position: relative;
    grid-column: 3/span 2;
    display: flex;
    justify-content: flex-end;
    align-items: center
}

@media (min-width: 48em) {
    .c-testimonial__avatar {
        height:310px;
        grid-column: span 1;
        justify-content: flex-start
    }
}

.c-testimonial__avatar:before {
    content: "";
    position: absolute;
    inset: 0 clamp(10px,17%,60px);
    background-color: var(--primary-100);
    clip-path: polygon(0 0,100% 73%,0 100%)
}

@media (max-width: 47.9375em) {
    .c-testimonial__avatar:before {
        display:none
    }
}

.c-testimonial__avatar>* {
    width: 120px;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: var(--box-shadow);
    background-color: var(--neutral-100)
}

@media (min-width: 48em) {
    .c-testimonial__avatar>* {
        width:184px
    }
}

.c-testimonial__avatar--icon>* {
    background-color: var(--neutral-25);
    padding: 24px
}

@media (min-width: 48em) {
    .c-testimonial__avatar--icon>* {
        padding:44px
    }
}

.c-testimonial__avatar--logo>* {
    padding: 24px
}

.c-testimonial-slider--small .c-testimonial__avatar {
    display: none
}

.c-testimonial__content {
    grid-column: span 4;
    padding-top: 40px
}

@media (min-width: 48em) {
    .c-testimonial__content {
        padding-top:65px;
        grid-column: span 3
    }
}

.c-testimonial__icon svg {
    width: 37px;
    height: 32px
}

.c-testimonial__icon+* {
    margin-top: calc(var(--base-space) * 4)
}

.c-testimonial__message {
    font-size: var(--h4);
    line-height: var(--lh-h4);
    color: var(--h-text-color, var(--neutral-25))
}

.c-testimonial__message+* {
    margin-top: 40px
}

.c-testimonial__cite {
    display: block;
    font-style: normal
}

.c-testimonial__name {
    font-weight: 700;
    color: var(--alt-color-testimonial)
}

.c-testimonial__name+* {
    margin-top: 0
}

.c-testimonial__role {
    font-size: var(--md-font-size)
}

.c-video {
    --top: 7.5;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width: 48em) {
    .c-video {
        --top: 15;
        --bot: 18
    }
}

.c-video+*:not([class*=h-background]) {
    --top: 0
}

.c-video__title+* {
    margin-top: calc(var(--base-space) * 4.5)
}

.c-signpost-tabs {
    padding-bottom: var(--md-block-space)
}

.c-signpost-tabs__intro+* {
    margin-top: 40px
}

@media (min-width: 48em) {
    .c-signpost-tabs__intro+* {
        margin-top:48px
    }
}

.c-signpost-tabs__tab-list {
    display: flex;
    justify-content: space-between;
    gap: 44px;
    overflow: auto
}

.c-signpost-tabs__tab-list button {
    --trans-duration: .25s;
    position: relative;
    padding: 15px 0;
    background-color: transparent;
    border: 0;
    flex: 0 0 auto;
    font-weight: 700
}

.c-signpost-tabs__tab-list button:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: currentColor;
    transform-origin: center;
    opacity: 0;
    transition: opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1),transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-signpost-tabs__tab-list button:hover:before,.c-signpost-tabs__tab-list button[aria-selected=true]:before {
    --trans-duration: .4s;
    opacity: 1;
    transform: none
}

.c-signpost-tabs__tab-list button:hover:before {
    transform: scaleX(.8)
}

.c-signpost-tabs__tab-list button:focus-visible {
    outline: 1px solid var(--secondary-50);
    outline-offset: 2px
}

.c-signpost-tabs__panel-list {
    box-shadow: var(--box-shadow-light)
}

.c-signpost-tabs__panel {
    position: relative;
    overflow: hidden
}

@media (min-width: 48em) {
    .c-signpost-tabs__panel {
        padding-top:236px
    }
}

.c-signpost-tabs__panel.is-hidden {
    display: none
}

.c-signpost-tabs__panel:focus-visible {
    outline: 2px solid var(--secondary-50);
    outline-offset: 2px
}

@media (min-width: 48em) {
    .c-signpost-tabs__panel:before {
        content:"";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: inherit;
        z-index: 1;
        clip-path: polygon(0 0,190px 0,795px 62%,620px 100%,0 100%)
    }
}

.loaded .c-signpost-tabs__panel:before {
    clip-path: polygon(0 0,100% 0,100% 62%,100% 100%,0 100%);
    transition: clip-path 1.2s cubic-bezier(.215,.61,.355,1)
}

.loaded .c-signpost-tabs[data-scroll-anim-active] .c-signpost-tabs__panel:before,.loaded .c-signpost-tabs.is-scroll-active .c-signpost-tabs__panel:before {
    clip-path: polygon(0 0,190px 0,795px 62%,620px 100%,0 100%)
}

.c-signpost-tabs__image {
    position: relative;
    aspect-ratio: 16/9
}

@media (min-width: 48em) {
    .c-signpost-tabs__image {
        position:absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }
}

.c-signpost-tabs__image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.c-signpost-tabs__content {
    position: relative;
    z-index: 1;
    max-width: 550px;
    width: 100%;
    padding: 32px 16px
}

@media (min-width: 48em) {
    .c-signpost-tabs__content {
        padding:0 56px 56px
    }
}

@keyframes circleZoom {
    0% {
        transform: scale(.6)
    }

    75% {
        transform: scale(1)
    }

    to {
        transform: scale(.6)
    }
}

@keyframes circleBurst {
    0% {
        opacity: .8;
        transform: scale(.6)
    }

    75% {
        transform: scale(2.5);
        opacity: 0
    }

    to {
        transform: scale(2.5);
        opacity: 0
    }
}

.c-signpost-content-card {
    padding-bottom: calc(var(--base-space) * 17)
}

.c-signpost-content-card__media {
    --border-radius: 0;
    position: relative;
    z-index: 1;
    padding-bottom: calc(var(--base-space) * 3)
}

@media (min-width: 48em) {
    .c-signpost-content-card__media {
        padding-bottom:calc(var(--base-space) * 7)
    }
}

.c-signpost-content-card[data-media-style=popout] .c-signpost-content-card__media {
    padding-left: calc(var(--base-space) * 2);
    padding-right: calc(var(--base-space) * 2)
}

@media (min-width: 48em) {
    .c-signpost-content-card[data-media-style=popout] .c-signpost-content-card__media {
        padding-left:calc(var(--base-space) * 7);
        padding-right: calc(var(--base-space) * 7)
    }
}

.c-signpost-content-card[data-media-style=popout] .c-signpost-content-card__content-container,.c-signpost-content-card[data-media-style=within] .c-signpost-content-card__container {
    position: relative;
    padding: 0 calc(var(--base-space) * 2) calc(var(--base-space) * 2)
}

@media (min-width: 48em) {
    .c-signpost-content-card[data-media-style=popout] .c-signpost-content-card__content-container,.c-signpost-content-card[data-media-style=within] .c-signpost-content-card__container {
        padding:0 calc(var(--base-space) * 7) calc(var(--base-space) * 7)
    }
}

.c-signpost-content-card[data-media-style=popout] .c-signpost-content-card__content-container>*,.c-signpost-content-card[data-media-style=within] .c-signpost-content-card__container>* {
    position: relative;
    z-index: 1
}

.c-signpost-content-card[data-media-style=popout] .c-signpost-content-card__content-container:before,.c-signpost-content-card[data-media-style=within] .c-signpost-content-card__container:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    box-shadow: var(--box-shadow-elevation-light);
    background-color: var(--neutral-100)
}

.c-signpost-content-card[data-media-style=within] .c-signpost-content-card__container {
    padding-top: calc(var(--base-space) * 2)
}

@media (min-width: 48em) {
    .c-signpost-content-card[data-media-style=within] .c-signpost-content-card__container {
        padding-top:calc(var(--base-space) * 7)
    }
}

.c-signpost-content-card[data-media-style=popout] .c-signpost-content-card__content-container:before {
    top: calc(var(--base-space) * -10)
}

@media (min-width: 48em) {
    .c-signpost-content-card[data-media-style=popout] .c-signpost-content-card__content-container:before {
        top:calc(var(--base-space) * -21)
    }
}

.c-signpost-content-card--people-slider[data-media-style=popout] .c-signpost-content-card__media,.c-signpost-content-card--people-slider .c-signpost-content-card__media {
    padding: 0
}

.c-signpost-content-card--people-slider[data-media-style=popout] .c-signpost-content-card__content-container:before {
    top: 0
}

.c-signpost-content-card--people-slider[data-media-style=popout] .c-signpost-content-card__content-container {
    padding-top: 56px
}

@media (min-width: 48em) {
    .c-signpost-content-card__content-container {
        display:flex;
        align-items: flex-end
    }
}

@media (min-width: 48em) {
    .c-signpost-content-card__content {
        flex:0 1 75%
    }
}

.c-signpost-content-card__actions {
    padding-top: calc(var(--base-space) * 4)
}

@media (min-width: 48em) {
    .c-signpost-content-card__actions {
        padding-top:0;
        text-align: right;
        flex: 1 0 380px
    }
}

.c-signpost-content-card__location {
    padding: 32px;
    background-color: var(--neutral-25)
}

.c-signpost-content-card__location svg {
    aspect-ratio: 718.7/443;
    width: 100%
}

.c-signpost-content-card__location-circles>g {
    --delay: 0ms
}

.c-signpost-content-card__location-circles>g>*:first-child {
    transform: scale(.6);
    animation-name: circleZoom;
    animation-duration: 5s;
    animation-delay: var(--delay);
    animation-iteration-count: infinite
}

.c-signpost-content-card__location-circles>g>*:last-child {
    opacity: .5;
    transform: scale(.6);
    animation-name: circleBurst;
    animation-duration: 5s;
    animation-delay: var(--delay);
    animation-iteration-count: infinite
}

.c-signpost-content-card__location-circles>g:nth-child(3n) {
    --delay: 3s
}

.c-signpost-content-card__location-circles>g:nth-child(3n+1) {
    --delay: 6s
}

.c-signpost-content-card__people-slider {
    position: relative;
    overflow: hidden;
    z-index: 0
}

.c-signpost-content-card__people-slider:before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--primary-100);
    z-index: -1;
    clip-path: polygon(0 100%,30.81% 100%,100% 100%,100% 100%,0 100%);
    transition: clip-path 2.5s cubic-bezier(.215,.61,.355,1)
}

.c-signpost-content-card[data-scroll-anim-active] .c-signpost-content-card__people-slider:before {
    clip-path: polygon(0 56.82%,30.81% 76.28%,100% 24.83%,100% 100%,0 100%)
}

.c-signpost-content-card__people-slider .c-slider__viewport {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px)
}

.c-signpost-content-card__people-image {
    position: relative;
    aspect-ratio: 357/447;
    margin: 0 10px
}

.c-signpost-content-card__people-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain
}

.l-page {
    display: grid;
    grid-template-columns: 0 1fr 0
}

.l-page>* {
    grid-column: 2/3
}

.c-background-sticky-image {
    --row-span: 2;
    --height: max(1440px, 100vh);
    --offset: calc(var(--base-space) * -7);
    position: relative;
    grid-column: 1/2;
    grid-row: span var(--row-span);
    height: calc(100% - var(--height))
}

.c-background-sticky-image__container {
    position: sticky;
    z-index: -1;
    top: 0
}

.c-background-sticky-image__wrap {
    position: absolute;
    top: var(--offset);
    left: 0;
    height: var(--height);
    width: calc(var(--1vw, 1vw) * 100);
    overflow: hidden
}

.c-background-sticky-image__wrap:before,.c-background-sticky-image__wrap:after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--neutral-100);
    z-index: 2
}

.c-background-sticky-image__wrap:before {
    transform-origin: left;
    transform: skewY(17deg);
    bottom: 100%
}

.c-background-sticky-image__wrap:after {
    top: 100%;
    transform-origin: left;
    transform: skewY(-17deg)
}

.c-background-sticky-image__wrap img {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%)
}

.c-background-sticky-image__grad {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: var(--grad-dark);
    opacity: .6;
    z-index: 1
}

.c-highlight {
    --color: var(--primary-50);
    --background: var(--neutral-100);
    color: var(--color);
    background-color: var(--background);
    padding: 64px 24px
}

@media (min-width: 48em) {
    .c-highlight {
        padding:96px 26px 48px 56px
    }
}

.c-highlight--filled {
    --color: var(--neutral-100);
    --background: var(--primary-50)
}

.c-highlight--small {
    padding: 0
}

.c-testimonial-slider+.c-highlight--filled {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 48px 26px 48px 56px
}

.c-highlight__list {
    padding-bottom: var(--md-block-space)
}

.c-highlight__list--gap>* {
    gap: 24px 54px
}

.c-highlight__stat {
    position: relative;
    display: flex;
    align-items: baseline;
    gap: 8px
}

.c-highlight__stat:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 166px;
    height: 4px;
    background-color: var(--color)
}

.c-highlight.h-text--center .c-highlight__stat {
    justify-content: center
}

.c-highlight--small .c-highlight__stat {
    padding-top: 16px
}

.c-highlight.h-text--center .c-highlight__stat:before {
    width: 100%
}

.c-highlight__value {
    font-size: 6.2rem;
    line-height: 1.5
}

@media (min-width: 48em) {
    .c-highlight__value {
        font-size:7.2rem
    }
}

.c-highlight__pre,.c-highlight__post {
    font-size: 3.8rem;
    line-height: 1.5
}

@media (min-width: 48em) {
    .c-highlight__pre,.c-highlight__post {
        font-size:4.8rem
    }
}

.c-highlight__text {
    font-size: var(--h5);
    line-height: var(--lh-h5);
    text-transform: uppercase;
    letter-spacing: .1em;
    font-weight: 700;
    color: var(--neutral-50)
}

.c-highlight--small .c-highlight__text {
    margin-top: 8px
}

.c-highlight--filled .c-highlight__text {
    color: var(--color)
}

.c-intro {
    overflow: hidden;
    padding-bottom: var(--md-block-space);
    padding-top: 32px
}

@media (min-width: 48em) {
    .c-intro {
        padding-top:60px
    }
}

@media (min-width: 48em) {
    .c-intro__content {
        padding-right:48px
    }
}

@media (max-width: 47.9375em) {
    .c-intro__aside {
        display:none
    }
}

.c-intro__aside>*+* {
    margin-top: 90px
}

.c-intro__grow {
    display: flex;
    flex-direction: column
}

.c-intro__grow>article {
    flex-grow: 1
}

.c-intro__image>* {
    max-width: none;
    width: 200%
}

.c-sector-card {
    --transition-top: none;
    --transition-bot: none;
    --bg-scale: none;
    --trans-duration: .25s;
    position: relative;
    z-index: 0;
    color: var(--neutral-100);
    padding: 48px 32px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    text-decoration: none;
    height: 100%
}

.c-sector-card.has-hover {
    --trans-duration: .4s;
    color: var(--primary-50);
    z-index: 2
}

.c-sector-card:before,.c-sector-card:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1),opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-sector-card.has-hover:before,.c-sector-card.has-hover:after {
    transform: var(--bg-scale)
}

.c-sector-card:before {
    background-color: var(--primary-50);
    box-shadow: var(--box-shadow)
}

.c-sector-card.has-hover:before {
    opacity: 0
}

.c-sector-card:after {
    background-color: var(--neutral-100);
    box-shadow: var(--box-shadow-elevation);
    opacity: 0
}

.c-sector-card.has-hover:after {
    opacity: 1
}

.c-sector-card * {
    pointer-events: none
}

.c-sector-card__icon {
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-sector-card__icon svg {
    width: 130px;
    height: 130px
}

.c-sector-card__icon+* {
    margin-top: 56px
}

.c-sector-card__title {
    font-size: var(--h5);
    line-height: var(--lh-h5);
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-sector-card__title+* {
    margin-top: 0
}

.c-sector-card.has-hover :is(.c-sector-card__icon,.c-sector-card__title) {
    transform: var(--transition-top)
}

.c-sector-card__content-wrap {
    position: relative;
    width: 100%;
    margin-bottom: 86px
}

.c-sector-card__content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1),transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-sector-card__content>*:first-child {
    padding-top: 32px
}

.c-sector-card.has-hover .c-sector-card__content {
    opacity: 1;
    transform: translateY(-50%);
    pointer-events: auto
}

.c-sector-card__button {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    width: 48px;
    height: 48px;
    background-color: var(--neutral-25);
    color: var(--neutral-75);
    border-radius: 50%;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-sector-card__button svg {
    width: 24px;
    height: 24px
}

.c-sector-card.has-hover .c-sector-card__button {
    transform: var(--transition-bot)
}

.c-narrative-card {
    background-color: var(--neutral-25);
    color: var(--neutral-100);
    padding: 64px 16px;
    text-align: center;
    box-shadow: var(--box-shadow-elevation);
    height: 100%
}

@media (min-width: 48em) {
    .c-narrative-card {
        padding:96px 32px 112px
    }
}

.c-narrative-card__icon+*,.c-narrative-card__number+* {
    margin-top: 16px
}

@media (min-width: 48em) {
    .c-narrative-card__icon+*,.c-narrative-card__number+* {
        margin-top:64px
    }
}

@media (max-width: 47.9375em) {
    .c-narrative-card__icon {
        display:none
    }
}

.c-narrative-card__icon svg,.c-narrative-card__icon img {
    fill: var(--secondary-50);
    width: 96px;
    height: 96px
}

@media (min-width: 64em) {
    .c-narrative-card__icon svg,.c-narrative-card__icon img {
        width:120px;
        height: 120px
    }
}

.c-narrative-card__number {
    position: relative;
    font-size: 17.5rem;
    line-height: .7
}

.c-narrative-card__title {
    color: var(--secondary-50);
    font-size: var(--h4);
    line-height: var(--lh-h4);
    letter-spacing: -.01em;
    min-height: 72px
}

.c-narrative-card__title+* {
    margin-top: 32px
}

.c-timeline {
    padding-bottom: var(--md-block-space)
}

.c-timeline__container {
    box-shadow: var(--box-shadow-light);
    background-color: var(--neutral-100)
}

.c-timeline__title {
    text-align: center;
    padding: 64px 16px
}

@media (min-width: 48em) {
    .c-timeline__title {
        padding:144px 16px 96px
    }
}

.c-timeline__button {
    text-align: center;
    padding: 0 16px 144px
}

.c-timeline__wrap {
    position: relative;
    z-index: 0;
    padding: 0 20px 37px 25px
}

@media (min-width: 48em) {
    .c-timeline__wrap {
        padding:0 70px 37px
    }
}

.c-timeline__wrap:last-child {
    margin-bottom: 32px
}

.c-timeline__line {
    position: absolute;
    top: -20px;
    left: 40px;
    width: 2px;
    height: calc(100% - 20px);
    background-color: var(--neutral-50);
    z-index: -1
}

@media (min-width: 48em) {
    .c-timeline__line {
        left:50%;
        transform: translate(-50%)
    }
}

.c-timeline__line:before {
    content: "";
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translate(-50%);
    width: 12px;
    height: 12px;
    background-color: inherit;
    border-radius: 50%
}

.c-timeline__line svg {
    position: absolute;
    bottom: -3px;
    left: 50%;
    color: var(--neutral-50);
    transform: translate(-50%);
    height: 22px
}

.c-timeline__item {
    display: grid;
    grid-template-columns: 52px minmax(0,1fr);
    padding-bottom: 60px
}

@media (min-width: 48em) {
    .c-timeline__item {
        grid-template-columns:minmax(0,1fr) 136px minmax(0,1fr);
        padding-bottom: 64px
    }
}

@media (min-width: 48em) {
    .c-timeline__item:nth-child(even) .c-timeline__content {
        grid-column:1/2;
        grid-row: 1
    }
}

body.loaded .c-timeline__content {
    transform: translate(50%);
    opacity: 0;
    transition: transform .85s cubic-bezier(.215,.61,.355,1),opacity .65s cubic-bezier(.215,.61,.355,1)
}

@media (min-width: 48em) {
    body.loaded .c-timeline__item:nth-child(even) .c-timeline__content {
        transform:translate(-50%)
    }
}

body.loaded .c-timeline__item[data-scroll-anim-active] .c-timeline__content {
    transform: none;
    opacity: 1
}

.c-timeline__content h5+* {
    margin-top: 24px
}

.c-timeline__icon {
    padding-right: 20px
}

@media (min-width: 48em) {
    .c-timeline__icon {
        padding:0 40px;
        grid-column: 2/3
    }
}

.c-timeline__icon-wrap {
    width: 32px;
    height: 32px;
    padding: 5px;
    box-shadow: var(--box-shadow-light);
    border-radius: 50%;
    background-color: var(--neutral-100)
}

@media (min-width: 48em) {
    .c-timeline__icon-wrap {
        margin-top:32px;
        width: 56px;
        height: 56px;
        padding: 8px
    }
}

.c-timeline__icon-wrap svg {
    width: 22px;
    height: 22px
}

@media (min-width: 48em) {
    .c-timeline__icon-wrap svg {
        width:40px;
        height: 40px
    }
}

body.loaded .c-timeline__icon-wrap {
    transform-origin: center;
    transform: scale(0);
    transition: transform .65s cubic-bezier(.215,.61,.355,1)
}

body.loaded .c-timeline__icon-wrap svg {
    transform-origin: center;
    transform: rotate(-360deg);
    transition: transform .75s cubic-bezier(.215,.61,.355,1)
}

body.loaded .c-timeline__item[data-scroll-anim-active] .c-timeline__icon-wrap,body.loaded .c-timeline__item[data-scroll-anim-active] .c-timeline__icon-wrap svg {
    transform: none
}

.c-product-sectors {
    position: relative;
    padding-bottom: var(--md-block-space);
    margin-bottom: var(--lg-block-space);
    gap: 0
}

.c-product-sectors:before {
    content: "";
    position: absolute;
    max-width: 112.8rem;
    width: calc(100% - 32px);
    height: 1px;
    left: 50%;
    top: 100%;
    background-color: var(--neutral-50);
    transform: translate(-50%)
}

.c-product-sectors__intro {
    padding-bottom: 64px
}

@media (min-width: 48em) {
    .c-product-sectors__intro {
        max-width:65%;
        padding-bottom: 96px
    }
}

.c-product-sectors__list {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 32px
}

.c-product-sectors__list>* {
    grid-column: span 4
}

@media (min-width: 48em) {
    .c-product-sectors__list>* {
        grid-column:span 2
    }

    .c-product-sectors__list>*:first-child:last-child {
        grid-column: span 4
    }
}

.c-product-sectors__title {
    text-transform: uppercase;
    letter-spacing: .1em
}

.c-product-sectors__title+* {
    margin-top: 16px
}

.c-product-sectors a {
    --trans-duration: .25s;
    display: flex;
    align-items: center;
    padding: 16px 0;
    color: var(--neutral-0);
    overflow: hidden;
    position: relative;
    white-space: normal;
    text-decoration: none;
    font-size: var(--md-font-size);
    font-weight: 500
}

.c-product-sectors a:hover {
    --trans-duration: .4s
}

.c-product-sectors a>*+* {
    margin-left: 16px
}

.c-product-sectors a svg {
    width: 24px;
    height: 24px;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-product-sectors a:hover svg {
    transform: translate(-100%)
}

.c-product-sectors a:after {
    display: none
}

.c-product-sectors a:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background-image: url(https://www.ocorian.com/themes/escape/ocorian/images/logo-bug.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    transform: translate(-100%,-50%) rotate(-360deg);
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-product-sectors a:hover:before {
    transform: translateY(-50%)
}

@media (min-width: 64em) {
    .c-product-sectors__products-list {
        column-count:2;
        column-gap: 32px
    }
}

.c-product-sectors__products-list ul {
    break-inside: avoid
}

.c-product-sectors__products-list ul:first-child:last-child {
    break-inside: auto
}

@media (min-width: 64em) {
    .c-product-sectors__products:first-child:last-child .c-product-sectors__products-list {
        column-count:4
    }
}

@media (min-width: 64em) {
    .c-product-sectors__sectors ul {
        column-count:2;
        column-gap: 32px
    }
}

.c-offices {
    position: relative;
    z-index: 0;
    margin-bottom: var(--lg-block-space)
}

.c-offices__background {
    --opacity: .5;
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image: var(--image);
    background-position: center;
    background-size: cover;
    background-attachment: fixed
}

.c-offices__background:after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--neutral-0);
    opacity: var(--opacity)
}

.c-offices__content {
    padding-top: 64px;
    padding-bottom: 64px;
    color: var(--neutral-100);
    text-align: center
}

@media (min-width: 48em) {
    .c-offices__content {
        padding-top:250px;
        padding-bottom: 250px
    }
}

.c-offices__content h2 {
    color: var(--primary-50)
}

.c-offices__content h2+* {
    margin-top: 32px
}

@media (min-width: 48em) {
    .c-offices__content h2+* {
        margin-top:48px
    }
}

.c-offices__content p+* {
    margin-top: 32px
}

@media (min-width: 48em) {
    .c-offices__content p+* {
        margin-top:72px
    }
}

.c-offices__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px 16px
}

@media (max-width: 34.9375em) {
    .c-offices__list {
        gap:18px
    }

    .c-offices__list>* {
        width: 100%
    }
}

.c-team-card {
    display: flex;
    flex-direction: column
}

.c-team-card__avatar {
    position: relative;
    background-color: var(--primary-100);
    aspect-ratio: 350/262;
    transition: background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    overflow: hidden
}

.c-team-card__avatar img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(var(--box-shadow));
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    transform-origin: bottom center
}

.c-team-card__avatar:after {
    content: "";
    clip-path: polygon(0 101%,21.5% 101%,101% 101%,101% 101%,0 101%);
    position: absolute;
    bottom: -1px;
    left: 0;
    height: 25%;
    width: 100%;
    background-color: var(--neutral-100);
    transition: clip-path var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

@media (min-width: 64em) {
    .c-team-card__avatar:after {
        bottom:0
    }
}

.c-team-card[data-hover-active] .c-team-card__avatar {
    background-color: var(--primary-50)
}

.c-team-card[data-hover-active] .c-team-card__avatar img {
    transform: scale(1.05)
}

.c-team-card[data-hover-active] .c-team-card__avatar:after {
    clip-path: polygon(0 8%,21.5% 98%,100% 0,101% 101%,0 101%)
}

.c-team-card__content {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 40px 24px 53px;
    color: var(--neutral-0)
}

.c-team-card__content h4 {
    color: var(--primary-50)
}

.c-team-card__content h4+* {
    margin-top: 8px
}

.c-team-card__content p {
    font-weight: 700;
    margin-bottom: 32px
}

.c-team-card__content .u-icon-text {
    margin-top: auto;
    font-size: var(--small-font-size)
}

.c-team-card__content .u-icon-text svg {
    width: 22px;
    height: 22px
}

.c-team-card__content .u-btn {
    margin-top: 32px
}

.c-contact-cta {
    position: relative;
    overflow-x: clip;
    gap: unset
}

.c-contact-cta__container {
    position: relative;
    z-index: 0
}

.c-contact-cta__container:before,.c-contact-cta__container:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1
}

.c-contact-cta__container:after {
    background-color: var(--primary-50);
    clip-path: polygon(0 0,45% 0,100% 75.5%,28.5% 100%,0 100%)
}

@media (min-width: 48em) {
    .c-contact-cta__container:after {
        clip-path:polygon(0 0,28.5% 0,63% 75.5%,28.5% 100%,0 100%)
    }
}

.c-contact-cta__container:before {
    right: 99%;
    left: auto;
    width: 50vw;
    background-color: var(--primary-50)
}

.c-contact-cta__background {
    position: absolute;
    inset: 0;
    z-index: -1;
    grid-column: cover-page
}

.c-contact-cta__background img {
    position: absolute;
    top: 0;
    left: 30%;
    width: 70%;
    height: 100%;
    object-fit: cover
}

.c-contact-cta__background:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1
}

.c-contact-cta__background:before {
    background-color: var(--neutral-0);
    opacity: .5
}

@media (min-width: 48em) {
    .c-contact-cta__background:before {
        opacity:0
    }
}

.c-contact-cta__content {
    position: relative;
    z-index: 2;
    padding: 156px 0;
    max-width: 510px;
    width: 100%;
    color: var(--neutral-100)
}

@media (min-width: 64em) {
    .c-contact-cta__content {
        padding-top:220px;
        padding-bottom: 156px
    }
}

.c-contact-cta__content h2 {
    font-size: 6rem;
    line-height: 1.25;
    letter-spacing: -.01em
}

.c-contact-cta__content h2+* {
    margin-top: 32px
}

.c-contact-cta__content p {
    font-weight: 500
}

.c-breadcrumbs {
    font-size: var(--small-font-size);
    line-height: 1.5;
    padding-top: 8px
}

.c-breadcrumbs__list {
    display: flex;
    gap: 33px
}

.c-breadcrumbs li+li {
    position: relative
}

.c-breadcrumbs li+li:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -16px;
    height: 16px;
    width: 1px;
    background-color: var(--neutral-0);
    transform: translateY(-50%)
}

.c-breadcrumbs a {
    color: var(--neutral-50);
    text-decoration: none
}

.c-breadcrumbs a:hover {
    color: var(--primary-50);
    text-decoration: underline
}

.c-breadcrumbs span {
    font-weight: 700
}

.c-progress-listing {
    gap: 0;
    padding-bottom: var(--md-block-space)
}

.c-progress-listing__item,.c-progress-listing__intro {
    position: relative;
    background-color: var(--neutral-100);
    padding: 64px 16px;
    filter: drop-shadow(var(--box-shadow-elevation-light))
}

@media (min-width: 48em) {
    .c-progress-listing__item,.c-progress-listing__intro {
        display:flex;
        align-items: flex-start;
        justify-content: space-between;
        padding: 56px 40px 40px
    }
}

.c-progress-listing__item+*,.c-progress-listing__intro+* {
    margin-top: 40px
}

.c-progress-listing__item:before,.c-progress-listing__intro:before {
    content: "";
    position: absolute;
    top: calc(100% - 1px);
    left: 16px;
    width: 78px;
    height: 26px;
    background-color: inherit;
    clip-path: polygon(0 0,100% 0,50% 100%);
    border-radius: 0
}

@media (min-width: 48em) {
    .c-progress-listing__item:before,.c-progress-listing__intro:before {
        left:40px;
        width: 116px;
        height: 40px
    }
}

.c-progress-listing__intro {
    padding-top: 32px;
    padding-bottom: 32px
}

@media (min-width: 48em) {
    .c-progress-listing__content {
        padding-right:clamp(10rem,45.3125vw + -24.8rem,21.6rem)
    }
}

@media (max-width: 47.9375em) {
    .c-progress-listing__content h3 {
        padding-right:85px
    }
}

@media (max-width: 47.9375em) {
    .c-progress-listing__icon {
        position:absolute;
        top: 24px;
        right: 8px
    }
}

.c-progress-listing__icon svg {
    width: 96px;
    height: 96px
}

@media (min-width: 48em) {
    .c-progress-listing__icon svg {
        width:184px;
        height: 184px
    }
}

.c-progress-listing__icon img {
    width: 96px;
    height: auto
}

@media (min-width: 48em) {
    .c-progress-listing__icon img {
        width:184px
    }
}

.c-region-card {
    position: relative;
    z-index: 0;
    background-color: var(--neutral-100);
    text-decoration: none
}

.c-region-card,.c-region-card:hover {
    color: var(--neutral-50)
}

.c-region-card:before,.c-region-card:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    transition: opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-region-card:before {
    box-shadow: var(--box-shadow)
}

.c-region-card:hover:before {
    opacity: 0
}

.c-region-card:after {
    box-shadow: var(--box-shadow-elevation);
    opacity: 0
}

.c-region-card:hover:after {
    opacity: 1
}

.c-region-card__label {
    padding: 24px;
    text-align: center
}

@media (max-width: 47.9375em) {
    .c-region-card .u-media {
        --image-width: 344;
        --image-height: 228
    }
}

.c-anchor-links {
    margin-bottom: var(--md-block-space);
    padding: 14px 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    background-color: var(--neutral-100);
    box-shadow: var(--box-shadow-elevation-light);
    grid-column: cover-page
}

@media (min-width: 48em) {
    .c-anchor-links {
        grid-column:full-bleed;
        padding: 24px
    }
}

.c-anchor-links a {
    width: 100%;
    display: block;
    border-radius: var(--border-radius);
    padding: 15px;
    text-align: center;
    text-decoration: none;
    background-color: var(--neutral-100);
    color: var(--neutral-50);
    transition: background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    font-size: 1.4rem;
    line-height: 1.25;
    letter-spacing: .2em;
    text-transform: uppercase;
    font-weight: 700
}

@media (min-width: 24em) {
    .c-anchor-links a {
        width:350px
    }
}

.c-anchor-links a:hover {
    background-color: var(--primary-100);
    color: var(--neutral-50)
}

.c-anchor-links-in-filter {
    padding: 24px 10px
}

.c-anchor-links-in-filter a {
    width: auto;
    display: inline-block;
    border-radius: var(--border-radius);
    padding: 15px;
    text-align: center;
    text-decoration: none;
    background-color: var(--neutral-100);
    color: var(--neutral-50);
    transition: background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    font-size: 1.4rem;
    line-height: 1.25;
    letter-spacing: .2em;
    text-transform: uppercase;
    font-weight: 700
}

@media (min-width: 24em) {
    .c-anchor-links-in-filter a {
        width:auto
    }
}

.c-anchor-links-in-filter a:hover,.c-anchor-links-in-filter a.bef-link--selected {
    background-color: var(--primary-100);
    color: var(--neutral-50)
}

.c-cards-large-listing {
    position: relative;
    gap: 0;
    z-index: 0;
    margin-bottom: var(--lg-block-space)
}

.c-cards-large-listing--no-filter {
    margin-bottom: var(--md-block-space)
}

.c-cards-large-listing .c-filter {
    margin-bottom: 0
}

.c-cards-large-listing:before,.c-cards-large-listing:after {
    content: "";
    background-color: var(--neutral-75);
    z-index: -1
}

.c-cards-large-listing:before {
    position: absolute;
    inset: 48px 0 calc(var(--1vw, 1vw) * 11.5)
}

.c-cards-large-listing--no-filter:before {
    top: 0
}

.c-cards-large-listing:after {
    display: block;
    aspect-ratio: 1440/168;
    clip-path: polygon(0 0,100% 0,50% 100%);
    grid-column: cover-page
}

.c-cards-large-listing__anchor-title {
    padding-bottom: 64px;
    text-align: center
}

@media (min-width: 48em) {
    .c-cards-large-listing__anchor-title {
        padding-bottom:96px
    }
}

.c-cards-large-listing__list {
    gap: 40px
}

.c-cards-large-listing__list:last-child {
    padding-bottom: var(--md-block-space)
}

.c-cards-large-listing__list+* {
    margin-top: 64px
}

.c-cards-large-listing__title {
    padding-top: 64px;
    padding-bottom: 64px;
    text-align: center
}

@media (min-width: 48em) {
    .c-cards-large-listing__title {
        padding-top:144px;
        padding-bottom: 96px
    }
}

.c-cards-large-listing__show-more {
    text-align: center;
    margin-top: 48px
}

@media (min-width: 48em) {
    .c-cards-large-listing__show-more {
        margin-top:80px
    }
}

.c-cards-large-listing__show-more+* {
    margin-top: 64px
}

@media (min-width: 48em) {
    .c-cards-large-listing__show-more+* {
        margin-top:144px
    }
}

.c-cards-large-listing__show-more .js-pager__items {
    margin: 0;
    padding: 0
}

.c-cards-large-listing__show-more .js-pager__items li:before {
    background: transparent
}

.c-title-content-listing__list>*+* {
    margin-top: 48px;
    padding-top: 48px;
    border-top: 2px solid var(--neutral-75)
}

.c-location-card {
    position: relative;
    z-index: 0;
    background-color: var(--neutral-100);
    text-decoration: none;
    display: block
}

@media (min-width: 48em) {
    .c-location-card--single {
        display:flex
    }

    .c-location-card--single .u-media {
        flex: 0 0 45%
    }

    .c-location-card--single .u-media__wrap {
        aspect-ratio: auto;
        width: 100%;
        height: 100%
    }
}

.c-location-card,.c-location-card:hover {
    color: var(--neutral-25)
}

.c-location-card:before,.c-location-card:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    transition: opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-location-card:before {
    box-shadow: var(--box-shadow-light)
}

.c-location-card:hover:before {
    opacity: 0
}

.c-location-card:after {
    box-shadow: var(--box-shadow-elevation-light);
    opacity: 0
}

.c-location-card:hover:after {
    opacity: 1
}

.c-location-card:hover .u-btn:after {
    opacity: 1;
    transform: translateY(-50%) rotate(360deg)
}

.c-location-card:hover .u-btn span {
    transform: translate(16px)
}

.c-location-card__content {
    padding: 24px
}

.c-location-card__content hr {
    margin-top: 48px;
    margin-bottom: 24px
}

.c-location-card__content p {
    font-weight: 700
}

.c-location-card__content p.location-item {
    text-align: center;
    text-decoration: none!important;
    font-weight: 500
}

.c-location-card__content p+* {
    margin-top: 24px
}

.location-listing button {
    display: none
}

.location-listing h3.location-title {
    text-align: center
}

.c-role-card {
    position: relative;
    z-index: 0;
    background-color: var(--neutral-100);
    text-decoration: none;
    padding: 32px;
    display: block
}

.c-role-card,.c-role-card:hover {
    color: var(--neutral-50)
}

.c-role-card:before,.c-role-card:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    transition: opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-role-card:before {
    box-shadow: var(--box-shadow-light)
}

.c-role-card:hover:before {
    opacity: 0
}

.c-role-card:after {
    box-shadow: var(--box-shadow-elevation-light);
    opacity: 0
}

.c-role-card:hover:after {
    opacity: 1
}

.c-role-card__chips {
    margin-top: 48px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    flex: 0 0 100%
}

.c-role-card h4 {
    color: var(--primary-50)
}

.c-role-card h4 a {
    text-decoration: none
}

.c-search-filter {
    grid-column: cover-page
}

@media (min-width: 48em) {
    .c-search-filter {
        grid-column:full-bleed
    }
}

.c-search-filter__container {
    padding: 16px;
    margin-bottom: 40px;
    background-color: var(--neutral-100);
    box-shadow: var(--box-shadow-elevation-light);
    display: flex;
    justify-content: center
}

@media (min-width: 48em) {
    .c-search-filter__container {
        padding:20px 24px
    }
}

.c-search-filter .c-form {
    max-width: 412px;
    width: 100%
}

.c-search-filter__dropdown {
    position: relative;
    margin-bottom: 40px;
    margin-left: 16px
}

@media (min-width: 48em) {
    .c-search-filter__dropdown {
        margin-left:0
    }
}

.c-search-filter__dropdown select {
    padding: 16px 32px 16px 0;
    background-color: transparent;
    border: 0;
    border-radius: 0;
    appearance: none
}

.c-search-filter__dropdown select:hover,.c-search-filter__dropdown select:focus {
    background-color: transparent
}

.c-search-filter__dropdown-container {
    position: relative;
    display: inline-block
}

.c-search-filter__icon {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    pointer-events: none
}

.c-search-filter__icon,.c-search-filter__icon svg {
    width: 24px;
    height: 24px
}

.c-search__row .c-role-card h4 a {
    text-decoration: none!important
}

.c-search__row .c-role-card .node__content {
    padding: 10px 0
}

.path-search .search-wrapper {
    background-color: var(--neutral-75);
    padding-bottom: 20px
}

.path-search .p-footer {
    background-color: var(--neutral-75);
    display: block;
    aspect-ratio: 1440/168;
    clip-path: polygon(0 0,100% 0,50% 100%);
    grid-column: cover-page
}

.m-0 {
    margin: 0!important
}

.c-hero-meta .c-hero__container {
    height: clamp(25.1rem,164.453125vw + -101.2rem,67.2rem)
}

.c-hero-meta .c-hero__background {
    background-color: var(--neutral-25)
}

.c-hero-meta .c-hero__background img {
    top: auto;
    bottom: 0;
    left: 50%;
    width: auto;
    height: 200%;
    transform: translate(-50%);
    filter: blur(10px)
}

.c-hero-meta__content {
    position: relative;
    z-index: 1;
    margin-top: clamp(-58.4rem,-163.28125vw + 108.8rem,-16.6rem);
    gap: 0;
    padding-bottom: 40px;
    margin-bottom: 64px
}

@media (min-width: 64em) {
    .c-hero-meta__content {
        margin-top:-380px;
        padding-bottom: 56px;
        margin-bottom: 80px
    }
}

.c-hero-meta__content:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 100%;
    max-width: 112.8rem;
    height: 1px;
    background-color: var(--neutral-75);
    transform: translate(-50%)
}

.c-hero-meta__content h1 {
    font-weight: 400;
    letter-spacing: -.01em;
    text-transform: none
}

.c-hero-meta__content h1+h4 {
    margin-top: 8px
}

.c-hero-meta__back {
    color: var(--neutral-100)
}

@media (max-width: 63.9375em) {
    .c-hero-meta__back {
        display:none
    }
}

.c-hero-meta__back a {
    color: inherit
}

.c-hero-meta__back a:hover {
    color: var(--primary-50)
}

.c-hero-meta__back+* {
    margin-top: 20px
}

.c-hero-meta__image .u-media {
    --image-width: 920;
    --image-height: 482
}

.c-hero-meta__image .u-media[data-type=contain] img {
    filter: drop-shadow(var(--box-shadow))
}

.c-hero-meta__image+* {
    margin-top: 32px
}

@media (min-width: 48em) {
    .c-hero-meta__image+* {
        margin-top:48px
    }
}

.c-hero-meta__meta,.c-hero-meta__chips {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 24px
}

.c-hero-meta__meta>*,.c-hero-meta__chips>* {
    margin-top: 0
}

.c-hero-meta__chips {
    gap: 8px;
    margin-top: 32px
}

@media (min-width: 48em) {
    .c-hero-meta__chips {
        margin-top:56px
    }
}

.c-aside {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    font-size: var(--small-font-size);
    z-index: 60
}

@media (min-width: 89.375em) {
    .c-aside {
        position:sticky;
        bottom: auto;
        top: 50px;
        left: 0
    }
}

.c-aside__container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 12px 16px;
    background-color: var(--neutral-100);
    box-shadow: var(--box-shadow-elevation-light)
}

@media (min-width: 89.375em) {
    .c-aside__container {
        width:204px;
        padding: 32px;
        position: absolute;
        top: 0;
        left: 0;
        display: block
    }
}

.c-team-aside p+* {
    margin-top: 0
}

.c-team-aside hr {
    border: 0;
    border-top: 2px solid var(--neutral-75);
    margin-top: 16px;
    margin-bottom: 8px
}

@media (max-width: 89.3125em) {
    .c-team-aside__avatar~* {
        display:none
    }
}

.c-team-aside__avatar {
    background-color: var(--primary-50);
    border-radius: 50%;
    overflow: hidden
}

@media (max-width: 89.3125em) {
    .c-team-aside__avatar {
        display:block;
        width: 57px
    }
}

.c-team-aside__avatar+* {
    margin-top: 20px
}

.c-team-aside__name {
    font-size: var(--font-size);
    font-weight: 700;
    letter-spacing: -.01em;
    color: var(--primary-50)
}

.c-team-aside__job-title+* {
    margin-top: 8px
}

.c-team-aside__languages+* {
    margin-top: 16px
}

.c-team-aside .u-btn {
    text-transform: none;
    letter-spacing: 0;
    font-weight: 400;
    white-space: nowrap;
    padding-left: 8px
}

@media (max-width: 89.3125em) {
    .c-team-aside .u-btn {
        display:inline-flex;
        margin-top: 0
    }
}

.c-team-aside .u-btn>*+* {
    margin-left: 4px
}

.c-content-logo__logo {
    max-width: 300px;
    width: 100%;
    margin: 0 auto
}

.c-share-aside .c-aside__container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 18px
}

@media (min-width: 89.375em) {
    .c-share-aside .c-aside__container {
        width:98px;
        padding: 24px 12px;
        left: 44px;
        flex-direction: column;
        justify-content: center;
        align-items: center
    }
}

.c-share-aside h5 {
    color: var(--primary-50);
    text-transform: uppercase;
    flex: 1 1 100%;
    text-align: center
}

@media (max-width: 89.375em) {
    .c-share-aside h5 {
        flex:0 0 auto;
        margin-right: auto
    }
}

.c-share-aside h5+* {
    margin-top: 18px
}

.c-share-aside a {
    display: block;
    color: var(--neutral-50);
    width: 40px;
    height: 40px;
    margin-top: 0
}

@media (min-width: 48em) {
    .c-share-aside a {
        width:48px;
        height: 48px
    }
}

.c-share-aside a svg {
    width: 40px;
    height: 40px
}

@media (min-width: 48em) {
    .c-share-aside a svg {
        width:48px;
        height: 48px
    }
}

.c-share-aside a:after {
    display: none
}

.c-share-aside a:hover {
    color: var(--primary-50)
}

.c-share-aside a:focus-visible {
    outline: 2px solid var(--secondary-50)
}

.c-share-aside a.focus-visible {
    outline: 2px solid var(--secondary-50)
}

.c-arrow-links a {
    display: flex;
    align-items: center;
    padding: 16px 0;
    text-decoration: none
}

.c-arrow-links a>*+* {
    margin-left: 16px
}

.c-arrow-links svg {
    width: 24px;
    height: 24px;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-arrow-links a:hover svg {
    transform: translate(8px)
}

.c-casestudy-card {
    --trans-duration: .25s;
    position: relative;
    display: flex;
    flex-direction: column;
    background-color: var(--primary-50);
    color: var(--neutral-100)
}

@media (min-width: 48em) {
    .c-casestudy-card {
        flex-direction:row
    }
}

.c-casestudy-card[data-hover-active] {
    --trans-duration: .4s
}

.c-casestudy-card__body {
    padding: 64px 16px 24px
}

@media (min-width: 48em) {
    .c-casestudy-card__body {
        flex:0 1 100%;
        padding: 62px 32px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-end
    }
}

@media (min-width: 64em) {
    .c-casestudy-card__body {
        flex:0 0 545px;
        max-width: 545px
    }
}

.c-casestudy-card__body h3 a {
    color: inherit;
    text-decoration: none
}

.c-casestudy-card__image {
    position: relative;
    flex: 1 1 100%;
    display: block;
    order: -1
}

@media (min-width: 48em) {
    .c-casestudy-card__image {
        order:0
    }
}

.c-casestudy-card__image:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 20%;
    height: 100%;
    background-color: var(--primary-50);
    z-index: 2;
    clip-path: polygon(0 0,0 58%,0 100%);
    transition: clip-path var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

@media (max-width: 47.9375em) {
    .c-casestudy-card__image:before {
        display:none
    }
}

.c-casestudy-card__image:first-child:before {
    left: auto;
    right: 0;
    clip-path: polygon(100% 58%,100% 0,100% 100%)
}

.c-casestudy-card[data-hover-active] .c-casestudy-card__image:before {
    clip-path: polygon(0 0,100% 58%,0 100%)
}

.c-casestudy-card[data-hover-active] .c-casestudy-card__image:first-child:before {
    clip-path: polygon(0 58%,100% 0,100% 100%)
}

.c-casestudy-card__image-wrap {
    position: relative;
    display: block;
    height: 100%
}

.c-casestudy-card__image-wrap img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.c-casestudy-card__image-sizer {
    max-width: 895px;
    aspect-ratio: 895/812
}

.c-casestudy-card__chips {
    padding: 0 16px 64px;
    margin-left: -4px;
    margin-right: -4px
}

@media (min-width: 48em) {
    .c-casestudy-card__chips {
        position:absolute;
        bottom: 64px;
        left: 32px;
        padding: 0
    }
}

.c-casestudy-card__chips>* {
    margin: 0 4px
}

.c-casestudy-card__image+.c-casestudy-card__chips {
    right: 32px;
    left: auto
}

.c-filter {
    position: relative;
    grid-column: cover-page;
    margin-bottom: var(--md-block-space);
    z-index: 80;
    height: 95.5px
}

@media (min-width: 48em) {
    .c-filter {
        grid-column:full-bleed
    }
}

@media (max-width: 47.9375em) {
    .c-filter--location {
        display:none
    }
}

.c-filter__bar {
    padding: 14px 16px;
    background-color: var(--neutral-100);
    box-shadow: var(--box-shadow-elevation-light)
}

@media (min-width: 48em) {
    .c-filter__bar {
        padding:24px
    }
}

.c-filter__bar--news-insights {
    padding: 0;
    background-color: var(--neutral-100);
    box-shadow: var(--box-shadow-elevation-light)
}

.c-filter__bar--news-insights>* {
    position: relative
}

@media (min-width: 48em) {
    .c-filter__bar--news-insights>* {
        padding:0 24px
    }
}

.c-filter__bar--news-insights .form-item {
    margin: 0
}

@media (max-width: 63.9375em) {
    .c-filter__bar--news-insights .bef-links {
        width:95%;
        overflow-x: auto;
        overflow-y: hidden;
        height: 80px;
        white-space: nowrap
    }
}

.is-sticky .c-filter__bar--news-insights {
    max-width: 144rem;
    width: calc(100% - 2.4rem);
    margin-left: auto;
    margin-right: auto
}

.c-filter__button {
    --trans-duration: .25s;
    background-color: transparent;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    float: right;
    font-size: 16px;
    position: absolute;
    top: 50%;
    right: 24px;
    width: 100px;
    height: 48px;
    transform: translateY(-50%)
}

@media (max-width: 47.9375em) {
    .c-filter__button {
        right:16px;
        width: 48px
    }
}

.c-filter__button:hover {
    --trans-duration: .4s;
    color: var(--primary-50)
}

.c-filter__button>*+* {
    margin-left: 8px
}

.c-filter__button svg {
    width: 24px;
    height: 24px
}

@media (max-width: 47.9375em) {
    .c-filter__button-text {
        position:absolute;
        height: 1px;
        width: 1px;
        overflow: hidden;
        clip: rect(1px,1px,1px,1px)
    }
}

.c-filter__container {
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    width: 100%;
    background-color: var(--neutral-100);
    padding: 70px 48px 140px;
    clip-path: polygon(0 0,100% 0,100% 0,0 0);
    transition: clip-path .6s cubic-bezier(.19,1,.22,1)
}

.is-sticky .c-filter__container {
    max-width: 144rem;
    width: calc(100% - 2.4rem);
    left: 50%;
    transform: translate(-50%)
}

.c-filter.is-open .c-filter__container {
    transition-duration: .95s;
    clip-path: polygon(0 0,100% 0,100% 100%,0 100%)
}

.c-filter__title-bar {
    display: flex;
    justify-content: space-between;
    align-items: center
}

@media (min-width: 64em) {
    .c-filter__title-bar {
        padding:70px 166px 0
    }
}

.c-filter__title-bar+* {
    margin-top: 54px
}

.c-filter__title-bar p {
    font-size: var(--h3);
    line-height: var(--lh-h3);
    letter-spacing: -.01em;
    color: var(--primary-50)
}

.c-filter__title-bar p+* {
    margin-top: 0
}

.c-filter__lists {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 32px
}

@media (min-width: 48em) {
    .c-filter__lists {
        grid-template-columns:repeat(4,minmax(0,1fr));
        gap: 48px
    }
}

@media (min-width: 64em) {
    .c-filter__lists {
        padding:0 166px 140px
    }
}

.c-filter__list fieldset legend {
    font-weight: 700;
    color: var(--neutral-0)
}

.c-filter__list li+li {
    margin-top: 24px
}

.c-filter__list--2column {
    grid-column: span 2
}

.c-filter__list--2column ul {
    columns: 2;
    column-gap: 48px
}

@media (min-width: 48em) {
    .c-filter__list--2column ul {
        column-gap:85px
    }
}

.c-filter__title {
    font-weight: 700
}

.c-filter__title+* {
    margin-top: 24px
}

.views-exposed-form .fieldset-wrapper .form-checkboxes .bef-nested ul {
    margin: 0;
    padding: 0
}

.views-exposed-form .fieldset-wrapper .form-checkboxes .bef-nested ul li:before {
    width: 0;
    height: 0
}

.views-exposed-form .fieldset-wrapper .form-checkboxes .bef-nested ul li .form-item .form-checkbox {
    margin-right: 10px
}

.views-exposed-form .fieldset-wrapper .form-checkboxes .bef-nested ul li .form-item .form-checkbox,.views-exposed-form .fieldset-wrapper .form-checkboxes .bef-nested ul li .form-item label.option {
    width: auto;
    display: inline-block;
    user-select: none;
    position: relative;
    padding-left: 5px;
    text-transform: none;
    letter-spacing: 0;
    font-weight: 400;
    font-family: cera_pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;
    font-size: var(--small-font-size)
}

#views-exposed-form-location-listing-block-1 .c-filter__bar--news-insights {
    padding: 4px 33px 1px
}

.no-results {
    margin-top: 50px
}

@media (max-width: 63.9375em) {
    .i-mobile {
        visibility:hidden
    }
}

@keyframes slide {
    0% {
        transform: translate(100%)
    }

    to {
        transform: translate(-100%)
    }
}

.c-auto-slider {
    --duration: 35s;
    overflow: hidden;
    padding-bottom: var(--md-block-space)
}

.c-auto-slider__wrap {
    position: relative;
    padding: clamp(2rem,15.3153153153vw + -6.8828828829rem,8.8rem) 0
}

.c-auto-slider__wrap:before {
    content: "";
    position: absolute;
    inset: 0 16px;
    background-color: var(--primary-50)
}

.c-auto-slider__track {
    position: relative;
    box-shadow: var(--box-shadow-light)
}

.c-auto-slider__slide {
    position: relative;
    display: grid;
    grid-template-columns: .96fr 2.08fr .96fr;
    min-width: 100%;
    grid-template-areas: "one three four" "two three four";
    transform: translate(100%);
    animation-name: slide;
    animation-duration: var(--duration);
    animation-delay: calc(var(--duration) / -2);
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    z-index: 2
}

.c-auto-slider__slide~* {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    animation-delay: 0ms
}

.c-auto-slider__slide>*:nth-child(1),.c-auto-slider__slide>*:nth-child(2) {
    --image-width: 480;
    --image-height: 360
}

.c-auto-slider__slide>*:nth-child(3) {
    --image-width: 1040;
    --image-height: 720
}

.c-auto-slider__slide>*:nth-child(4) {
    --image-width: 480;
    --image-height: 720
}

.c-auto-slider__slide>*:nth-child(1) {
    grid-area: one
}

.c-auto-slider__slide>*:nth-child(2) {
    grid-area: two
}

.c-auto-slider__slide>*:nth-child(3) {
    grid-area: three
}

.c-auto-slider__slide>*:nth-child(4) {
    grid-area: four
}

.c-auto-slider__slide .u-media__wrap {
    height: 100%
}

.c-auto-slider__title {
    position: absolute;
    bottom: -.26em;
    width: 100%;
    text-align: center;
    margin: 0;
    line-height: 1.25;
    font-size: clamp(5rem,33.7837837838vw + -14.5945945946rem,20rem);
    z-index: 5;
    font-weight: 300;
    color: var(--neutral-100);
    letter-spacing: .3rem;
    text-transform: uppercase
}

.c-auto-slider__content {
    margin-top: 32px;
    text-align: center
}

@media (min-width: 48em) {
    .c-auto-slider__content {
        margin-top:68px
    }
}

.c-auto-slider__content p {
    font-size: var(--h2);
    line-height: var(--lh-h2);
    letter-spacing: -.01em;
    color: var(--neutral-25)
}

.c-auto-slider__content p+* {
    margin-top: 20px
}

@media (min-width: 48em) {
    .c-auto-slider__content p+* {
        margin-top:44px
    }
}

.c-auto-slider .c-social {
    justify-content: center
}

.c-auto-slider .c-social a {
    color: var(--neutral-25)
}

.c-auto-slider .c-social a:hover {
    color: var(--primary-50)
}

.c-jobs--content {
    padding-top: 50px
}

.c-jobs--enquiry {
    padding: 40px 0 100px
}

.c-jobs--related-roles {
    background-color: var(--neutral-75)
}

.header-job-filters h1+* {
    margin-top: 0
}

.header-job-filters .l-wrapper {
    display: block
}

.job-header-search .aside-job-filters {
    display: none
}

.job-header-search label {
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px)
}

.job-aside-search .header-job-filters {
    display: none
}

.aside-job-filters {
    padding-right: 50px
}

.aside-job-filters .keyword-search input {
    border: 2px solid var(--neutral-25);
    background-color: #fff
}

.aside-job-filters .c-accordion {
    background-color: transparent;
    border-radius: 0;
    border: 0;
    padding-left: 0;
    padding-right: 0
}

.aside-job-filters .c-accordion__title {
    text-transform: uppercase;
    letter-spacing: 2px;
    border-bottom: 2px solid var(--neutral-25);
    font-size: 1.5rem
}

.aside-job-filters .c-accordion__title span {
    padding-left: 0;
    padding-right: 0
}

.aside-job-filters .c-accordion__content {
    padding: 0
}

.aside-job-filters .c-accordion__content .fieldset-legend {
    visibility: hidden
}

.job-results {
    padding-left: 30px
}

.job-search-form-row {
    flex: 1;
    display: flex;
    position: relative;
    flex-direction: column;
    gap: 32px;
    margin-top: 48px
}

@media (min-width: 75em) {
    .job-search-form-row {
        flex-direction:row
    }
}

.job-search-form-row select {
    padding: 13px 16px
}

@media (max-width: 63.9375em) {
    .job-search-form-row>div {
        width:100%
    }
}

@media (min-width: 75em) {
    .job-search-form-row>div {
        flex:1 1 100%
    }
}

.job-search-form-row>div.action-item {
    flex: 0 0 148px
}

.job-search-form-row>div.action-item div {
    text-align: left
}

.job-search-form-row>div.action-item input {
    position: absolute;
    bottom: 0
}

.job-search-form-row .form-item {
    margin-top: 0;
    margin-bottom: 0
}

.job-search-form-row .form-item label+* {
    margin-top: 0
}

.c-job-card .c-card-article {
    border-top: 0!important
}

.c-job-card .c-card-article__chips span {
    margin-right: 10px
}

.bt-0 {
    border-top: 0!important
}

.c-jobs-block,.jobs-search-hero,.c-jobs-block-search {
    position: relative;
    z-index: 0;
    margin-bottom: var(--lg-block-space)
}

.c-jobs-block .header-job-filters h1,.jobs-search-hero .header-job-filters h1,.c-jobs-block-search .header-job-filters h1 {
    display: none
}

.c-jobs-block .header-job-filters label,.jobs-search-hero .header-job-filters label,.c-jobs-block-search .header-job-filters label {
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px)
}

.c-jobs-block .aside-job-filters,.jobs-search-hero .aside-job-filters,.c-jobs-block-search .aside-job-filters {
    display: none
}

.c-jobs-block__background,.jobs-search-hero__background,.c-jobs-block-search__background {
    --opacity: .5;
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image: var(--image);
    background-position: center;
    background-size: cover;
    background-attachment: fixed
}

.c-jobs-block__background:after,.jobs-search-hero__background:after,.c-jobs-block-search__background:after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--neutral-0);
    opacity: var(--opacity)
}

.c-jobs-block__content,.jobs-search-hero__content,.c-jobs-block-search__content {
    padding-top: 64px;
    padding-bottom: 64px;
    color: var(--neutral-100);
    text-align: center
}

@media (min-width: 48em) {
    .c-jobs-block__content,.jobs-search-hero__content,.c-jobs-block-search__content {
        padding-top:250px;
        padding-bottom: 250px
    }
}

.c-jobs-block__content h2,.jobs-search-hero__content h2,.c-jobs-block-search__content h2 {
    color: var(--primary-50)
}

.c-jobs-block__content h2+*,.jobs-search-hero__content h2+*,.c-jobs-block-search__content h2+* {
    margin-top: 32px
}

@media (min-width: 48em) {
    .c-jobs-block__content h2+*,.jobs-search-hero__content h2+*,.c-jobs-block-search__content h2+* {
        margin-top:48px
    }
}

.c-jobs-block__content p+*,.jobs-search-hero__content p+*,.c-jobs-block-search__content p+* {
    margin-top: 32px
}

@media (min-width: 48em) {
    .c-jobs-block__content p+*,.jobs-search-hero__content p+*,.c-jobs-block-search__content p+* {
        margin-top:72px
    }
}

.c-jobs-block__content .u-btn {
    margin-top: 32px
}

@media (min-width: 48em) {
    .c-jobs-block__content .u-btn {
        margin-top:96px
    }
}

.jobs-search-hero,.header-job-filters {
    margin-bottom: 0;
    --h-text-color: var(--neutral-0);
    text-align: left
}

.c-jobs-block-search {
    position: relative;
    overflow: hidden
}

@media (min-width: 75em) {
    .c-jobs-block-search {
        align-items:center;
        height: 1016px
    }

    .c-jobs-block-search__content {
        padding-top: 380px
    }
}

.c-jobs-block-search .l-wrapper {
    display: block
}

.c-jobs-block-search .c-triangle {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    aspect-ratio: 722/325;
    clip-path: polygon(0 100%,100% 0,100% 100%);
    background-color: var(--primary-50);
    opacity: .8;
    z-index: 1
}

@media (min-width: 48em) {
    .c-jobs-block-search .c-triangle {
        width:75%
    }
}

@media (min-width: 64em) {
    .c-jobs-block-search .c-triangle {
        width:50%
    }
}

.c-job-roles {
    position: relative;
    z-index: 0;
    margin-bottom: var(--lg-block-space)
}

.c-job-roles__background {
    --opacity: .5;
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image: var(--image);
    background-position: center;
    background-size: cover;
    background-attachment: fixed
}

.c-job-roles__background:after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--neutral-0);
    opacity: var(--opacity)
}

.c-job-roles__content {
    padding-top: 64px;
    padding-bottom: 64px;
    color: var(--neutral-100);
    text-align: center
}

@media (min-width: 48em) {
    .c-job-roles__content {
        padding-top:250px;
        padding-bottom: 250px
    }
}

.c-job-roles__content h2 {
    color: var(--primary-50)
}

.c-job-roles__content h2+* {
    margin-top: 32px
}

@media (min-width: 48em) {
    .c-job-roles__content h2+* {
        margin-top:48px
    }
}

.c-job-roles__content p+* {
    margin-top: 32px
}

@media (min-width: 48em) {
    .c-job-roles__content p+* {
        margin-top:72px
    }
}

.c-job-roles__list {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(0,270px));
    gap: 16px;
    justify-content: center;
    align-items: flex-start
}

.c-job-roles__item {
    border-radius: var(--border-radius);
    background-color: var(--neutral-100);
    text-align: center;
    padding: 11px;
    font-size: 1.4rem;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: .2em;
    text-transform: uppercase;
    text-decoration: none;
    display: block
}

.t-no-decoration {
    text-decoration: none!important
}

.c-enquiry-form {
    position: relative
}

.c-enquiry-form:before {
    content: "";
    display: block;
    width: 100%;
    height: clamp(20px,11.5vw,233px);
    background-color: var(--neutral-25);
    clip-path: polygon(0 0,26.875% calc(100% - 1px),100% 0,100% 100%,0 100%);
    margin-bottom: -1px
}

.c-enquiry-form--plain:before {
    display: none
}

.c-enquiry-form:last-child:after {
    content: "";
    position: absolute;
    bottom: 1px;
    left: 50%;
    max-width: 112.8rem;
    width: calc(100% - 32px);
    transform: translate(-50%);
    height: 1px;
    background-color: var(--neutral-100)
}

.c-enquiry-form--plain:last-child:after {
    display: none
}

.c-enquiry-form__form {
    padding-bottom: 48px
}

@media (min-width: 48em) {
    .c-enquiry-form__form {
        padding-top:80px;
        padding-bottom: 200px
    }
}

@media (min-width: 48em) {
    .c-enquiry-form--plain .c-enquiry-form__form {
        padding-top:48px;
        padding-bottom: 120px
    }
}

.c-enquiry-form__content {
    position: sticky;
    top: 50px;
    padding-top: 48px
}

@media (min-width: 48em) {
    .c-enquiry-form__content {
        padding-top:98px;
        padding-right: 95px;
        padding-bottom: 200px
    }
}

.c-enquiry-form__content .u-icon-text a {
    color: inherit
}

.c-enquiry-form__content .u-icon-text a:hover {
    color: var(--secondary-50)
}

.c-enquiry-form__content p+.u-icon-text {
    margin-top: 48px
}

.c-enquiry-form__content .u-icon-text+.u-icon-text {
    margin-top: 24px
}

@media (min-width: 48em) {
    .c-enquiry-form--plain .c-enquiry-form__content {
        padding-top:60px;
        padding-bottom: 0;
        padding-right: 0
    }
}

.c-enquiry-form .hs-richtext [style*=color] {
    color: inherit!important
}

.c-enquiry-form .hs-richtext a {
    color: var(--secondary-50)!important
}

.c-enquiry-form .hs-richtext a:hover {
    color: var(--neutral-100)!important
}

.c-enquiry-form .form-columns-2 {
    display: contents
}

.c-enquiry-form .form-columns-2>* {
    float: none!important;
    width: 100%!important
}

.c-social-cta {
    background-color: var(--secondary-50);
    color: var(--neutral-25);
    text-align: center;
    padding-top: var(--lg-block-space);
    padding-bottom: var(--lg-block-space)
}

.c-social-cta .c-social {
    justify-content: center
}

.c-featured-article-intro {
    padding-bottom: var(--md-block-space);
    padding-top: 32px
}

@media (min-width: 48em) {
    .c-featured-article-intro {
        padding-top:62px
    }
}

.c-featured-article-intro__column {
    display: flex;
    flex-direction: column
}

.c-featured-article {
    --opacity: .6;
    --trans-duration: .25s;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 24px;
    flex: 1 1 auto
}

.c-featured-article:before {
    content: "";
    display: block;
    aspect-ratio: 4/3;
    width: 65%
}

@media (min-width: 75em) {
    .c-featured-article:before {
        display:none
    }
}

.c-featured-article__image {
    position: absolute;
    inset: 0;
    overflow: hidden
}

.c-featured-article__image:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 75%;
    background-image: var(--grad-darkInvert);
    opacity: var(--opacity);
    z-index: 1
}

.c-featured-article__image .u-media,.c-featured-article__image .u-media__wrap {
    position: static
}

.c-featured-article__image img {
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-featured-article[data-hover-active] .c-featured-article__image img {
    --trans-duration: .4s;
    transform: scale(1.1)
}

.c-featured-article__content {
    z-index: 2;
    color: var(--neutral-100);
    width: 100%
}

@media (min-width: 64em) {
    .c-featured-article__title {
        width:50%
    }
}

.c-featured-article__title a {
    text-decoration: none;
    color: inherit
}

.c-featured-article__title+* {
    margin-top: 21px
}

.c-featured-article__meta {
    border-top: 1px solid var(--neutral-100);
    padding-top: 22px
}

@media (min-width: 64em) {
    .c-featured-article__meta {
        display:flex;
        align-items: center;
        justify-content: space-between
    }
}

.c-featured-article__chips {
    display: flex;
    gap: 8px;
    margin-top: 12px
}

@media (min-width: 64em) {
    .c-featured-article__chips {
        margin-top:0
    }
}

.h-background--primary-0 {
    --h-background-color: var(--primary-0);
    background-color: var(--primary-0)
}

.h-background--primary-50 {
    --h-background-color: var(--primary-50);
    background-color: var(--primary-50)
}

.h-background--primary-100 {
    --h-background-color: var(--primary-100);
    background-color: var(--primary-100)
}

.h-background--secondary-50 {
    --h-background-color: var(--secondary-50);
    background-color: var(--secondary-50)
}

.h-background--secondary-100 {
    --h-background-color: var(--secondary-100);
    background-color: var(--secondary-100)
}

.h-background--neutral-0 {
    --h-background-color: var(--neutral-0);
    background-color: var(--neutral-0)
}

.h-background--neutral-25 {
    --h-background-color: var(--neutral-25);
    background-color: var(--neutral-25)
}

.h-background--neutral-50 {
    --h-background-color: var(--neutral-50);
    background-color: var(--neutral-50)
}

.h-background--neutral-75 {
    --h-background-color: var(--neutral-75);
    background-color: var(--neutral-75)
}

.h-background--neutral-90 {
    --h-background-color: var(--neutral-90);
    background-color: var(--neutral-90)
}

.h-background--neutral-100 {
    --h-background-color: var(--neutral-100);
    background-color: var(--neutral-100)
}

.h-background--status-error {
    --h-background-color: var(--status-error);
    background-color: var(--status-error)
}

.h-background--grad-dark {
    --h-background-image: var(--grad-dark);
    background-image: var(--grad-dark)
}

.h-background--grad-darkInvert {
    --h-background-image: var(--grad-darkInvert);
    background-image: var(--grad-darkInvert)
}

.h-background--half-white {
    position: relative
}

.h-background--half-white:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background-color: var(--neutral-100)
}

.h-background--half-white>* {
    position: relative;
    z-index: 1
}

.h-text--primary-0 {
    --h-text-color: var(--primary-0);
    color: var(--primary-0)!important
}

.h-text--primary-50 {
    --h-text-color: var(--primary-50);
    color: var(--primary-50)!important
}

.h-text--primary-100 {
    --h-text-color: var(--primary-100);
    color: var(--primary-100)!important
}

.h-text--secondary-50 {
    --h-text-color: var(--secondary-50);
    color: var(--secondary-50)!important
}

.h-text--secondary-100 {
    --h-text-color: var(--secondary-100);
    color: var(--secondary-100)!important
}

.h-text--neutral-0 {
    --h-text-color: var(--neutral-0);
    color: var(--neutral-0)!important
}

.h-text--neutral-25 {
    --h-text-color: var(--neutral-25);
    color: var(--neutral-25)!important
}

.h-text--neutral-50 {
    --h-text-color: var(--neutral-50);
    color: var(--neutral-50)!important
}

.h-text--neutral-75 {
    --h-text-color: var(--neutral-75);
    color: var(--neutral-75)!important
}

.h-text--neutral-90 {
    --h-text-color: var(--neutral-90);
    color: var(--neutral-90)!important
}

.h-text--neutral-100 {
    --h-text-color: var(--neutral-100);
    color: var(--neutral-100)!important
}

.h-text--status-error {
    --h-text-color: var(--status-error);
    color: var(--status-error)!important
}

.h-text--lead {
    font-size: var(--lead-size)
}

.h-text--truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.h-text--nowrap {
    white-space: nowrap!important
}

.h-text--normal {
    text-transform: none!important
}

.h-text--lowercase {
    text-transform: lowercase!important
}

.h-text--uppercase {
    text-transform: uppercase!important
}

.h-text--center {
    text-align: center!important
}

.h-text--right {
    text-align: right!important
}

.h-text--left {
    text-align: left!important
}

@media (min-width: 48em) {
    .h-text--2-columns {
        columns:2;
        column-gap: calc(var(--base-space) * 4)
    }
}

[style*="--space-multi:"] {
    --space: calc(var(--base-space) * var(--space-multi))
}

@media (min-width: 22.5em) {
    [style*="--space-times-xxxs:"] {
        --space: calc(var(--base-space) * var(--space-times-xxxs))
    }
}

@media (min-width: 28.125em) {
    [style*="--space-times-xxs:"] {
        --space: calc(var(--base-space) * var(--space-times-xxs))
    }
}

@media (min-width: 35em) {
    [style*="--space-times-xs:"] {
        --space: calc(var(--base-space) * var(--space-times-xs))
    }
}

@media (min-width: 48em) {
    [style*="--space-times-sm:"] {
        --space: calc(var(--base-space) * var(--space-times-sm))
    }
}

@media (min-width: 64em) {
    [style*="--space-times-md:"] {
        --space: calc(var(--base-space) * var(--space-times-md))
    }
}

@media (min-width: 75em) {
    [style*="--space-times-lg:"] {
        --space: calc(var(--base-space) * var(--space-times-lg))
    }
}

@media (min-width: 85.375em) {
    [style*="--space-times-xl:"] {
        --space: calc(var(--base-space) * var(--space-times-xl))
    }
}

@media (min-width: 120em) {
    [style*="--space-times-xxl:"] {
        --space: calc(var(--base-space) * var(--space-times-xxl))
    }
}

@media (min-width: 160em) {
    [style*="--space-times-xxxl:"] {
        --space: calc(var(--base-space) * var(--space-times-xxxl))
    }
}

.layout-builder-form {
    margin-top: 4rem
}

.hbspt-form iframe {
    max-width: 974px;
    width: 100%;
    margin: 0 auto;
    padding: 0 16px
}

.align-center iframe {
    display: block;
    margin-left: auto;
    margin-right: auto
}