﻿/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
body {
    background-color: #EB7100;
}

.block__content .block {
    border: 1px dashed lightgray;
    padding: 2rem;
    margin: 2rem 0;
    position: relative;
}

h2.block_label {
    position: absolute;
    right: 0;
    top: -40px;
    font-size: 60px;
    color: #efefef;
}

fieldset.form-wrapper {
    border: none !important;
}

    fieldset.form-wrapper .fieldset__wrapper {
        border: 1px solid #efefef;
    }

    fieldset.form-wrapper .fieldset__legend {
        font-size: 1.3rem;
    }

input[type=text]:focus {
    outline-width: 2px;
    outline-style: solid;
}

.form-item__label {
    font-weight: 500;
}

.form-item {
    margin-top: 1.5rem;
    margin-bottom: 2.125rem;
}

nav.breadcrumb, .form-item__description, .fieldset__description, .filter-help a, a.tabs__link, #drupal-off-canvas-wrapper div {
    font-size: 1.3rem;
    line-height: 1.6;
}

nav ul.tabs {
    justify-content: space-between;
}

    nav ul.tabs .tabs__tab {
        flex-grow: 1;
    }

        nav ul.tabs .tabs__tab a {
            justify-content: center;
        }

#block-phg-primary-local-tasks {
    position: fixed;
    z-index: 1000;
    top: calc(50% - 110px);
    left: 40px;
    background-color: white;
    font-size: 1.2rem;
    padding: 1.8rem;
    border: 1px solid #efefef;
    box-shadow: rgba(0,0,0,0.1) 0px 4px 12px;
}

@media(max-width:36rem) {
    #block-phg-primary-local-tasks {
        display: none;
    }
}

#block-phg-primary-local-tasks ul {
    padding: 0;
    margin: 0;
}

#block-phg-primary-local-tasks li {
    line-height: 1.8;
}

#block-phg-primary-local-tasks a {
    color: #666;
    text-decoration: none;
}

    #block-phg-primary-local-tasks a:hover, #block-phg-primary-local-tasks a.is-active {
        color: Black;
        font-weight: bold;
    }

body.path-user {
    height: 100%;
    background-color: #efefef;
}

.user {
    height: 100%;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 300px;
    flex-direction: column;
}

    .user .content {
        height: 100%;
        width: auto;
        border: 1px dotted #ddd;
        padding: 2rem;
        max-width: 1140px;
        background-color: White;
    }

        .user .content .form-item {
            display: flex;
            flex-direction: column;
        }

iframe {
    width: 100%;
}

*, *:before, *:after {
    box-sizing: border-box
}

:root {
    --primary-0: #151f3e;
    --primary-50: #192d5a;
    --primary-100: #d1d9f0;
    --primary-magenta: #e6007e;
    --primary-yellow: #f9b233;
    --primary-green: #95c11f;
    --primary-cyan: #009fe3;
    --primary-grey: #c9dde1;
    --primary-purple: #442562;
    --secondary-magenta-0: #87155e;
    --secondary-magenta: #991a6b;
    --secondary-magenta-100: #d6a3c4;
    --secondary-yellow: #f59d24;
    --secondary-green: #4bad6f;
    --secondary-blue: #00808e;
    --secondary-grey: #5b6982;
    --neutral-0: #000;
    --neutral-25: #3d3d3d;
    --neutral-50: #696969;
    --neutral-60: #eaeaea;
    --neutral-75: #f6f6f6;
    --neutral-100: #fff;
    --black-20: rgba(0,0,0,.2);
    --white-60: rgba(255,255,255,.6);
    --status-error: #e6007e;
    --font-size: 1.8rem;
    --font-size-16: 1.6rem;
    --lead-size: 2.1rem;
    --small-font-size: 1.3rem;
    --h1: 3.9rem;
    --h2: 3.3rem;
    --h3: 2.4rem;
    --h4: 2.1rem;
    --h5: 1.8rem;
    --h6: 1.6rem;
    --base-space: 8px;
    --space: calc(var(--base-space) * 3);
    --box-shadow: 0 0 8px rgba(0,0,0,.25);
    --border-radius: 6px
}

@media (min-width:64em) {
    :root {
        --h1: 5.1rem;
        --h2: 3.8rem;
        --h3: 2.8rem
    }
}


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;
    line-height: 1.6;
}

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
}

@keyframes floatRight {
    0% {
        transform: translate(calc(var(--distance) * 0 + var(--offset-x)),calc(var(--distance) * 0 + var(--offset-y)))
    }

    20% {
        transform: translate(calc(var(--distance) * 1 + var(--offset-x)),calc(var(--distance) * 1 + var(--offset-y)))
    }

    40% {
        transform: translate(calc(var(--distance) * -1 + var(--offset-x)),calc(var(--distance) * 1 + var(--offset-y)))
    }

    60% {
        transform: translate(calc(var(--distance) * 1 + var(--offset-x)),calc(var(--distance) * -1 + var(--offset-y)))
    }

    80% {
        transform: translate(calc(var(--distance) * 1 + var(--offset-x)),calc(var(--distance) * 0 + var(--offset-y)))
    }

    to {
        transform: translate(calc(var(--distance) * 0 + var(--offset-x)),calc(var(--distance) * 0 + var(--offset-y)))
    }
}

@keyframes floatLeft {
    0% {
        transform: translate(calc(var(--distance) * 0 + var(--offset-x)),calc(var(--distance) * 0 + var(--offset-y)))
    }

    20% {
        transform: translate(calc(var(--distance) * -1 + var(--offset-x)),calc(var(--distance) * 1 + var(--offset-y)))
    }

    40% {
        transform: translate(calc(var(--distance) * 1 + var(--offset-x)),calc(var(--distance) * 1 + var(--offset-y)))
    }

    60% {
        transform: translate(calc(var(--distance) * -1 + var(--offset-x)),calc(var(--distance) * -1 + var(--offset-y)))
    }

    80% {
        transform: translate(calc(var(--distance) * -1 + var(--offset-x)),calc(var(--distance) * 0 + var(--offset-y)))
    }

    to {
        transform: translate(calc(var(--distance) * 0 + var(--offset-x)),calc(var(--distance) * 0 + var(--offset-y)))
    }
}

body {
    font-family: Figtree,proxima-nova,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;
    font-size: 1.8em;
    font-weight: 500;
    line-height: 1.6;
    color: var(--neutral-0);
    background-color: var(--neutral-100);
    background-image: none;
    font-kerning: normal;
    -webkit-font-smoothing: antialiased;
    width: 100%
}

    body[data-lock] {
        overflow: hidden
    }

button {
    border: 0;
    cursor: pointer;
    line-height: 1
}

    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
}

    figure.align-left {
        margin: calc(var(--base-space) * 2);
        margin-left: 0
    }

    figure.align-right {
        margin: calc(var(--base-space) * 2);
        margin-right: 0
    }

div.align-left img {
    margin: calc(var(--base-space) * 2);
    margin-left: 0
}

div.align-right img {
    margin: calc(var(--base-space) * 2);
    margin-right: 0
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 0;
    line-height: 1.3
}

    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:where(:not(.visually-hidden)) {
        font-size: var(--h1)
    }

        h1:where(:not(.visually-hidden)) + * {
            margin-top: calc(var(--base-space) * 3)
        }

    h2:where(:not(.visually-hidden)) {
        font-size: var(--h2);
        font-weight: 600
    }

        h2:where(:not(.visually-hidden)) + * {
            margin-top: calc(var(--base-space) * 3)
        }

        h2:where(:not(.visually-hidden)) + .u-lead {
            margin-top: calc(var(--base-space) * 3)
        }

    h3:where(:not(.visually-hidden)) {
        font-size: var(--h3)
    }

* + h3:where(:not(.visually-hidden)) {
    margin-top: calc(var(--base-space) * 3)
}

h3:where(:not(.visually-hidden)) + * {
    margin-top: calc(var(--base-space) * 3)
}

h4:where(:not(.visually-hidden)) {
    font-size: var(--h4)
}

* + h4:where(:not(.visually-hidden)) {
    margin-top: calc(var(--base-space) * 3)
}

h4:where(:not(.visually-hidden)) + * {
    margin-top: calc(var(--base-space) * 3)
}

h5:where(:not(.visually-hidden)) {
    font-size: var(--h5)
}

* + h5:where(:not(.visually-hidden)) {
    margin-top: calc(var(--base-space) * 3)
}

h5:where(:not(.visually-hidden)) + * {
    margin-top: calc(var(--base-space) * 1.5)
}

h6:where(:not(.visually-hidden)) {
    font-size: var(--h6);
    text-transform: uppercase
}

    h6:where(:not(.visually-hidden)) + * {
        margin-top: calc(var(--base-space) * 2)
    }

p + * {
    margin-top: calc(var(--base-space) * 4)
}

p + p {
    margin-top: calc(var(--base-space) * 3)
}

.u-lead {
    font-size: 2.1rem;
    line-height: 1.3
}

    .u-lead + * {
        margin-top: calc(var(--base-space) * 4)
    }

* + ul:not([data-unstyled]):not(.gin*), * + ol:not([data-unstyled]):not(.gin*) {
    margin-top: calc(var(--base-space) * 4)
}

ul:not([data-unstyled]):not(.gin*) + *, ol:not([data-unstyled]):not(.gin*) + * {
    margin-top: calc(var(--base-space) * 4)
}

[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 {
    max-width: 140px;
    border-top: 2px solid get-color("neutral","black");
    margin-left: 0
}

html {
    font-family: sans-serif;
    font-size: 62.5%
}

img {
    vertical-align: middle;
    border: 0
}

a:not(:where([data-drupal-link-system-path])):not(:where([class*=layout-builder])):not(:where([class*=toolbar-menu])) {
    position: relative;
    display: inline-block;
    background-color: transparent;
    color: var(--primary-50);
    text-decoration: none;
    -webkit-text-decoration-skip: objects;
    transition: color .25s cubic-bezier(.3,.15,.18,1);
    z-index: 0;
    padding: 0
}

@media (prefers-reduced-motion:reduce) {
    a:not(:where([data-drupal-link-system-path])):not(:where([class*=layout-builder])):not(:where([class*=toolbar-menu])) {
        transition: none !important
    }
}

a:not(:where([data-drupal-link-system-path])):not(:where([class*=layout-builder])):not(:where([class*=toolbar-menu])):hover {
    color: var(--secondary-magenta)
}

a:not(:where([data-drupal-link-system-path])):not(:where([class*=layout-builder])):not(:where([class*=toolbar-menu])):focus {
    outline: -webkit-focus-ring-color auto 2px;
}

a:not(:where([data-drupal-link-system-path])):not(:where([class*=layout-builder])):not(:where([class*=toolbar-menu])):focus-visible {
    outline: -webkit-focus-ring-color auto 2px;
}

a:not(:where([data-drupal-link-system-path])):not(:where([class*=layout-builder])):not(:where([class*=toolbar-menu])).focus-visible {
    outline: 2px solid var(--primary-50);
    outline-offset: 2px
}

:where(p) a {
    color: var(--secondary-magenta)
}

    :where(p) a:hover {
        text-decoration: underline
    }

[id] {
    scroll-margin-top: calc(var(--base-space) * 4)
}

.c-hero__content h1 {
    margin-bottom: 2.3rem
}

.c-hero__content a:hover {
    text-decoration: none
}

.c-header ul,
.c-header ol {
    margin-bottom: 0;
    padding: 0;
    list-style: none
}

    ul:first-child:not(.webform-progress-tracker), ol:first-child:not(.webform-progress-tracker) {
        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(.webform-progress-tracker):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(.webform-progress-tracker):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(.webform-progress-tracker):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(.webform-progress-tracker):not([class*=nav])) li + li {
                /*margin-top: calc(var(--base-space) * 1.5)*/
            }

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)
    }

dl {
    margin: 0
}

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%
    }
}

.ui-datepicker .ui-datepicker-title select, .ui-widget {
    font-size: 100%;
    padding: 0;
}

.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,62.4rem) [half-end half2-start] minmax(0,62.4rem) [content-end half2-end full-bleed-end] 1fr [full-page-end] 1.2rem [cover-page-end]
}

@media (min-width:79.5em) {
    .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,9.6rem) [content-start half-start] 62.4rem [half-end half2-start] 62.4rem [content-end half2-end] minmax(0,9.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,41.6rem) [third-end third2-start] minmax(0,41.6rem) [third2-end third3-start] minmax(0,41.6rem) [content-end third3-end full-bleed-end] 1fr [full-page-end] 1.2rem [cover-page-end]
}

@media (min-width:79.5em) {
    .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,9.6rem) [content-start third-start] 41.6rem [third-end third2-start] 41.6rem [third2-end third3-start] 41.6rem [content-end third3-end] minmax(0,9.6rem) [full-bleed-end] 1fr [full-page-end] 1.2rem [cover-page-end]
    }
}

.l-halves {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space,2.4rem) var(--column,2.4rem)
}
/*864px*/
@media (min-width:48em) {
    .l-halves {
        display: grid;
        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);
    grid-template-columns: minmax(0,1fr)
}

@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-quarter-three-quarters {
    display: grid;
    gap: var(--space,2.4rem) var(--column,2.4rem);
    grid-template-columns: minmax(0,1fr)
}

@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);
    grid-template-columns: minmax(0,1fr)
}

@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: 62.4rem;
    width: 100%;
    margin: 0 auto
}

.l-wrapper [data-width="8column"] {
    max-width: 83.2rem;
    width: 100%;
    margin: 0 auto
}

.l-wrapper [data-width="10column"] {
    max-width: 104rem;
    width: 100%;
    margin: 0 auto
}

.l-wrapper [data-align=left] {
    margin: 0
}

@keyframes rotateIcon {
    0% {
        transform: translateY(-50%) rotate(0)
    }

    to {
        transform: translateY(-50%) rotate(359deg)
    }
}

.u-btn {
    --color: var(--neutral-100);
    --background: var(--primary-50);
    --background-hover: var(--primary-0);
    --background-light: var(--primary-100);
    --transition-duration: .25s;
    display: inline-block;
    position: relative;
    font-weight: 500;
    line-height: 1;
    z-index: 0;
    text-align: center;
    font-size: var(--font-size-16);
    text-decoration: none;
    color: var(--color);
    background-color: transparent;
    border-radius: var(--border-radius);
    border: 0;
    padding: calc(var(--base-space) * 2) calc(var(--base-space) * 4);
    transition: color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

@media (prefers-reduced-motion:reduce) {
    .u-btn {
        --transition-duration: 1ms
    }
}

.u-btn:before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    transition: opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1),transform var(--transition-duration) cubic-bezier(.3,.15,.18,1);
    z-index: -1;
    transform-origin: center
}

.u-btn:after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    border-radius: var(--border-radius);
    background-color: var(--background);
    border: 2px solid var(--background);
    transition: transform var(--transition-duration) cubic-bezier(.3,.15,.18,1),background-color var(--transition-duration) cubic-bezier(.3,.15,.18,1),border-color var(--transition-duration) cubic-bezier(.3,.15,.18,1);
    transform-origin: center
}

.u-btn--icon {
    padding-left: calc(var(--base-space) * 2);
    padding-right: calc(var(--base-space) * 5)
}

    .u-btn--icon svg {
        position: absolute;
        top: 50%;
        right: calc(var(--base-space) * 2);
        width: 16px;
        height: 16px;
        transform: translateY(-50%);
        transition: transform .2s ease-in-out
    }

.u-btn > * {
    pointer-events: none
}

.u-btn.focus-visible {
    outline: 2px solid var(--background);
    outline-offset: 3px
}

.u-btn:focus-visible {
    outline: 2px solid var(--background);
    outline-offset: 4px
}

p > .u-btn + .u-btn {
    margin-left: calc(var(--base-space) * 1.5)
}

.u-btn:hover {
    --transition-duration: .4s;
    --background: var(--background-hover);
    color: var(--color)
}

    .u-btn:hover:before, .u-btn:hover:after {
        transform: scaleX(1.1)
    }

    .u-btn:hover:before {
        opacity: 1
    }

.u-btn--secondary {
    --color: var(--background) !important;
    background-color: transparent
}

    .u-btn--secondary:before {
        opacity: 0
    }

    .u-btn--secondary:after {
        background-color: transparent
    }

    .u-btn--secondary:active:after {
        background-color: var(--background-light)
    }

.u-btn--tertiary {
    --color: var(--neutral-0);
    --background: var(--secondary-magenta);
    --background-hover: var(--secondary-magenta);
    padding: 0 0 calc(var(--base-space) * 1);
    border-radius: 0;
    border: 0;
    background-color: transparent
}

    .u-btn--tertiary:before {
        top: auto;
        left: 0;
        right: 0;
        bottom: 0;
        height: 2px;
        background-color: currentColor;
        opacity: 1;
        box-shadow: none
    }

    .u-btn--tertiary:after {
        display: none
    }

    .u-btn--tertiary:hover:before, .u-btn--tertiary:active:before {
        background-color: var(--background)
    }

    .u-btn--tertiary:active {
        --color: var(--background)
    }

.u-btn--pink {
    --color: var(--neutral-100);
    --background: var(--secondary-magenta);
    --background-light: var(--secondary-magenta-100);
    --background-hover: var(--secondary-magenta-0)
}

    .u-btn--pink:not(.u-btn--secondary):hover {
        color: var(--neutral-100)
    }

.u-btn:hover span svg {
    transform: translateY(-50%) scale(1.2)
}

.u-btn--white {
    --color: var(--neutral-0);
    --background: var(--neutral-100);
    --background-hover: var(--neutral-100);
    --background-light: var(--neutral-60)
}

.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: 40px;
    --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)
}

    .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: 75%
    }
}

.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: 628
    }

.u-media__wrap {
    position: relative;
    overflow: hidden;
    border-radius: var(--border-radius)
}

    .u-media__wrap:before {
        content: "";
        display: block;
        padding-bottom: calc(var(--image-height) / var(--image-width) * 100%)
    }

.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[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-bottom: calc(var(--base-space) * 5)
}

.u-read-more__container.data-active, .u-read-more__container.active {
    height: auto;
    transition: height .4s cubic-bezier(.3,.15,.18,1)
}

.u-scroll-anim--line {
    --distance: 0
}

@media (min-width:48em) {
    .u-scroll-anim--line {
        --distance: 40px
    }
}

body.loaded .u-scroll-anim--line .u-scroll-anim__line > * {
    transform: translateY(var(--distance));
    opacity: 0
}

body.loaded .u-scroll-anim--line[data-scroll-anim-active] .u-scroll-anim__line > * {
    transform: none;
    opacity: 1;
    transition: transform .65s cubic-bezier(.3,.15,.18,1),opacity .65s cubic-bezier(.3,.15,.18,1)
}

    body.loaded .u-scroll-anim--line[data-scroll-anim-active] .u-scroll-anim__line > *:nth-child(2) {
        transition-delay: .15s
    }

    body.loaded .u-scroll-anim--line[data-scroll-anim-active] .u-scroll-anim__line > *:nth-child(3) {
        transition-delay: .3s
    }

    body.loaded .u-scroll-anim--line[data-scroll-anim-active] .u-scroll-anim__line > *:nth-child(4) {
        transition-delay: .45s
    }

@media (prefers-reduced-motion:reduce) {
    body.loaded .u-scroll-anim--line[data-scroll-anim-active] .u-scroll-anim__line > * {
        transition: none
    }
}

.u-scroll-anim {
    --distance: 0
}

@media (min-width:48em) {
    .u-scroll-anim {
        --distance: 40px
    }
}

body.loaded .u-scroll-anim {
    transform: translateY(var(--distance));
    opacity: 0
}

    body.loaded .u-scroll-anim[data-scroll-anim-active] {
        transform: none;
        opacity: 1;
        transition: transform .65s cubic-bezier(.3,.15,.18,1),opacity .65s cubic-bezier(.3,.15,.18,1)
    }

@media (prefers-reduced-motion:reduce) {
    body.loaded .u-scroll-anim[data-scroll-anim-active] {
        transition: none
    }
}

.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-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(/themes/phg/dist/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(/themes/phg/dist/images/tick-primary.svg)
}

.u-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

    .u-video:focus {
        z-index: 1
    }

.u-video__player > *, .u-video__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

    .u-video__player > * iframe, .u-video__overlay iframe {
        width: 100%;
        height: 100%
    }

.u-video__player {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 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: 124.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: get-color("neutral","100");
    background-color: get-color("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: get-color("primary","50");
        background-color: get-color("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: get-color("neutral","0")
}

    .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-visually-hidden {
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px)
}

    .u-visually-hidden + * {
        margin-top: 0
    }

.u-chip {
    --color: var(--neutral-0);
    --background: rgba(255,255,255,.6);
    --trans-duration: .25s;
    display: inline-flex;
    align-items: center;
    padding: calc(var(--base-space) * 1.375) calc(var(--base-space) * 2);
    border-radius: 20px;
    line-height: 1;
    font-weight: 600;
    border: 1px solid rgba(0,0,0,.2);
    background-color: var(--background);
    color: var(--color);
    transition: background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1),color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

    .u-chip svg {
        width: 12px;
        height: 20px;
        margin-left: calc(var(--base-space) * 2)
    }

    .u-chip[href]:active {
        --color: var(--neutral-100);
        --background: var(--secondary-megenta);
        --trans-duration: .4s
    }

.u-pagination {
    display: inline-flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    margin-bottom: calc(var(--base-space) * 4);
    flex-wrap: wrap
}

    .u-pagination > * + * {
        margin-left: calc(var(--base-space) * 1)
    }

    .u-pagination a {
        text-decoration: none
    }

        .u-pagination a:after {
            display: none
        }

    .u-pagination > span, .u-pagination > a {
        display: inline-block;
        font-weight: 500;
        line-height: 1;
        min-width: 56px;
        padding: calc(var(--base-space) * 2.25) calc(var(--base-space) * .75);
        border: 2px solid var(--neutral-75);
        border-radius: var(--border-radius)
    }

    .u-pagination > span {
        background-color: var(--primary-50);
        border-color: var(--primary-50);
        color: var(--neutral-100)
    }

    .u-pagination a {
        --trans-duration: .25s;
        background-color: var(--neutral-75);
        color: var(--primary-50);
        transition: border-color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
    }

        .u-pagination a:hover {
            --trans-duration: .4s;
            border-color: var(--primary-50)
        }

    .u-pagination > .u-pagination__arrow {
        display: inline-flex;
        align-items: center;
        background-color: transparent;
        border: 0;
        padding: calc(var(--base-space) * 2.5) calc(var(--base-space) * 2);
        color: var(--primary-50);
        transition: background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
    }

        .u-pagination > .u-pagination__arrow > * + * {
            margin-left: calc(var(--base-space) * 1)
        }

        .u-pagination > .u-pagination__arrow svg {
            width: 24px;
            height: 15px
        }

        .u-pagination > .u-pagination__arrow:hover {
            background-color: var(--neutral-75)
        }

.u-pagination__load_more {
    list-style-type: none;
    padding-inline-start: unset;
    display: flex;
    justify-content: center
}

    .u-pagination__load_more li:before {
        display: none
    }

.u-media-decoration {
    --offset-right: calc(var(--base-space) * 10);
    --offset-bottom: 0;
    --deco-size: 40%;
    position: relative
}

.c-content-image-signpost .u-media-decoration {
    --offset-right: calc(var(--base-space) * 6);
    --offset-bottom: calc(var(--base-space) * 11.25);
    --deco-size: 60%
}

@media (min-width:48em) {
    .u-media-decoration {
        padding-right: var(--offset-right);
        padding-bottom: var(--offset-bottom)
    }
}

.u-media-decoration--large {
    --deco-size: 47.5%;
    --offset-right: 0;
    --offset-bottom: 0
}

.u-media-decoration__decor {
    position: absolute;
    bottom: 0;
    right: 0;
    width: var(--deco-size);
    aspect-ratio: 4/3
}

    .u-media-decoration__decor img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: bottom right
    }

    .u-media-decoration__decor.u-media-alternative {
        right: unset;
        left: 0;
        justify-self: flex-start !important
    }

@media (max-width:47.9375em) {
    .u-media-decoration__decor {
        display: none
    }
}

.u-media-decoration__extra {
    position: absolute;
    top: calc(var(--base-space) * 9);
    transform: translate(-50%)
}

    .u-media-decoration__extra svg {
        width: 55px;
        height: 44px
    }

.u-media-decoration__extra--left {
    left: 0
}

.u-media-decoration__extra--right {
    right: 20px
}

@media (max-width:47.9375em) {
    .u-media-decoration__extra {
        display: none
    }
}

.u-icon-text {
    --space: calc(var(--base-space) * 1.5);
    display: inline-flex;
    align-items: center
}

    .u-icon-text svg {
        width: calc(var(--base-space) * 3);
        height: calc(var(--base-space) * 3);
        margin-right: var(--space)
    }

.u-author {
    display: inline-flex;
    align-items: center;
    font-weight: 500
}

.u-author__image {
    position: relative;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    overflow: hidden;
    margin-right: calc(var(--base-space) * 1.5)
}

    .u-author__image img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover
    }

.u-decoration {
    --small-circle-width: clamp(24rem,46.484375vw + -11.7rem,35.9rem);
    --small-circle-inset: 0;
    --small-circle-transform: none;
    --large-circle-width: clamp(39.4rem,75.78125vw + -18.8rem,58.8rem);
    --large-circle-inset: 0;
    --large-circle-transform: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    pointer-events: none
}

    .u-decoration > * {
        position: absolute;
        aspect-ratio: 1/1;
        border-radius: 50%;
        opacity: .2
    }

.u-decoration__small-circle {
    top: 35px;
    width: var(--small-circle-width);
    inset: var(--small-circle-inset);
    transform: var(--small-circle-transform)
}

.u-decoration__large-circle {
    top: 0;
    width: var(--large-circle-width);
    inset: var(--large-circle-inset);
    transform: var(--large-circle-transform)
}

.u-mouse-follow {
    --halfWidth: calc(var(--1vw) * 50);
    --fullWidth: calc(var(--1vw-no-unit) * 100);
    --halfHeight: calc(var(--1vh) * 50);
    --fullHeight: calc(var(--1vh-no-unit) * 100);
    --distance: 50;
    --x-distance: var(--distance,50);
    --y-distance: var(--distance,50);
    --move-x: 0px;
    --move-y: 0px
}

@media (min-width:48em) {
    .u-mouse-follow {
        --move-x: calc(((var(--mouse-x) * 1px - var(--halfWidth)) / var(--fullWidth)) * var(--x-distance) * 2);
        --move-y: calc(((var(--mouse-y) * 1px - var(--halfHeight)) / var(--fullHeight)) * var(--y-distance) * 2)
    }
}

.u-mouse-follow__item, .u-mouse-follow.u-mouse-follow--item {
    transform: translate(var(--move-x),var(--move-y));
    transition: transform .45s linear
}

.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;
    padding-inline-start: 0px;
    margin-top: 0
}

    .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(--primary-50)
}

.c-slider__slide:focus-visible {
    outline: 2px solid 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(--primary-50);
    position: relative;
    width: 20px;
    height: 20px;
    transform: translate(-4px);
    transition: transform .4s cubic-bezier(.3,.15,.18,1);
    background-color: transparent;
    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: 12px;
        height: 12px;
        background-color: transparent;
        border-radius: 50%;
        border: 2px solid var(--color);
        transition: transform .4s cubic-bezier(.3,.15,.18,1),background-color .4s cubic-bezier(.3,.15,.18,1)
    }

    .c-slider__dot:hover:before, .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: center;
    color: var(--primary-50)
}

    .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__arrow {
    --trans-duration: .25s;
    position: absolute;
    top: 50%;
    z-index: 1;
    color: inherit;
    background-color: transparent;
    width: 48px;
    height: 48px;
    padding: 12px;
    background-color: var(--neutral-100);
    transform: translateY(-50%);
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

    .c-slider__arrow:hover {
        --trans-duration: .4s
    }

    .c-slider__arrow[data-arrow=prev] {
        left: 0;
        border-top-right-radius: var(--border-radius);
        border-bottom-right-radius: var(--border-radius)
    }

        .c-slider__arrow[data-arrow=prev]:hover {
            transform: translate(-10px,-50%)
        }

    .c-slider__arrow[data-arrow=next] {
        right: 0;
        border-top-left-radius: var(--border-radius);
        border-bottom-left-radius: var(--border-radius)
    }

        .c-slider__arrow[data-arrow=next]:hover {
            transform: translate(10px,-50%)
        }

    .c-slider__arrow svg {
        width: 24px;
        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__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-slider.property-slider .c-slider__dots {
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    --color: var(--neutral-100)
}

    .c-slider.property-slider .c-slider__dots .c-slider__dot {
        content: "";
        --color: var(--neutral-100);
        box-shadow: var(--box-shadow)
    }

        .c-slider.property-slider .c-slider__dots .c-slider__dot:before {
            --color: var(--neutral-100);
            opacity: 1
        }

.c-accordion-list {
    --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-accordion-list {
        --top: 15;
        --bot: 18
    }
}

.c-accordion-list:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-accordion-list__intro .u-btn-link {
    display: none
}

@media (min-width:48em) {
    .c-accordion-list__intro .u-btn-link {
        display: block
    }
}

.c-accordion-list__mobile-btn {
    text-align: center;
    margin-top: calc(var(--base-space) * 4)
}

@media (min-width:48em) {
    .c-accordion-list__mobile-btn {
        display: none
    }
}

.c-accordion {
    --trans-duration: .25s;
    position: relative;
    text-align: left;
    width: 100%;
    background-color: var(--neutral-100);
    border: 2px solid var(--neutral-50);
    border-radius: var(--border-radius);
    transition: border-color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

    .c-accordion:hover, .c-accordion.data-active {
        --trans-duration: .4s;
        border-color: var(--secondary-magenta)
    }

.c-accordion__list {
    margin-top: calc(var(--base-space) * 3)
}

    .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: var(--h5);
    font-weight: 500;
    color: var(--neutral-0);
    padding: 0;
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    line-height: 1.6
}

.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(--secondary-magenta)
}

.c-accordion__icon {
    position: relative;
    width: 40px;
    height: 36px;
    margin-left: 16px;
    margin-right: 10px;
    outline: none;
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    color: currentColor
}

    .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: calc(var(--base-space) * 2)
}

.c-content-5050 {
    --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-content-5050 {
        --top: 15;
        --bot: 18
    }
}

.c-content-5050:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-content-5050__container {
    --space: calc(var(--base-space) * 8);
    --column: calc(var(--base-space) * 6)
}

.c-content-cards {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-content-cards {
        --top: 0;
        --bot: 18
    }
}

.c-content-cards:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-content-cards .l-halves {
    align-items: start
}

.c-content-cards__content {
    grid-row: 1
}

@media (min-width:48em) {
    .c-content-cards__content {
        grid-row: auto
    }
}

@media (max-width:47.9375em) {
    .c-content-cards__content {
        grid-row: 2
    }
}

.c-content-image-5050 {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-content-image-5050 {
        --top: 0;
        --bot: 18.75
    }
}

.c-content-image-5050__content {
    order: 1;
    font-size: var(--h4)
}

@media (min-width:48em) {
    .c-content-image-5050__content {
        order: 0
    }
}

.c-content-image-5050__content .u-btn:hover {
    color: var(--neutral-100)
}

.c-content-image-5050--with-circles .c-content-image-5050__container {
    align-items: center
}

.c-content-image-5050__image {
    position: relative;
    z-index: -1
}

@media (min-width:48em) {
    .c-content-image-5050__image {
        padding-right: 25%
    }

    .c-content-image-5050__image--is-right {
        padding-left: 25%;
        padding-right: 0
    }
}

.c-content-image-5050__image .u-media {
    z-index: 1
}

.c-content-image-5050__image-circle-small {
    position: absolute;
    top: calc(var(--base-space) * 5);
    left: 34%;
    width: 52%;
    border-radius: 50%;
    aspect-ratio: 1/1;
    opacity: .2;
    transform: translate(15%,70%);
    z-index: 0
}

@media (min-width:48em) {
    .c-content-image-5050__image-circle-small {
        left: 0;
        width: 40%;
        transform: translate(170%,-60%);
        --distance: 10px;
        --offset-x: 170%;
        --offset-y: -60%;
        animation-name: floatRight;
        animation-duration: 20s;
        animation-timing-function: ease-in-out;
        animation-iteration-count: infinite
    }
}

.c-content-image-5050__image--is-right .c-content-image-5050__image-circle-small {
    left: 14%;
    transform: translate(-15%,70%)
}

@media (min-width:48em) {
    .c-content-image-5050__image--is-right .c-content-image-5050__image-circle-small {
        left: 100%;
        width: 40%;
        transform: translate(-270%,-60%);
        --offset-x: -270%
    }
}

.c-content-image-5050__image-circle-large {
    position: absolute;
    top: calc(var(--base-space) * 5);
    left: 14%;
    width: 68%;
    border-radius: 50%;
    aspect-ratio: 1/1;
    opacity: .2;
    transform: translate(-15%,90%);
    z-index: -1;
}

@media (min-width:48em) {
    .c-content-image-5050__image-circle-large {
        left: 0;
        width: 60%;
        transform: translate(60%);
        --distance: 15px;
        --offset-x: 60%;
        --offset-y: 0%;
        animation-name: floatRight;
        animation-duration: 20s;
        animation-timing-function: ease-in-out;
        animation-iteration-count: infinite;
        animation-delay: -7s
    }
}

.c-content-image-5050__image--is-right .c-content-image-5050__image-circle-large {
    left: 14%;
    transform: translate(15%,90%)
}

@media (min-width:48em) {
    .c-content-image-5050__image--is-right .c-content-image-5050__image-circle-large {
        left: 100%;
        width: 60%;
        transform: translate(-160%);
        --offset-x: -160%
    }
}

.c-content-image-5050 .u-media-decoration__decor.u-media-alternative {
    left: -120px;
    bottom: -40px
}

.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]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-content {
    --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-content {
        --top: 15;
        --bot: 10
    }
}

.c-content:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-image + .c-content, .c-content + .c-content {
    margin-top: calc(var(--base-space) * -6)
}

@media (min-width:48em) {
    .c-image + .c-content, .c-content + .c-content {
        margin-top: calc(var(--base-space) * -15)
    }
}

.c-content:not([class*=h-background]) + *:not([class*=h-background]) {
    --top: 0
}

.c-content img {
    max-width: 100%;
    height: auto
}

.c-content > figure.u-media {
    margin-bottom: calc(var(--base-space) * 4)
}

.c-content:has(+ .c-property-page__circles) {
    z-index: 1
}

.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;
    gap: calc(var(--base-space) * 4);
    justify-content: center
}

@media (min-width:48em) {
    .c-cookie-bar__btn-list {
        flex-direction: row;
        margin-top: 0
    }
}

.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;
    gap: calc(var(--base-space) * 4)
}

@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;
    margin-top: calc(var(--base-space) * 7.5);
    font-size: var(--font-size-16);
    padding-top: calc(var(--base-space) * 5);
    padding-bottom: calc(var(--base-space) * 5)
}

@media (min-width:48em) {
    .c-footer {
        padding-top: calc(var(--base-space) * 7.5);
        padding-bottom: calc(var(--base-space) * 7.5)
    }
}

.c-footer-message {
    --column: calc(var(--base-space) * 4)
}

.c-footer a {
    display: block;
    color: var(--neutral-100)
}

    .c-footer a:hover {
        text-decoration: underline
    }

.c-footer__container {
    --column: calc(var(--base-space) * 4)
}

.c-footer__details > * + * {
    margin-top: calc(var(--base-space) * 2)
}

.c-footer__logo + * {
    margin-top: calc(var(--base-space) * 4)
}

@media (min-width:48em) {
    .c-footer__logo + * {
        margin-top: calc(var(--base-space) * 10.5)
    }
}

.c-footer__logo, .c-footer__logo svg {
    width: 170px;
    height: 50px
}

.c-footer__title {
    font-size: var(--h6);
    font-weight: 700;
    margin-top: calc(var(--base-space) * 1) !important
}

@media (min-width:48em) {
    .c-footer__title + * {
        margin-top: calc(var(--base-space) * 2) !important
    }
}

@media (min-width:64em) {
    .c-footer__links:nth-child(2) ~ * {
        padding-left: calc(var(--base-space) * 9.5)
    }
}

.c-footer__links-list > * + * {
    margin-top: calc(var(--base-space) * 2)
}

.c-footer li {
    list-style-type: none;
}
.c-footer__links-list li a {
    text-decoration: none
}

    .c-footer__links-list li a:hover {
        text-decoration: underline
    }

.c-footer__external-links {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: calc(var(--base-space) * 5)
}

@media (min-width:48em) {
    .c-footer__external-links {
        flex-direction: row;
        justify-content: space-between;
        padding-top: calc(var(--base-space) * 9)
    }
}

.c-footer__logo-links {
    display: flex;
    justify-content: center;
    max-width: 100%;
    flex-wrap: wrap
}

    .c-footer__logo-links > * + * {
        margin-left: calc(var(--base-space) * 2);
        margin-right: calc(var(--base-space) * 2)
    }

@media (max-width:47.9375em) {
    .c-footer__logo-links + * {
        margin-top: calc(var(--base-space) * 4)
    }
}

.c-footer__logo-links img {
    height: 100%;
    width: auto;
    max-height: 50px;
    margin-bottom: calc(var(--base-space) * 2)
}

@media (min-width:48em) {
    .c-footer__logo-links img {
        max-height: 60px
    }
}

.c-footer__bar {
    padding-top: calc(var(--base-space) * 5)
}

@media (min-width:48em) {
    .c-footer__bar {
        padding-top: calc(var(--base-space) * 9)
    }
}

.c-footer__bar-links {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--base-space) * 3) calc(var(--base-space) * 9);
    font-size: 1.3rem
}

    .c-footer__bar-links a {
        text-decoration: none
    }

        .c-footer__bar-links a:hover {
            text-decoration: underline
        }

@media (min-width:48em) {
    .c-footer__bar-links {
        flex-direction: row
    }
}

.c-footer__end-details {
    margin-top: calc(var(--base-space) * 4);
    text-align: center;
    font-size: 1.3rem
}

@media (min-width:48em) {
    .c-footer__end-details {
        text-align: left;
        display: flex;
        justify-content: space-between
    }
}

.c-footer__escape {
    margin-top: calc(var(--base-space) * 3);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem
}

@media (min-width:48em) {
    .c-footer__escape {
        margin-top: 0;
        justify-content: flex-start
    }
}

body.loaded .c-footer {
    transform: translateY(100px);
    opacity: 0
}

    body.loaded .c-footer[data-scroll-anim-active] {
        transform: none;
        opacity: 1;
        transition: transform .65s cubic-bezier(.3,.15,.18,1),opacity .65s cubic-bezier(.3,.15,.18,1)
    }

.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]):not([class*=h-maintain-space]) {
    --top: 0
}

@keyframes fadeInError {
    0% {
        opacity: 0
    }
}

.c-form label, .c-form legend {
    display: block;
    font-weight: 400
}

    .c-form label + *, .c-form legend + * {
        margin-top: calc(var(--base-space) * 1.5)
    }

.c-form textarea {
    resize: vertical;
    min-height: 256px
}

.c-form textarea, .c-form input, .c-form select {
    --color: var(--black-20);
    --focus-color: var(--secondary-magenta);
    --font-color: var(--neutral-0);
    display: block;
    width: 100%;
    box-shadow: none;
    font-family: Figtree,proxima-nova,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;
    font-size: 1.8rem;
    border: 2px solid var(--neutral-50);
    background-color: var(--neutral-100);
    color: var(--font-color);
    border-radius: 5px;
    padding: calc(var(--base-space) * 1.75) calc(var(--base-space) * 2);
    line-height: 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 {
        border-color: var(--focus-color);
        outline: 0
    }

.c-form select {
    appearance: none;
    z-index: 10;
    position: relative;
    background: transparent
}

.c-form .select-wrapper {
    position: relative
}

    .c-form .select-wrapper:after {
        content: "";
        display: block;
        box-sizing: border-box;
        position: absolute;
        width: 10px;
        height: 10px;
        border-bottom: 2px solid;
        border-right: 2px solid;
        transform: rotate(45deg);
        top: 2rem;
        right: 1.5rem;
        z-index: 0
    }

.c-form__group + .c-form__group {
    margin-top: calc(var(--base-space) * 4.5)
}

@media (max-width:34.9375em) {
    .c-form__group--submit .u-btn {
        width: 100%
    }
}

.c-form fieldset.c-form__group {
    border: 0;
    padding: 0
}

.c-form__input[data-error] textarea, .c-form__input[data-error] input, .c-form__input[data-error] select, .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, .c-form__input.form-item--error textarea, .c-form__input.form-item--error input, .c-form__input.form-item--error select, .c-form__group.form-item--error textarea, .c-form__group.form-item--error input, .c-form__group.form-item--error select, .c-form .u-input-btn.form-item--error textarea, .c-form .u-input-btn.form-item--error input, .c-form .u-input-btn.form-item--error select {
    border-color: var(--status-error)
}

.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, .c-form .form-item--error-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.8rem
    }

        .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);
    gap: calc(var(--base-space) * 1)
}

    .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-group label + * {
    margin-top: calc(var(--base-space) * 2)
}

.c-form__search-group + .c-form__search-group {
    margin-top: calc(var(--base-space) * 4)
}

@media (min-width:48em) {
    .c-form__search-group + .c-form__search-group {
        margin-top: calc(var(--base-space) * 3)
    }
}

@media (min-width:48em) {
    .c-form__search-wrap {
        display: flex
    }
}

.c-form__search-wrap > * {
    flex: 1 1 auto
}

    .c-form__search-wrap > * + * {
        margin-top: calc(var(--base-space) * 3)
    }

@media (min-width:48em) {
    .c-form__search-wrap > * + * {
        margin-top: 0;
        margin-left: calc(var(--base-space) * 3)
    }
}

.c-form__search-select {
    flex: 0 0 168px
}

.c-form__consent-text {
    font-size: var(--small-font-size)
}

    .c-form__consent-text p + *, .c-form__consent-text ul + * {
        margin-top: calc(var(--base-space) * 2)
    }

    .c-form__consent-text ul > li:before {
        height: 7px !important;
        width: 7px !important;
        top: .5em !important;
        left: -1.3em !important
    }

#complaint\,-compliment-or-comment-form {
    padding-bottom: 20px
}

.c-checkbox {
    --transition-duration: .25s;
    align-items: center;
    display: flex;
    flex-basis: 100%
}

    .c-checkbox input {
        position: absolute;
        height: 1px;
        width: 1px;
        overflow: hidden;
        clip: rect(1px,1px,1px,1px)
    }

        .c-checkbox input:hover + label, .c-checkbox input:focus + label, .c-checkbox input:focus-visible + label {
            --transition-duration: .4s
        }

        .c-checkbox input:hover + label {
            cursor: pointer
        }

        .c-checkbox input.focus-visible + label {
            --transition-duration: .4s
        }

    .c-checkbox label {
        user-select: none;
        position: relative;
        padding-left: 32px;
        text-transform: none;
        letter-spacing: 0;
        font-weight: 400;
        min-height: 24px;
        color: var(--neutral-25)
    }

        .c-checkbox label > * {
            pointer-events: none
        }

        .c-checkbox label a {
            pointer-events: auto
        }

        .c-checkbox label:before, .c-checkbox label svg {
            position: absolute;
            top: 50%;
            left: 0;
            transform: translateY(-50%);
            width: 24px;
            height: 24px
        }

        .c-checkbox label svg {
            left: 4px;
            width: 16px;
            height: 16px;
            color: #fff;
            opacity: 0
        }

        .c-checkbox label:before {
            content: "";
            border: 1px solid var(--black-20);
            border-radius: 2px;
            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-form .c-checkbox label + p {
    margin-top: 0
}

.c-checkbox p a {
    color: var(--neutral-0)
}

.c-checkbox input:checked + label:before {
    border-color: var(--primary-50);
    background-color: var(--primary-50)
}

.c-checkbox input:checked + label:hover:before {
    background-color: var(--primary-0)
}

.c-checkbox input:checked + label svg {
    opacity: 1
}

.c-checkbox input:focus + label:before, .c-checkbox input:hover + label:before {
    border-color: var(--primary-50)
}

.js-form-item-agree .c-checkbox {
    padding: calc(var(--base-space) * 5) 0 calc(var(--base-space) * 4) 0
}

: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 {
    --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
}

    .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: 1px solid var(--black-20);
        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(--primary-50);
        opacity: 0;
        transition: opacity var(--transition-duration) cubic-bezier(.3,.15,.18,1)
    }

.c-radio:hover label:before {
    border-color: var(--primary-50)
}

.c-radio input:checked + label:before {
    border-color: var(--primary-50)
}

.c-radio input:checked + label:hover:before {
    background-color: var(--primary-100)
}

.c-radio input:checked + label:after {
    opacity: 1
}

.c-radio input:focus + label:before, .c-radio input:hover + label:before {
    border-color: var(--primary-50)
}

.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-0)
}

    .choices:focus {
        outline: none
    }

    .choices:last-child {
        margin-bottom: 0
    }

    .choices[data-type*=select-one] {
        cursor: pointer
    }

    .choices [hidden] {
        display: none !important
    }

.choices__inner {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    background-color: transparent;
    padding: calc(var(--base-space) * 1.5) calc(var(--base-space) * 2);
    overflow: hidden;
    border-radius: 2px;
    border: 1px solid var(--black-20);
    color: var(--neutral-0)
}

    .choices__inner:hover, .choices.is-focused .choices__inner {
        border-color: var(--primary-50)
    }

[data-error] .choices__inner {
    border-color: var(--status-error)
}

.choices[data-type*=select-multiple] .choices__inner {
    padding: 25px 0 4px;
    min-height: 67px
}

.choices__item {
    cursor: default
}

.choices__item--selectable {
    cursor: pointer
}

.choices__item--disabled {
    cursor: not-allowed;
    user-select: none;
    opacity: .5
}

.choices__list {
    font-size: 1.4rem;
    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(--neutral-100);
    top: 100%;
    margin-top: min(-2px,-1 * var(--border-radius));
    overflow: hidden;
    word-break: break-all;
    opacity: 0;
    pointer-events: none;
    border: 1px solid var(--primary-50);
    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(--primary-50);
    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-0);
    color: var(--neutral-100);
    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(--primary-50);
        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(--primary-50);
    color: var(--neutral-100)
}

.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(--primary-50)
}

    .choices__icon svg {
        position: absolute;
        top: 0;
        left: 0;
        width: 24px;
        height: 24px
    }

[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-full-width-media {
    --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-full-width-media {
        --top: 18;
        --bot: 18
    }
}

.c-full-width-media:not([class*=h-background]):not(.c-full-width-media--cover) + *:not([class*=h-background]) {
    --top: 0
}

.c-full-width-media--cover {
    --top: 0;
    --bot: 0
}

    .c-full-width-media--cover .u-media {
        --image-width: 375;
        --image-height: 580;
        --border-radius: 0
    }

@media (min-width:48em) {
    .c-full-width-media--cover .u-media {
        --image-width: 1440;
        --image-height: 580
    }
}

.c-full-width-media--cover .u-media__wrap {
    height: 580px
}

.c-header-search {
    --trans-duration: .4s;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    padding-top: calc(var(--base-space) * 11.25);
    background-color: var(--primary-50);
    z-index: 60;
    opacity: 0;
    pointer-events: none;
    max-width: none;
    max-height: none;
    transition: opacity var(--trans-duration) cubic-bezier(.215,.61,.355,1);
    overflow: hidden;
    max-width: calc(var(--1vw,1vw) * 100);
    margin: 0
}

    .c-header-search[open] {
        --trans-duration: .65s;
        opacity: 1;
        pointer-events: auto
    }

.c-header-search__decoration {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: -500px;
    z-index: -1
}

@media (min-width:48em) {
    .c-header-search__decoration {
        left: -300px
    }
}

@media (min-width:64em) {
    .c-header-search__decoration {
        left: 0
    }
}

.c-header-search__decoration > * {
    position: absolute;
    aspect-ratio: 1/1;
    border-radius: 50%;
    background-color: var(--primary-100);
    opacity: .05
}

.c-header-search__decoration-circle-one {
    left: -280px;
    top: -430px;
    width: 1100px
}

@media (min-width:48em) {
    .c-header-search__decoration-circle-one {
        left: -250px
    }
}

.c-header-search__decoration-circle-two {
    left: 670px;
    top: 175px;
    width: 395px
}

@media (min-width:48em) {
    .c-header-search__decoration-circle-two {
        left: 750px;
        top: 45px;
        width: 435px
    }
}

@media (max-width:47.9375em) {
    .c-header-search__decoration-circle-two {
        display: none
    }
}

.c-header-search__decoration-circle-three {
    left: 520px;
    top: 405px;
    width: 350px
}

@media (min-width:48em) {
    .c-header-search__decoration-circle-three {
        left: 560px;
        top: 345px;
        width: 435px
    }
}

.c-header-search__form {
    display: flex;
    align-items: flex-start;
    transform: translateY(-40px);
    transition: transform var(--trans-duration) cubic-bezier(.215,.61,.355,1)
}

.c-header-search[open] .c-header-search__form {
    transform: none
}

.c-header-search__field {
    flex: 1 1 100%;
    position: relative
}

    .c-header-search__field input {
        width: 100%;
        padding: calc(var(--base-space) * 2) calc(var(--base-space) * 8);
        line-height: 1;
        border-radius: 28px;
        border: 0;
        box-shadow: none
    }

        .c-header-search__field input::placeholder {
            color: var(--neutral-0)
        }

.c-header-search__button {
    position: absolute;
    top: 0;
    left: calc(var(--base-space) * 1);
    width: 56px;
    height: 56px;
    padding: 16px;
    color: var(--primary-0);
    transition: color .25s cubic-bezier(.3,.15,.18,1);
    background-color: transparent
}

    .c-header-search__button:hover {
        color: var(--primary-50);
        transition-duration: .4s
    }

    .c-header-search__button svg {
        width: 24px;
        height: 24px
    }

.c-header-search__close {
    --trans-duration: .25s;
    flex: 0 0 56px;
    margin-left: calc(var(--base-space) * 2);
    width: 56px;
    height: 56px;
    padding: 18px;
    background-color: var(--neutral-100);
    color: var(--neutral-0);
    border-radius: 50%;
    transition: background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1),color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

    .c-header-search__close:hover {
        background-color: var(--primary-50);
        color: var(--neutral-100)
    }

    .c-header-search__close svg {
        width: 20px;
        height: 20px
    }

.futr-webchat-root {
    transition: opacity .45s cubic-bezier(.3,.15,.18,1)
}

    .futr-webchat-root.is-active {
        opacity: 0;
        pointer-events: none
    }

        .futr-webchat-root.is-active * {
            pointer-events: none !important
        }

.c-header {
    position: relative;
    z-index: 20;
    background-color: var(--neutral-100);
    font-size: 1.6rem
}

    .c-header:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }

.c-header__container {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-template-areas: "language-select language-select" "logo actions" "mobile-container mobile-container";
    background-color: var(--neutral-100)
}

@media (max-width:81.1875em) {
    .c-header__container {
        padding-bottom: calc(var(--base-space) * 1)
    }
}

@media (min-width:81.25em) {
    .c-header__container {
        grid-template-columns: repeat(6,minmax(0,1fr));
        grid-template-areas: "logo logo subnav subnav subnav language-select" "nav nav nav nav nav actions"
    }
}

@media (max-width:81.1875em) {
    .c-header__mobile-container {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: calc(100 * var(--1vh,1vh) - 104px);
        grid-area: mobile-container;
        display: flex;
        flex-direction: column;
        background-color: var(--neutral-100);
        padding: calc(var(--base-space) * 4) calc(var(--base-space) * 2);
        z-index: -1;
        overflow: auto;
        transform: translateY(-100%);
        transition: transform .65s cubic-bezier(.19,1,.22,1)
    }

        .c-header__mobile-container.data-active {
            transform: none;
            transition-duration: .95s
        }
}

@media (min-width:81.25em) {
    .c-header__mobile-container {
        display: contents
    }
}

.c-header__logo {
    grid-area: logo;
    display: block;
    margin-bottom: calc(var(--base-space) * 2)
}

@media (min-width:81.25em) {
    .c-header__logo {
        margin-top: calc(var(--base-space) * 3)
    }
}

.c-header__logo, .c-header__logo svg {
    width: 136px;
    height: 40px
}

@media (min-width:81.25em) {
    .c-header__logo, .c-header__logo svg {
        width: 170px;
        height: 50px
    }
}

@media (max-width:81.1875em) {
    .c-header__logo {
        margin-top: calc(var(--base-space) * 1.5);
        margin-bottom: calc(var(--base-space) * 1.5)
    }
}

@media (max-width:81.1875em) {
    .c-header__subnav {
        order: 1;
        border-top: 1px solid var(--primary-50);
        padding-top: calc(var(--base-space) * 2);
        margin-top: calc(var(--base-space) * 2)
    }
}

@media (min-width:81.25em) {
    .c-header__subnav {
        grid-area: subnav;
        margin-right: -30px
    }
}

@media (min-width:81.25em) {
    .c-header__subnav > ul {
        display: flex;
        justify-content: flex-end;
        margin-right: calc(var(--base-space) * 3)
    }
}

@media (min-width:81.25em) {
    .c-header__subnav > ul > * + * {
        margin-left: calc(var(--base-space) * 3)
    }
}

.c-header__button {
    --trans-duration: .25s;
    position: relative;
    display: flex;
    align-items: center;
    color: var(--primary-50);
    background-color: transparent;
    padding: calc(var(--base-space) * 2) 0 calc(var(--base-space) * 2);
    width: 100%;
    justify-content: space-between;
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

@media (min-width:81.25em) {
    .c-header__button {
        line-height: 1.625;
        padding: calc(var(--base-space) * 4.25) 0 calc(var(--base-space) * 2);
        justify-content: flex-start;
        width: auto
    }
}

.c-header__button > * + * {
    margin-left: 8px
}

.c-header__button svg {
    width: 12px;
    height: 7px;
    transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

.c-header__button:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px
}

.c-header__subitem--has-children:hover .c-header__button, .c-header__subitem--has-children:focus-within .c-header__button, .c-header__item:hover .c-header__button, .c-header__item:focus-within .c-header__button {
    --trans-duration: .4s;
    color: var(--secondary-magenta)
}

@media (min-width:81.25em) {
    .c-header__subitem--has-children:hover .c-header__button svg, .c-header__subitem--has-children:focus-within .c-header__button svg, .c-header__item:hover .c-header__button svg, .c-header__item:focus-within .c-header__button svg {
        transform: rotateX(180deg)
    }
}

@media (max-width:81.1875em) {
    .c-header__subitem--has-children.data-active .c-header__button, .c-header__item.data-active .c-header__button {
        --trans-duration: .4s;
        color: var(--secondary-magenta)
    }

        .c-header__subitem--has-children.data-active .c-header__button svg, .c-header__item.data-active .c-header__button svg {
            transform: rotateX(180deg)
        }
}

@media (min-width:81.25em) {
    .c-header__subitem--has-children:hover .c-header__button, .c-header__subitem--has-children:focus-within .c-header__button {
        z-index: 4
    }
}

.c-header__nav .c-header__button {
    font-weight: 500
}

@media (min-width:81.25em) {
    .c-header__nav .c-header__button {
        padding-top: calc(var(--base-space) * 2.5);
        padding-bottom: calc(var(--base-space) * 2.5)
    }
}

.c-header__subitem {
    position: relative
}

    .c-header__subitem ul {
        min-width: 240px;
        --trans-duration: .25s
    }

@media (max-width:81.1875em) {
    .c-header__subitem ul {
        padding: calc(var(--base-space) * 2) 0 calc(var(--base-space) * 5)
    }
}

@media (min-width:81.25em) {
    .c-header__subitem ul {
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 3;
        transform: translateY(-20px);
        opacity: 0;
        pointer-events: none;
        transition: transform var(--trans-duration) cubic-bezier(.215,.61,.355,1),opacity var(--trans-duration) cubic-bezier(.215,.61,.355,1)
    }

        .c-header__subitem ul:before {
            content: "";
            position: absolute;
            top: -76px;
            left: -16px;
            right: -16px;
            bottom: -16px;
            background-color: var(--neutral-100);
            box-shadow: var(--box-shadow)
        }
}

.c-header__subitem ul a {
    display: block;
    position: relative;
    line-height: 1.625;
    padding: calc(var(--base-space) * 1) 0;
    text-decoration: none
}

    .c-header__subitem ul a:hover {
        color: var(--secondary-magenta)
    }

    .c-header__subitem ul a:after {
        position: absolute;
        top: 0;
        bottom: 0;
        left: -16px;
        right: -16px;
        background-color: var(--secondary-magenta-100);
        opacity: 0;
        z-index: -1;
        transform: none;
        width: auto;
        height: auto
    }

@media (min-width:81.25em) {
    .c-header__subitem ul a:after {
        content: ""
    }
}

.c-header__subitem ul a:hover:after {
    opacity: 1;
    transform: none
}

.c-header__subitem--has-children:hover ul, .c-header__subitem ul:focus-within {
    --trans-duration: .4s;
    opacity: 1;
    transform: none;
    pointer-events: auto
}

.c-header__language-select {
    position: relative;
    grid-area: language-select;
    display: flex;
    align-items: flex-start
}

@media (min-width:81.25em) {
    .c-header__language-select {
        justify-content: flex-end
    }

        .c-header__language-select:before {
            content: "";
            position: absolute;
            top: 35px;
            left: 34px;
            height: 24px;
            width: 1px;
            background-color: currentColor
        }
}

.c-header__language-select ul {
    display: none
}

@media (max-width:81.1875em) {
    .c-header__language-select .c-header__button {
        padding-bottom: calc(var(--base-space) * 1);
        justify-content: flex-start
    }
}

@media (min-width:81.25em) {
    .c-header__language-select .c-header__button {
        margin-left: calc(var(--base-space) * 3)
    }
}

.c-header__language-select .c-header__button .goog-te-gadget, .c-header__language-select .c-header__button .goog-te-gadget-simple {
    color: var(--primary-50);
    font-family: Figtree,proxima-nova,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;
    font-size: var(--h6)
}

.c-header__language-select .c-header__button .goog-te-gadget-simple {
    background-color: #fff;
    border-left: none;
    border-top: none;
    border-bottom: none;
    border-right: none;
    padding-top: 0;
    padding-bottom: 0
}

    .c-header__language-select .c-header__button .goog-te-gadget-simple img {
        display: none
    }

    .c-header__language-select .c-header__button .goog-te-gadget-simple .goog-te-menu-value {
        color: var(--primary-50);
        display: flex;
        justify-content: center;
        margin-left: 0;
        margin-right: 0;
        transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
    }

        .c-header__language-select .c-header__button .goog-te-gadget-simple .goog-te-menu-value:hover, .c-header__language-select .c-header__button .goog-te-gadget-simple .goog-te-menu-value:active {
            color: var(--secondary-magenta)
        }

.c-header__language-select .c-header__button .goog-te-menu-value > * {
    display: none
}

.c-header__language-select .c-header__button .goog-te-menu-value > span:first-child {
    display: block
}

.c-header__nav {
    grid-area: nav
}

@media (min-width:81.25em) {
    .c-header__nav > ul {
        display: flex
    }
}

@media (max-width:81.1875em) {
    .c-header__nav > ul > * + * {
        margin-top: 1px
    }
}

@media (min-width:81.25em) {
    .c-header__nav > ul > * + * {
        margin-left: calc(var(--base-space) * 3)
    }
}

@media (max-width:81.1875em) {
    .c-header__subnav-dropdown, .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)
    }

        .c-header__subnav-dropdown.data-active, .c-header__dropdown.data-active {
            height: auto;
            transition: height .4s cubic-bezier(.3,.15,.18,1)
        }
}

@media (min-width:81.25em) {
    .c-header__subnav-dropdown, .c-header__dropdown {
        height: auto !important
    }
}

@media (max-width:81.1875em) {
    .c-header__dropdown {
        margin-left: -1.2rem;
        margin-right: -1.2rem
    }

        .c-header__dropdown .c-signpost-btn {
            display: none
        }
}

@media (min-width:81.25em) {
    .c-header__dropdown {
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background-color: var(--neutral-100);
        transform: translateY(-100%);
        z-index: -1;
        transition: transform .25s cubic-bezier(.215,.61,.355,1)
    }
}

.c-header__dropdown li + li {
    margin-top: calc(var(--base-space) * 2)
}

.c-header__dropdown a:not([class*=c-signpost]) {
    display: flex;
    align-items: center;
    text-decoration: none
}

@media (max-width:81.1875em) {
    .c-header__dropdown a:not([class*=c-signpost]) {
        justify-content: space-between
    }
}

.c-header__dropdown a:not([class*=c-signpost]) > * + * {
    margin-left: calc(var(--base-space) * 1)
}

.c-header__dropdown a:not([class*=c-signpost]):hover {
    color: var(--secondary-magenta)
}

.c-header__dropdown a:not([class*=c-signpost]) svg {
    width: 24px;
    height: 24px
}

@media (min-width:81.25em) {
    .c-header__dropdown a:not([class*=c-signpost]) svg {
        opacity: 0
    }
}

.c-header__dropdown a:not([class*=c-signpost]):hover svg {
    opacity: 1
}

.c-header__dropdown a:not([class*=c-signpost]):after {
    display: none
}

@media (min-width:48em) {
    .c-header__item:hover .c-header__dropdown, .c-header__dropdown:focus-within {
        transform: none;
        transition-duration: .4s
    }
}

.c-header__dropdown-container {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: calc(var(--base-space) * 2) 0 calc(var(--base-space) * 5)
}

    .c-header__dropdown-container ul {
        width: 100%
    }

@media (min-width:81.25em) {
    .c-header__dropdown-container ul {
        width: auto;
        min-width: 40%
    }
}

.c-header__actions {
    grid-area: language-select;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    z-index: 1
}

@media (min-width:1301px) {
    .c-header__actions {
        margin-right: -75px
    }

        .c-header__actions .desktop {
            display: none
        }
}

@media (max-width:1301px) {
    .c-header__actions .mobile {
        display: none
    }
}

@media (max-width:81.1875em) {
    .c-header__actions {
        grid-area: actions
    }
}

@media (min-width:81.25em) {
    .c-header__actions > * + * {
        margin-left: calc(var(--base-space) * 2.5);
        grid-area: actions
    }
}

@media (max-width:81.1875em) {
    .c-header__actions .u-btn {
        padding-left: calc(var(--base-space) * 3);
        padding-right: calc(var(--base-space) * 3)
    }
}

.c-header__actions--mobile-nav {
    z-index: 2;
    display: flex;
    gap: 20px;
    flex-direction: column-reverse
}

@media (min-width:1301px) {
    .c-header__actions--mobile-nav {
        flex-direction: row;
        gap: 5px
    }
}

.c-header__actions--mobile-nav-buttons {
    display: flex;
    gap: 20px;
    flex-direction: row;
    margin-right: 0 !important
}

@media (max-width:81.1875em) {
    .c-header__actions--mobile-nav {
        order: 2;
        flex-direction: row-reverse;
        display: flex;
        flex-direction: column-reverse
    }

        .c-header__actions--mobile-nav > * + * {
            margin-right: calc(var(--base-space) * 2.5)
        }
}

@media (min-width:81.25em) {
    .c-header__actions--mobile-nav {
        grid-area: actions;
        margin-right: calc(var(--base-space) * -9)
    }
}

.c-header__header {
    font-weight: 700
}

.c-header__search {
    width: 48px;
    height: 48px;
    padding: 12px;
    color: var(--secondary-magenta);
    background-color: transparent
}

    .c-header__search:hover {
        color: var(--primary-50)
    }

    .c-header__search:focus-visible {
        outline: 2px solid currentColor;
        outline-offset: 2px
    }

    .c-header__search svg {
        width: 24px;
        height: 24px
    }

.c-header__mobile-btn {
    --burger-size: 48px;
    background-color: transparent;
    color: var(--secondary-magenta);
    margin-left: 8px;
    margin-right: -8px
}

@media (min-width:81.25em) {
    .c-header__mobile-btn {
        display: none
    }
}

.c-hero {
    --anim-distance: 0px;
    margin: 0 0 calc(var(--base-space) * 4) 0;
    z-index: 0
}

@media (max-width:34.9375em) {
    .c-hero {
        overflow-x: clip
    }
}

@media (min-width:48em) {
    .c-hero {
        margin: 0
    }
}
.c-hero--is-home .c-hero__with-image {
    min-height: 460px;
}
.c-hero__with-image {
    min-height: 400px
}

.c-hero + .c-info-list {
    margin-top: calc(var(--base-space) * 8)
}

.c-hero__container {
    position: relative
}

.c-hero__content {
    position: relative;
    z-index: 1;
    padding-top: 26px;
    order: 1
}

@media (min-width:48em) {
    .c-hero__content {
        padding-top: 72px;
        order: 0;
        margin-bottom: 32px
    }
}

@media (max-width:47.9375em) {
    .c-hero__content {
        padding-top: 0
    }
}

.c-hero__content h1 {
    color: inherit
}

.c-hero__content p {
    font-size: 2.1rem
}

.c-hero__content .u-btn {
    margin-right: calc(var(--base-space) * 2)
}

.c-hero__content .u-btn--icon {
    padding-left: calc(var(--base-space) * 3);
    padding-right: calc(var(--base-space) * 8)
}

    .c-hero__content .u-btn--icon svg {
        position: absolute;
        top: 50%;
        width: 23px;
        right: unset;
        height: 14px;
        transform: translateY(-50%);
        margin-left: calc(var(--base-space) * 2)
    }

.c-hero + section {
    --top: 0
}

@media (min-width:48em) {
    .c-hero--has-image .c-hero__content {
        padding-top: 0;
        margin-bottom: auto;
        height: 100%;
        align-content: center;
        display: flex;
        flex-wrap: wrap;
        width: 150%;
    }
}

.c-hero--is-home .c-hero__content {
    margin-bottom: 40px;
    transform: translateY(var(--anim-distance));
    color: var(--neutral-100);
    display: block;
    width: 100%;
}


@media (min-width:48em) {
    .c-hero--is-home .c-hero__content {
        padding-top: 40px;
        color: var(--neutral-100)
    }
}

@media (min-width:992px) {
    .c-hero--is-home .c-hero__content {
        margin-bottom: 100px;
    }
}
@media (max-width:47.9375em) {
    .c-hero--is-home .c-hero__content .u-btn {
        width: 100%;
        margin-left: 0
    }

        .c-hero--is-home .c-hero__content .u-btn + .u-btn {
            margin-top: calc(var(--base-space) * 2)
        }
}

@media (min-width:48em) {
    .c-hero--is-home .c-hero__content .u-btn:not(.u-btn--pink) {
        --color: var(--neutral-0);
        --background: var(--neutral-100);
        --background-light: var(--neutral-60)
    }
}

.c-hero--has-breadcrumb .c-hero__content {
    padding-top: calc(var(--base-space) * 2)
}

.c-hero__content-circle {
    position: absolute;
    width: 100%;
    background-color: transparent !important;
    opacity: 1;
    z-index: -1
}

    .c-hero__content-circle:before, .c-hero__content-circle:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 138%;
        aspect-ratio: 1/1;
        border-radius: 50%;
        transform: translate(-57%,calc(-60% + var(--anim-distance)))
    }

@media (min-width:48em) {
    .c-hero__content-circle:before, .c-hero__content-circle:after {
        width: 100%;
        transform: translate(-30%,calc(-35% + var(--anim-distance)))
    }
}

.c-hero__content-circle:after {
    background-color: var(--h-background-color);
    z-index: 1
}

.c-hero--is-home .c-hero__content-circle {
    opacity: 1;
    z-index: inherit
}

    .c-hero--is-home .c-hero__content-circle:before {
        background-color: #7f7f7f
    }

    .c-hero--is-home .c-hero__content-circle:after {
        mix-blend-mode: overlay
    }

.c-hero__image {
    position: absolute;
    width: 50%;
    right: 0;
    margin-top: calc(var(--base-space) * 4.5);
    min-width: 350px !important
}

@media (min-width:48em) {
    .c-hero__image {
        margin-top: 0;
        left: 50%;
        right: unset
    }
}

@media (max-width:47.9375em) {
    .c-hero__image {
        margin-top: 0
    }
}

.c-hero__image {
    position: static;
    width: 100%;
    left: auto
}

@media (min-width:48em) {
    .c-hero__image {
        margin-top: 20px;
        margin-bottom: 20px;
    }
}

@media (max-width:47.9375em) {
    .c-hero__image.c-hero__alt {
        position: absolute
    }
}

.c-hero--is-home .c-hero__image {
    position: static;
    width: 100%;
    left: auto;
    transform: translateY(var(--anim-distance))
}

@media (min-width:48em) {
    .c-hero--is-home .c-hero__image {
        position: absolute;
        width: 50%;
        left: 50%;
        top: 0;
        margin-top: calc(var(--base-space) * 4.5)
    }
}

.c-hero__image-wrap {
    position: relative;
    width: 50%;
    margin-left: auto;
    aspect-ratio: 1/1;
    border-radius: 50%;
    overflow: hidden
}

@media (min-width:48em) {
    .c-hero__image-wrap {
        margin-left: calc(var(--base-space) * 3);
        width: calc(60.3333333333% + 24px);
        margin-left: auto;
    }
}

.c-hero__image-wrap img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

@media (min-width:48em) {
    .c-hero--is-home .c-hero__image-wrap {
        /*width: 100%;*/
        margin-left: 0;
        left: 50%;
        transform: translate(-50%)
    }
}

.c-hero__image-circle {
    opacity: .2
}

    .c-hero__image-circle:not(.c-hero__image-wrap) {
        position: absolute;
        top: 16px;
        right: -24px;
        width: 80%;
        aspect-ratio: 1/1;
        border-radius: 50%
    }

@media (min-width:48em) {
    .c-hero__image-circle:not(.c-hero__image-wrap) {
        top: calc(var(--base-space) * 5);
        right: 0;
        width: calc(41.6666666667% + 14px)
    }
}

.c-hero__circle {
    position: absolute;
    top: calc(var(--base-space) * 5);
    left: 14%;
    width: 64%;
    border-radius: 50%;
    aspect-ratio: 1/1;
    opacity: .2;
    transform: translateY(calc(50% + var(--anim-distance)))
}

@media (min-width:48em) {
    .c-hero__circle {
        left: 50%;
        width: calc(50% - 48px);
        transform: translate(-40%,calc(50% + var(--anim-distance)))
    }
}

@media (min-width:48em) {
    .c-hero--is-home .c-hero__circle {
        transform: translate(-30%,calc(70% + var(--anim-distance)))
    }
}

.c-hero__back-button {
    display: inline-flex;
    align-items: center
}

    .c-hero__back-button + * {
        margin-top: 24px
    }

    .c-hero__back-button svg {
        width: 12px;
        height: 8px
    }

    .c-hero__back-button > * + * {
        margin-left: calc(var(--base-space) * 1.5)
    }

body.loaded .c-hero--is-home {
    --anim-distance: -100px
}

    body.loaded .c-hero--is-home[data-scroll-anim-active] {
        --anim-distance: 0px
    }

        body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__circle, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__content, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__image, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__content-circle:before, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__content-circle:after {
            transition: transform .95s cubic-bezier(.34,1.56,.64,1)
        }

        body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__image {
            transition-delay: .12s
        }

        body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__content, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__content-circle:before, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__content-circle:after {
            transition-delay: .24s
        }

@media (prefers-reduced-motion:reduce) {
    body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__circle, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__content, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__image, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__content-circle:before, body.loaded .c-hero--is-home[data-scroll-anim-active] .c-hero__content-circle:after {
        transition: none
    }
}

.c-map {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-map {
        --top: 0;
        --bot: 18
    }
}

.c-map:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-map__map > div {
    aspect-ratio: 1.7770562771/1;
    border-radius: 6px;
    width: 100%
}

.c-map__meta {
    border: 1px solid rgba(0,0,0,.2);
    border-radius: 6px;
    margin-top: 32px
}

.c-map__meta-item {
    align-items: center;
    display: flex;
    padding: 10px
}

    .c-map__meta-item > * {
        flex: 0 1
    }

.c-map__meta-item-icon {
    flex-basis: 32px
}

    .c-map__meta-item-icon svg {
        height: 24px;
        margin-right: 10px;
        width: 24px
    }

.c-map__meta-item-text {
    flex-grow: 1
}

.c-map__meta-item-distance {
    flex-basis: 100px;
    text-align: right
}

.c-media-row {
    --top: 7.8;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot));
    text-align: center
}

@media (min-width:48em) {
    .c-media-row {
        --top: 15;
        --bot: 18
    }
}

.c-media-row:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

@media (min-width:48em) {
    .c-media-row {
        text-align: left
    }
}

.c-media-row__item {
    position: relative;
    padding-bottom: calc(var(--base-space) * 3)
}

@media (min-width:48em) {
    .c-media-row__item {
        padding-bottom: calc(var(--base-space) * 6)
    }
}

.c-media-row__item:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 60px;
    height: 2px;
    background-color: var(--primary-50);
    transform: translate(-50%)
}

@media (min-width:48em) {
    .c-media-row__item:after {
        left: 0;
        transform: none
    }
}

.c-media-row__stat {
    font-size: 6rem;
    font-weight: 400
}

    .c-media-row__stat + h4 {
        color: var(--neutral-0)
    }

.c-media-row h4:not(:first-child) {
    margin-top: calc(var(--base-space) * 1.5)
}

@media (min-width:48em) {
    .c-media-row h4:not(:first-child) {
        margin-top: calc(var(--base-space) * 3)
    }
}

.c-media-row__container {
    --space: calc(var(--base-space) * 6)
}

@media (min-width:48em) {
    .c-media-row__container {
        --column: calc(var(--base-space) * 9.75);
        --space: calc(var(--base-space) * 7.5)
    }
}

@media (max-width:47.9375em) {
    .c-media-row[data-mobile-scroll=true] .c-media-row__container {
        overflow-x: scroll;
        display: flex
    }

        .c-media-row[data-mobile-scroll=true] .c-media-row__container > * {
            flex: 0 0 92%
        }
}

.c-media-row__icon {
    background-color: var(--secondary-50);
    border-radius: 50%;
    margin-left: auto;
    margin-right: auto
}

@media (min-width:48em) {
    .c-media-row__icon {
        margin-left: 0;
        margin-right: 0
    }
}

.c-media-row__icon, .c-media-row__icon svg {
    width: 60px;
    height: 60px
}

.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-5050 {
    --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-signpost-5050 {
        --top: 18;
        --bot: 18
    }
}

.c-signpost-5050:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-signpost-5050__container {
    --column: 0;
    border-radius: var(--border-radius);
    overflow: hidden
}

.c-signpost-5050__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: calc(var(--base-space) * 4.5)
}

@media (min-width:48em) {
    .c-signpost-5050__content {
        padding: calc(var(--base-space) * 6)
    }
}

.c-signpost-5050__content > p:nth-last-child(2) {
    margin-bottom: calc(var(--base-space) * 4)
}

    .c-signpost-5050__content > p:nth-last-child(2) + p {
        margin-top: 0
    }

.c-signpost-5050__content .u-btn:last-child {
    margin-top: auto
}

.c-signpost-5050__content:first-child {
    order: 1
}

@media (min-width:48em) {
    .c-signpost-5050__content:first-child {
        order: 0
    }
}

.c-signpost-5050__image .u-media, .c-signpost-5050__image .u-media__wrap {
    height: 100%
}

@media (max-width:47.9375em) {
    .c-signpost-5050__image .u-media__wrap {
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 0
    }
}

@media (min-width:48em) {
    .c-signpost-5050__image:first-child .u-media__wrap {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0
    }

    .c-signpost-5050__image:last-child .u-media__wrap {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0
    }
}

.c-signpost-bar {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-signpost-bar {
        --top: 0;
        --bot: 18
    }
}

.c-signpost-bar:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-signpost-bar__container {
    box-shadow: 0 0 8px var(--black-20);
    border-radius: var(--border-radius);
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    padding: calc(var(--base-space) * 4);
    overflow: hidden;
    position: relative
}

    .c-signpost-bar__container > * {
        flex: 1 1 100%
    }

    .c-signpost-bar__container:before, .c-signpost-bar__container:after {
        position: absolute;
        border-radius: 50%;
        z-index: -1
    }

    .c-signpost-bar__container:before {
        aspect-ratio: 1/1;
        background-color: var(--primary-purple);
        content: "";
        left: -190px;
        top: calc(100% - 110px);
        width: 557px
    }

    .c-signpost-bar__container:after {
        aspect-ratio: 1/1;
        background-color: var(--primary-cyan);
        content: "";
        left: 155px;
        top: calc(100% - 70px);
        width: 293px
    }

.c-signpost-bar--secondary .c-signpost-bar__container:before {
    background-color: var(--primary-cyan)
}

.c-signpost-bar--secondary .c-signpost-bar__container:after {
    background-color: var(--primary-green)
}

.c-signpost-bar__title {
    flex-grow: 4
}

.c-signpost-bar__btn {
    position: relative;
    z-index: 10
}

    .c-signpost-bar__btn > .u-btn {
        margin-top: calc(var(--base-space) * 4)
    }

@media (min-width:35em) {
    .c-signpost-bar__btn > .u-btn {
        white-space: nowrap
    }
}

.c-signpost-bar--aside .c-signpost-bar__container {
    display: block
}

@media (min-width:48em) {
    .c-signpost-bar--aside {
        --bot: 4
    }

    .c-signpost-bar:not(.c-signpost-bar--aside) .c-signpost-bar__container {
        flex-wrap: nowrap
    }

        .c-signpost-bar:not(.c-signpost-bar--aside) .c-signpost-bar__container > * {
            flex-basis: auto
        }

        .c-signpost-bar:not(.c-signpost-bar--aside) .c-signpost-bar__container:before {
            left: calc(100% - 280px);
            top: -39px
        }

        .c-signpost-bar:not(.c-signpost-bar--aside) .c-signpost-bar__container:after {
            left: calc(100% - 430px);
            top: calc(100% - 70px)
        }

    .c-signpost-bar:not(.c-signpost-bar--aside) .c-signpost-bar__title > * {
        margin-right: calc(var(--base-space) * 8)
    }

    .c-signpost-bar:not(.c-signpost-bar--aside) .c-signpost-bar__btn {
        flex: none
    }

        .c-signpost-bar:not(.c-signpost-bar--aside) .c-signpost-bar__btn > .u-btn {
            margin-top: 0
        }
}

.c-signpost-button {
    --transition-duration: .25s;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: var(--border-radius);
    overflow: hidden;
    background-color: #fff
}

.c-signpost-button--small {
    min-width: 228px
}

.c-signpost-button:hover {
    --transition-duration: .4s
}

.c-signpost-button__button {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: calc(var(--base-space) * 2);
    font-size: var(--h4);
    font-weight: 600;
    color: var(--neutral-0);
    transition: color var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

    .c-signpost-button__button svg {
        width: 24px;
        height: 24px;
        margin-left: calc(var(--base-space) * 4)
    }

.c-signpost-button__description {
    font-weight: 400
}

.c-signpost-button__cta {
    display: flex;
    flex-direction: column
}

.c-signpost-button--small .c-signpost-button__button {
    font-size: var(--h3);
    padding: calc(var(--base-space) * 2)
}

    .c-signpost-button--small .c-signpost-button__button svg {
        margin-left: calc(var(--base-space) * 2)
    }

.c-signpost-button:hover .c-signpost-button__button {
    color: var(--secondary-magenta)
}

.c-signpost-button__image .u-media {
    --image-width: 606;
    --image-height: 340
}

.c-signpost-button__image .u-media__wrap {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.c-signpost-button__image img {
    transition: transform var(--transition-duration) cubic-bezier(.3,.15,.18,1)
}

.c-signpost-button:hover .c-signpost-button__image img {
    transform: scale(1.1)
}

.c-signpost-button-listing {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-signpost-button-listing {
        --top: 0;
        --bot: 18.75
    }
}

.c-signpost-button-listing:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-signpost-button-listing + .c-signpost-button-listing {
    padding-bottom: 0
}

.c-signpost-button-listing__container {
    --space: calc(var(--base-space) * 6);
    --column: calc(var(--base-space) * 4)
}

.c-social {
    display: flex;
    flex-direction: row;
    gap: calc(var(--base-space) * 2)
}

    .c-social a {
        --trans-duration: .25s;
        display: inline-block;
        color: var(--primary-purple);
        width: 56px;
        height: 56px;
        padding: 16px;
        background-color: var(--neutral-100);
        border-radius: 50%;
        transition: background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1),color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
    }

        .c-social a svg {
            width: 24px;
            height: 24px
        }

        .c-social a:after {
            display: none
        }

        .c-social a:hover {
            --trans-duration: .4s;
            background-color: var(--primary-purple);
            color: var(--neutral-100)
        }

        .c-social a:focus-visible {
            outline: -webkit-focus-ring-color auto 2px;
        }

        .c-social a.focus-visible {
            outline: -webkit-focus-ring-color auto 2px;
        }

.c-testimonial {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-testimonial {
        --top: 0;
        --bot: 18
    }
}

.c-testimonial:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-testimonial__container {
    position: relative;
    border: 1px solid var(--neutral-0);
    border-radius: var(--border-radius)
}

    .c-testimonial__container:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #fff;
        opacity: .6;
        z-index: 0
    }

.c-testimonial__icon {
    left: calc(var(--base-space) * 2);
    position: absolute;
    top: -13px
}

    .c-testimonial__icon svg {
        height: 30px;
        width: 35px
    }

.c-testimonial__content {
    display: flex
}

    .c-testimonial__content > * {
        flex: 1 1
    }

.c-testimonial__text {
    font-size: var(--lead-size);
    line-height: 1.3;
    flex-grow: 3;
    padding: calc(var(--base-space) * 3) calc(var(--base-space) * 10) calc(var(--base-space) * 5.5) calc(var(--base-space) * 3);
    position: relative;
    z-index: 2
}

.c-testimonial__text-author {
    font-size: var(--font-size)
}

@media (min-width:35em) {
    .c-testimonial__text {
        padding-right: calc(var(--base-space) * 16)
    }
}

@media (max-width:34.9375em) {
    .c-testimonial__text {
        padding-bottom: calc(var(--base-space) * 13)
    }
}

.c-testimonial--aside .c-testimonial__text {
    padding: calc(var(--base-space) * 3) calc(var(--base-space) * 3) calc(var(--base-space) * 10) calc(var(--base-space) * 3)
}

.c-testimonial--aside .c-testimonial__text-author {
    margin-top: calc(var(--base-space) * 3)
}

.c-testimonial__image {
    align-self: flex-end;
    bottom: -1px;
    position: absolute;
    right: calc(var(--base-space) * 1);
    z-index: 2
}

    .c-testimonial__image img {
        width: 167px
    }

@media (min-width:48em) {
    .c-testimonial--aside {
        --bot: 4
    }

    .c-testimonial:not(.c-testimonial--aside) .c-testimonial__image {
        position: relative;
        right: calc(var(--base-space) * 2)
    }

    .c-testimonial:not(.c-testimonial--aside) .c-testimonial__text {
        padding: calc(var(--base-space) * 3) calc(var(--base-space) * 2)
    }
}

.c-thank-you {
    --top: 9;
    --bot: 9;
    position: relative;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-thank-you {
        --top: 21.25;
        --bot: 21.25
    }
}

.c-thank-you__container {
    max-width: 540px;
    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-thank-you__container {
        padding: calc(var(--base-space) * 7.5)
    }
}

.c-thank-you__container h1 + * {
    margin-top: calc(var(--base-space) * 4.5)
}

.c-thank-you__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

    .c-thank-you__image .u-media, .c-thank-you__image .u-media__wrap {
        height: 100%;
        border-radius: 0
    }

    .c-thank-you__image + * {
        position: relative;
        z-index: 1
    }

.c-video {
    --top: 0;
    --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: 0;
        --bot: 18
    }
}

.c-video:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-video + *:not([class*=h-background]) {
    --top: 0
}

.c-video__title + * {
    margin-top: calc(var(--base-space) * 4.5)
}

.c-video .u-media {
    --border-radius: 0
}

.c-video .u-media, .c-video .u-media-decoration__decor {
    grid-row: 3
}

.c-video .u-media-decoration__decor {
    position: relative;
    width: clamp(15.3rem,68.75vw + -37.5rem,32.9rem);
    align-self: flex-end;
    justify-self: flex-end
}

.c-video__decoration {
    position: relative
}

.c-video .u-decoration {
    --small-circle-inset: -110px auto auto 105px;
    --large-circle-inset: -83px auto auto -72px;
    --small-circle-width: clamp(19.3rem,61.328125vw + -27.8rem,35rem);
    --large-circle-width: clamp(26.7rem,84.375vw + -38.1rem,48.3rem)
}

@media (min-width:48em) {
    .c-video .u-decoration {
        --small-circle-inset: -140px auto auto 105px;
        --large-circle-inset: -90px auto auto -213px
    }
}

.c-video .u-decoration__small-circle {
    --distance: 10px;
    --offset-x: 0px;
    --offset-y: 0px;
    animation-name: floatLeft;
    animation-duration: 20s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite
}

.c-video .u-decoration__large-circle {
    --distance: 10px;
    --offset-x: 0px;
    --offset-y: 0px;
    animation-name: floatLeft;
    animation-duration: 20s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-delay: -7s
}

.c-anchor-chips {
    --top: 2;
    --bot: 6;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-anchor-chips {
        --top: 2;
        --bot: 6
    }
}

.c-anchor-chips:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-anchor-chips__container {
    display: flex;
    gap: calc(var(--base-space) * 2);
    overflow: auto;
    padding-bottom: calc(var(--base-space) * 3)
}

    .c-anchor-chips__container > * {
        flex: 0 0 auto
    }

.c-anchor-chips h2 {
    font-size: var(--h5);
    font-weight: 600
}

    .c-anchor-chips h2 + * {
        margin-top: 0
    }

.c-cta-button {
    display: inline-flex;
    align-items: center;
    border-radius: var(--border-radius);
    overflow: hidden;
    background-color: var(--neutral-100)
}

.c-cta-button__list {
    position: relative;
    z-index: 1;
    padding-bottom: calc(var(--base-space) * 9)
}

@media (min-width:48em) {
    .c-cta-button__list {
        padding-bottom: calc(var(--base-space) * 18.75)
    }
}

.c-cta-button__list a {
    color: var(--neutral-0)
}

    .c-cta-button__list a:hover {
        color: var(--secondary-magenta)
    }

.c-cta-button > svg {
    flex: 0 0 52px;
    margin: calc(var(--base-space) * 2) calc(var(--base-space) * 3);
    width: 52px;
    height: 52px
}

@media (min-width:48em) {
    .c-cta-button > svg {
        flex: 0 0 60px;
        margin: calc(var(--base-space) * 3);
        width: 60px;
        height: 60px
    }
}

.c-cta-button span {
    font-size: var(--h4);
    line-height: 1.2;
    font-weight: 500;
    margin-right: calc(var(--base-space) * 3)
}

@media (min-width:48em) {
    .c-cta-button span {
        margin-right: calc(var(--base-space) * 6)
    }
}

.c-cta-button__arrow {
    align-self: stretch;
    position: relative;
    margin-left: auto;
    width: 68px;
    padding: 0 calc(var(--base-space) * 2) 0 calc(var(--base-space) * 3.5);
    clip-path: circle(75% at 100% 50%);
    display: flex;
    place-items: center;
    transition: transform .2s ease-in-out
}

@media (min-width:48em) {
    .c-cta-button__arrow {
        padding: 0 calc(var(--base-space) * 3) 0 calc(var(--base-space) * 4);
        width: 80px
    }
}

.c-cta-button__arrow svg {
    width: 24px;
    height: 24px
}

.c-cta-button__arrow.h-background--primary-purple svg {
    color: var(--neutral-100)
}

.c-cta-button:hover .c-cta-button__arrow {
    transform: scale(1.2)
}

    .c-cta-button:hover .c-cta-button__arrow svg {
        color: var(--neutral-0)
    }

.c-plain-card {
    position: relative;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: var(--border-radius);
    z-index: 1;
    padding: calc(var(--base-space) * 4)
}

    .c-plain-card:before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: var(--neutral-100);
        opacity: .6;
        border-radius: var(--border-radius);
        z-index: -1
    }

.c-plain-card__content {
    grid-row: 1
}

@media (min-width:48em) {
    .c-plain-card__content {
        grid-row: auto
    }
}

.c-cta-card {
    text-align: center
}

    .c-cta-card .u-media {
        max-width: 210px;
        margin: 0 auto
    }

        .c-cta-card .u-media + * {
            margin-top: calc(var(--base-space) * 2)
        }

    .c-cta-card h2:where(:not(.visually-hidden)) + * {
        margin-top: calc(var(--base-space) * 2)
    }

    .c-cta-card p {
        font-size: 2.1rem
    }

.c-cta-card__list {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-cta-card__list {
        --top: 0;
        --bot: 18.75
    }
}

.c-cta-card__list:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-news-card {
    max-width: 395px;
    width: 100%;
    margin: 0 auto;
    display: flex
}

    .c-news-card a {
        --trans-duration: .25s;
        display: flex;
        flex-direction: column;
        color: var(--neutral-0)
    }

        .c-news-card a:hover {
            --trans-duration: .4s
        }

    .c-news-card .u-media {
        position: relative
    }

        .c-news-card .u-media:before {
            content: "";
            position: absolute;
            inset: 0;
            box-shadow: var(--box-shadow);
            border-radius: var(--border-radius);
            opacity: 0;
            transition: opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1)
        }

        .c-news-card .u-media + * {
            margin-top: calc(var(--base-space) * 3)
        }

    .c-news-card a:hover .u-media:before {
        opacity: 1
    }

.c-news-card__title {
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1);
    margin-bottom: calc(var(--base-space) * 2)
}

a:hover .c-news-card__title {
    color: var(--secondary-magenta)
}

.c-news-card__date {
    margin-top: auto
}

    .c-news-card__date + * {
        margin-top: calc(var(--base-space) * 1)
    }

.c-news-card .u-author {
    margin-top: calc(var(--base-space) * 2)
}

.c-team-card {
    width: 100%
}

@media (min-width:64em) {
    .c-team-card {
        max-width: 288px
    }
}

.c-team-card a {
    --trans-duration: .25s;
    display: flex;
    flex-direction: column;
    color: var(--neutral-0)
}

    .c-team-card a:hover {
        --trans-duration: .4s
    }

.c-team-card .u-media {
    position: relative
}

    .c-team-card .u-media:before {
        content: "";
        position: absolute;
        inset: 0;
        box-shadow: var(--box-shadow);
        border-radius: var(--border-radius);
        opacity: 0;
        transition: opacity var(--trans-duration) cubic-bezier(.3,.15,.18,1)
    }

    .c-team-card .u-media + * {
        margin-top: calc(var(--base-space) * 3)
    }

.c-team-card a:hover .u-media:before {
    opacity: 1
}

.c-team-card__name {
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

    .c-team-card__name + * {
        margin-top: calc(var(--base-space) * 1)
    }

a:hover .c-team-card__name {
    color: var(--secondary-magenta)
}

.c-latest-news {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot));
    overflow: hidden
}

@media (min-width:48em) {
    .c-latest-news {
        --top: 0;
        --bot: 18.75
    }
}

.c-latest-news:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-latest-news__title {
    position: relative
}

@media (min-width:48em) {
    .c-latest-news__title {
        display: flex;
        align-items: center;
        justify-content: space-between
    }

        .c-latest-news__title .u-btn {
            margin-top: 0
        }
}

.c-latest-news .u-decoration {
    --small-circle-inset: 35px -26px auto auto;
    --large-circle-inset: auto 160px auto auto
}

@media (min-width:48em) {
    .c-latest-news .u-decoration {
        --small-circle-inset: 35px -86px auto auto;
        --large-circle-inset: auto 190px auto auto
    }
}

.c-latest-news__list {
    margin-left: -16px;
    margin-right: -16px;
    overflow-x: clip
}

    .c-latest-news__list .c-slider__viewport {
        overflow: visible
    }

@media (max-width:47.9375em) {
    .c-latest-news__list .c-slider__viewport {
        width: 85%
    }
}

.c-latest-news__list .c-news-card {
    max-width: none
}

    .c-latest-news__list .c-news-card a {
        width: 100%;
        padding: 0 16px
    }

.c-latest-news__list .c-slider__dots {
    position: relative;
    padding-left: 16px;
    margin-top: 32px
}

@media (min-width:48em) {
    .c-latest-news__list .c-slider__track {
        overflow: visible
    }
}

@media (min-width:48em) {
    .c-latest-news__bullets {
        display: none
    }
}

.c-latest-news__bullets button {
    --trans-duration: .25s;
    position: relative;
    width: 24px;
    height: 24px;
    background-color: transparent
}

    .c-latest-news__bullets button:hover {
        --trans-duration: .4s
    }

    .c-latest-news__bullets button:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        border-radius: 50%;
        transform-origin: center;
        transition: transform .4s cubic-bezier(.3,.15,.18,1),background-color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
    }

    .c-latest-news__bullets button:before {
        background-color: transparent;
        border: 1px solid var(--primary-50);
        width: 16px;
        height: 16px
    }

    .c-latest-news__bullets button:hover:before {
        background-color: var(--primary-50)
    }

    .c-latest-news__bullets button.is-active:before {
        transform: translate(-50%,-50%) scale(1.5);
        background-color: var(--primary-50)
    }

.c-team-listing {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-team-listing {
        --top: 0;
        --bot: 18.75
    }
}

.c-team-listing:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-team-listing__list {
    --space: calc(var(--base-space) * 9);
    z-index: 1
}

.c-team-listing .u-decoration {
    --small-circle-inset: 325px auto auto -60px;
    --large-circle-inset: 440px auto auto -60px
}

@media (min-width:48em) {
    .c-team-listing .u-decoration {
        --small-circle-inset: 55px auto auto 70px;
        --large-circle-inset: 65px auto auto 280px
    }
}

.c-links-card {
    --top: 3;
    --bot: 6;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot));
    gap: 0
}

@media (min-width:48em) {
    .c-links-card {
        --top: 7;
        --bot: 11.75
    }
}

.c-links-card:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-links-card__graphic .u-media {
    max-width: 314px
}

.c-links-card a {
    display: flex;
    color: var(--neutral-0)
}

    .c-links-card a + * {
        margin-top: calc(var(--base-space) * 2)
    }

    .c-links-card a > * + * {
        margin-left: calc(var(--base-space) * 2)
    }

    .c-links-card a svg {
        width: 24px;
        height: 24px
    }

    .c-links-card a:hover {
        color: var(--secondary-magenta)
    }

.c-links-card__list--with-image .c-links-card__item:not(:first-child) {
    margin-top: calc(var(--base-space) * 6)
}

@media (min-width:48em) {
    .c-links-card__list--with-image .c-links-card__item {
        align-items: center
    }

    .c-links-card__list--with-image .c-links-card__item-image .u-media {
        max-width: 75%
    }

    .c-links-card__list--with-image .c-links-card__item:not(.c-links-card__list--with-image .c-links-card__item--alt) .u-media {
        margin-left: auto
    }

    .c-links-card__list--with-image .c-links-card__item--alt .c-links-card__item-text {
        order: 2
    }

    .c-links-card__list--with-image .c-links-card__item--alt .c-links-card__item-image {
        order: 1
    }
}

.c-content-read-more {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-content-read-more {
        --top: 0;
        --bot: 18
    }
}

.c-content-read-more:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-content-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)
}

.c-content-read-more__content {
    padding-bottom: calc(var(--base-space) * 5)
}

.c-content-read-more__container.data-active, .c-content-read-more__container.active {
    height: auto;
    transition: height .4s cubic-bezier(.3,.15,.18,1)
}

.c-property-card {
    background-color: var(--neutral-100);
    border-radius: var(--border-radius);
    overflow: hidden;
    border: 1px solid var(--black-20)
}

    .c-property-card a {
        --trans-duration: .25s;
        color: var(--neutral-0);
        width: 100%
    }

@media (min-width:64em) {
    .c-property-card a {
        display: flex
    }
}

.c-property-card a:hover {
    --trans-duration: .4s
}

.c-property-card .u-media {
    --border-radius: 0;
    flex: 0 0 50%
}

    .c-property-card .u-media img {
        transition: transform var(--trans-duration) cubic-bezier(.3,.15,.18,1)
    }

.c-property-card .u-media__wrap {
    height: 100%
}

.c-property-card:hover .u-media img {
    transform: scale(1.1)
}

.c-property-card__content-wrap {
    flex: 0 0 50%
}

@media (min-width:64em) {
    .c-property-card__content-wrap {
        display: flex;
        flex-direction: column
    }
}

.c-property-card__type {
    position: absolute;
    margin-top: 16px;
    margin-right: 16px;
    padding: 12px 24px;
    border-radius: 20px;
    line-height: 1;
    border: 1px solid var(--black-20);
    right: 0
}

@media (min-width:64em) {
    .c-property-card__type {
        position: relative;
        right: auto;
        justify-self: flex-end;
        align-self: flex-end
    }
}

.c-property-card__content {
    padding: 35px 15px 15px
}

@media (min-width:64em) {
    .c-property-card__content {
        padding: 10px 90px 66px 50px
    }
}

.c-property-card__price {
    display: block;
    font-size: var(--h4);
    margin-bottom: calc(var(--base-space) * 1.5)
}

.c-property-card .u-icon-text {
    display: flex
}

    .c-property-card .u-icon-text + * {
        margin-top: 16px
    }

.c-property-card__title {
    font-size: var(--h3);
    font-weight: 600;
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

a:hover .c-property-card__title {
    color: var(--secondary-magenta)
}

.c-property-listing .grid-row {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start
}

    .c-property-listing .grid-row .grid-item {
        -ms-flex: auto;
        position: relative;
        padding: 10px;
        box-sizing: border-box
    }

    .c-property-listing .grid-row .grid-item {
        flex-basis: 33.33%
    }

@media (max-width:1024px) {
    .c-property-listing .grid-row .grid-item {
        flex-basis: 50%
    }
}

@media (max-width:620px) {
    .c-property-listing .grid-row .grid-row {
        display: block
    }

    .c-property-listing .grid-row .grid-item {
        flex-basis: 100%
    }
}

.c-property-listing .retirement-properties {
    background-color: var(--neutral-100);
    border-radius: var(--border-radius);
    overflow: hidden;
    border: 1px solid var(--black-20)
}

    .c-property-listing .retirement-properties a {
        color: #000
    }

    .c-property-listing .retirement-properties .retirement-price {
        font-size: var(--h5)
    }

    .c-property-listing .retirement-properties .retirement-title {
        font-size: var(--h6);
        min-height: 110px
    }

    .c-property-listing .retirement-properties .retirement-content-wrap {
        padding: 5%
    }

    .c-property-listing .retirement-properties .retirement-card__type {
        position: absolute;
        right: -2%;
        top: -1%;
        background: rgba(255,255,255,.75)
    }

    .c-property-listing .retirement-properties .retirement-card {
        padding: 0
    }

        .c-property-listing .retirement-properties .retirement-card .u-icon-text {
            font-size: 15px;
            padding: 1%
        }

.c-property-listing__container, .c-property-listing__pagination {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-property-listing__container, .c-property-listing__pagination {
        --top: 0;
        --bot: 18
    }
}

.c-property-listing__container:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]), .c-property-listing__pagination:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-property-listing__search {
    z-index: 2
}

.c-property-listing__container {
    z-index: 1;
    display: grid;
    gap: 72px 0
}

@media (min-width:85.375em) {
    .c-property-listing__container {
        margin-left: calc(var(--base-space) * 2);
        margin-right: calc(var(--base-space) * 2)
    }
}

.c-property-listing__pagination {
    text-align: center
}

.c-property-listing__results {
    margin-top: calc(var(--base-space) * 3);
    margin-bottom: calc(var(--base-space) * 5);
    gap: calc(var(--base-space) * 0)
}

@media (max-width:34.9375em) {
    .c-property-listing__results {
        margin-top: calc(var(--base-space) * 12)
    }
}

.c-property-listing__results-title {
    font-size: var(--h2)
}

    .c-property-listing__results-title + * {
        margin-top: calc(var(--base-space) * 0)
    }

@media (max-width:47.9375em) {
    .c-property-listing .c-hero {
        margin-left: calc(var(--base-space) * -1.5);
        margin-right: calc(var(--base-space) * -1.5)
    }

    .c-property-listing .c-hero__content {
        margin-left: calc(var(--base-space) * 1.5)
    }
}

.c-search__wrapper {
    position: relative;
    height: 88px
}

.c-search__container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: calc(var(--base-space) * 2);
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    background-color: var(--white-60)
}

.c-search__form {
    align-items: center;
    display: flex;
    gap: 16px
}

@media (max-width:34.9375em) {
    .c-search__form {
        flex-direction: column
    }

        .c-search__form > div {
            width: 100%
        }
}

.c-search__area label, .c-search__select label {
    position: absolute;
    top: 6px;
    left: 16px;
    font-size: 12px;
    z-index: 1
}

.c-search__area input, .c-search__area select, .c-search__select input, .c-search__select select {
    padding: 24px 16px 7px;
    width: 100%;
    border-radius: var(--border-radius);
    background-color: var(--neutral-100);
    border: 1px solid var(--neutral-100);
    line-height: 1.444
}

    .c-search__area input:focus, .c-search__area select:focus, .c-search__select input:focus, .c-search__select select:focus {
        outline: none;
        border-color: var(--primary-50)
    }

.c-search__area select, .c-search__select select {
    padding: 24px 16px 7px
}

.c-search__area {
    flex: 1 1 auto;
    position: relative
}

.c-search__select {
    position: relative;
    min-width: 210px
}

@media (max-width:63.9375em) {
    .c-search__select {
        display: none
    }
}

.c-search__actions {
    display: flex;
    align-items: center
}

    .c-search__actions > * + * {
        margin-left: 16px
    }

@media (max-width:34.9375em) {
    .c-search__actions button {
        flex-grow: 1
    }
}

.c-search__filter-container {
    backface-visibility: hidden;
    transform: translateZ(0);
    height: 0;
    will-change: height;
    overflow: hidden;
    transition: height .25s cubic-bezier(.3,.15,.18,1)
}

.c-search.data-active .c-search__filter-container {
    height: auto;
    transition: height .4s cubic-bezier(.3,.15,.18,1)
}

.c-search__filter-content {
    position: relative;
    padding: 48px 16px 16px
}

    .c-search__filter-content:before {
        content: "";
        position: absolute;
        inset: 16px 0 0 0;
        background-color: var(--neutral-100);
        border-radius: var(--border-radius)
    }

.c-search__filter-list {
    display: grid;
    grid-template-columns: repeat(auto-fill,270px);
    gap: 16px 30px
}

    .c-search__filter-list + * {
        margin-top: 24px
    }

.c-search .choices__icon svg {
    width: 12px;
    height: 12px;
    margin: 12px 6px 0
}

.c-search .choices__inner {
    padding: 21px 16px 7px;
    height: 56px;
    background-color: var(--neutral-100);
    border-color: var(--neutral-100);
    border-radius: var(--border-radius)
}

.c-search-results {
    min-height: calc(var(--base-space) * 30);
    margin-top: calc(var(--base-space) * 4)
}

    .c-search-results .c-search__item {
        border: 1px solid var(--black-20);
        background-color: var(--white-60);
        border-radius: calc(var(--base-space) * 1);
        padding: calc(var(--base-space) * 4);
        margin-bottom: calc(var(--base-space) * 4);
        transition: all .2s ease-in-out
    }

        .c-search-results .c-search__item h3 {
            font-weight: 500;
            font-size: 28px;
            transition: all .1s ease-in-out
        }

            .c-search-results .c-search__item h3 a {
                color: var(--black)
            }

    .c-search-results .c-search__item-container {
        padding: calc(var(--base-space) * 2) 0
    }

    .c-search-results .c-search__item:hover {
        border: 1px solid var(--secondary-magenta)
    }

        .c-search-results .c-search__item:hover h3 {
            color: var(--secondary-magenta)
        }

form.search-form {
    margin: calc(var(--base-space) * 8) auto !important
}

    form.search-form > .container-inline {
        display: flex;
        flex-grow: 1
    }

        form.search-form > .container-inline .form-item {
            margin: 0;
            margin-right: calc(var(--base-space) * 2);
            flex-grow: 1
        }

@media (max-width:34.9375em) {
    form fieldset.fieldgroup {
        padding: 0 calc(var(--base-space) * 1);
        margin: 0
    }

        form fieldset.fieldgroup .fieldset-wrapper {
            margin: 0
        }
}

.c-stepped-content {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-stepped-content {
        --top: 0;
        --bot: 18
    }
}

.c-stepped-content:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-stepped-content__container {
    margin-top: 48px
}

.c-stepped-content__item {
    position: relative;
    display: flex;
    min-height: 150px;
    align-items: flex-start
}

    .c-stepped-content__item:not(:last-child):after {
        content: "";
        top: 98px;
        left: 49px;
        width: 1px;
        border-left: 2px solid #000;
        position: absolute;
        bottom: 16px
    }

.c-stepped-content__index {
    flex: 0 0 100px;
    height: 100px;
    margin-right: 50px;
    position: relative;
    width: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--secondary-magenta);
    border: 2px solid #000;
    border-radius: 50%;
    font-size: var(--h3);
    clip-path: polygon(0px 0px,100% 0px,100% 100%,68px 100%,66px 86%,51% 83%,50% 100%,0px 100%)
}

.c-stepped-content__text {
    flex: 1 1;
    padding: 32px 0 16px
}

@media (max-width:28.0625em) {
    .c-stepped-content__index {
        flex-basis: 75px;
        margin-right: 20px;
        height: 75px;
        width: 75px
    }

    .c-stepped-content__item:not(:last-child):after {
        left: 35.5px;
        top: 73px
    }

    .c-stepped-content__text {
        padding-top: 24px
    }
}

.c-address-card {
    border: 1px solid var(--black-20);
    border-radius: var(--border-radius);
    display: flex;
    padding: calc(var(--base-space) * 2)
}

.c-address-card__icon {
    flex-basis: calc(var(--base-space) * 5)
}

    .c-address-card__icon svg {
        height: 27px;
        width: 27px
    }

.c-address-card__text {
    max-width: calc(100% - (var(--base-space) * 5))
}

.c-house-hero {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-house-hero {
        --top: 0;
        --bot: 18
    }
}

.c-house-hero:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-house-hero__title {
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(var(--base-space) * 4)
}

    .c-house-hero__title > * {
        flex: 1 1 100%
    }

    .c-house-hero__title h1 {
        font-size: var(--h3);
        margin: calc(var(--base-space) * 1) 0 calc(var(--base-space) * .5)
    }

.c-house-hero__title-tag > span {
    border: 1px solid var(--black-20);
    border-radius: 20px;
    display: inline-block;
    font-weight: 500;
    padding: calc(var(--base-space) * 1) calc(var(--base-space) * 3)
}

@media (min-width:48em) {
    .c-house-hero__title > * {
        flex-basis: 50%
    }

    .c-house-hero__title-tag {
        flex-basis: 100px;
        order: 2;
        text-align: right
    }
}

.c-house-hero__costs {
    font-weight: 600;
    font-size: var(--h4)
}

.c-house-hero__cards {
    margin-top: calc(var(--base-space) * 4)
}

.c-stats {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot));
    overflow: hidden
}

@media (min-width:48em) {
    .c-stats {
        --top: 0;
        --bot: 18
    }
}

.c-stats:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-stats__container {
    position: relative
}

.c-stats__circles {
    position: relative;
    height: 0
}

    .c-stats__circles > * {
        position: absolute;
        aspect-ratio: 1/1;
        border-radius: 50%;
        opacity: .2
    }

.c-stats__first-circle {
    width: 384px;
    left: 50%;
    top: -85px;
    transform: translate(-65%,135%)
}

@media (min-width:48em) {
    .c-stats__first-circle {
        left: 0;
        top: -85px;
        transform: translate(25%)
    }
}

.c-stats__second-circle {
    width: 490px;
    left: 50%;
    top: -85px;
    transform: translate(-52%,30%)
}

@media (min-width:48em) {
    .c-stats__second-circle {
        left: 33%;
        top: -85px;
        transform: translate(0)
    }
}

.c-stats__last-circle {
    width: 233px;
    left: 50%;
    top: -85px;
    transform: translate(-100%,11%)
}

@media (min-width:48em) {
    .c-stats__last-circle {
        left: 66%;
        top: -85px;
        transform: translate(40px)
    }
}

.c-stats__item {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    position: relative
}

    .c-stats__item > * {
        flex: 1 1
    }

    .c-stats__item + .c-stats__item {
        margin-top: calc(var(--base-space) * 4)
    }

.c-stats__item-stat {
    flex-basis: 200px;
    font-size: var(--h2);
    position: relative
}

    .c-stats__item-stat > span {
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translate(-50%,-50%)
    }

    .c-stats__item-stat:before {
        aspect-ratio: 1/1;
        background-color: #fff;
        border-radius: 50%;
        content: "";
        height: 100%;
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translate(-50%,-50%)
    }

.c-stats__item-label {
    font-size: var(--h3);
    margin-top: calc(var(--base-space) * 3)
}

@media (min-width:48em) {
    .c-stats {
        overflow: visible;
        padding-top: 100px
    }

    .c-stats__item + .c-stats__item {
        margin-top: 0
    }
}

.c-awards {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-awards {
        --top: 0;
        --bot: 18
    }
}

.c-awards:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-awards:where(section.c-hero + section.c-awards) {
    --top: 10 !important
}

.c-awards__title {
    margin-bottom: calc(var(--base-space) * 5)
}

@media (min-width:48em) {
    .c-awards__title {
        text-align: center
    }
}

.c-awards__container {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap
}

@media (min-width:48em) {
    .c-awards__container {
        flex-wrap: nowrap
    }
}

.c-awards__container + .c-awards__container {
    margin-top: calc(var(--base-space) * 5)
}

@media (min-width:48em) {
    .c-awards__container + .c-awards__container {
        margin-top: calc(var(--base-space) * 7)
    }
}

.c-awards__icon {
    align-items: flex-start;
    aspect-ratio: 1/1;
    display: flex;
    flex: 0 0 150px;
    justify-content: center;
    position: relative;
    text-align: center
}

    .c-awards__icon.no-image:before {
        background-color: #fff;
        border: 1px solid var(--black-20);
        border-radius: 50%;
        content: "";
        height: 100%;
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translate(-50%,-50%);
        width: 100%;
        z-index: -1
    }

    .c-awards__icon svg {
        height: 30px;
        width: 39px
    }

.c-awards__content {
    flex: 1 1 100%
}

    .c-awards__content > * {
        margin-top: calc(var(--base-space) * 2)
    }

@media (min-width:48em) {
    .c-awards__content {
        margin-left: calc(var(--base-space) * 5)
    }
}

@media (min-width:48em) {
    .c-awards__label {
        margin-top: 0
    }
}

.c-share {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-share {
        --top: 0;
        --bot: 18
    }
}

.c-share:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-share__container, .c-share__item-container {
    display: flex;
    align-items: center
}

.c-share__item-container {
    margin-top: 0
}

.c-share__label {
    margin-right: calc(var(--base-space) * 2)
}

.c-share__item a {
    display: block;
    aspect-ratio: 1/1;
    position: relative;
    width: 56px
}

    .c-share__item a:before {
        background-color: var(--secondary-magenta);
        border-radius: 50%;
        content: "";
        height: 100%;
        opacity: .1;
        position: absolute;
        width: 100%
    }

    .c-share__item a svg {
        color: var(--secondary-magenta);
        height: 21px;
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translate(-50%,-50%);
        width: 21px
    }

    .c-share__item a:hover:before {
        opacity: 1
    }

    .c-share__item a:hover svg {
        color: var(--neutral-100)
    }

.c-share__item + .c-share__item {
    margin-left: calc(var(--base-space) * 1)
}

.c-share--centered .c-share__container {
    justify-content: center
}

.c-success-stories {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-success-stories {
        --top: 0;
        --bot: 18
    }
}

.c-success-stories:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-success-stories .l-halves {
    align-items: center
}

.c-success-stories .c-plain-card__content {
    grid-row: 1
}

@media (min-width:48em) {
    .c-success-stories .c-plain-card__content {
        grid-row: auto
    }
}

@media (min-width:48em) {
    .c-success-stories .c-plain-card:nth-child(even) .c-plain-card__content {
        grid-row: 1
    }
}

.c-success-stories .c-plain-card + .c-plain-card {
    margin-top: 50px
}

@media (min-width:48em) {
    .c-success-stories .c-plain-card + .c-plain-card {
        margin-top: 100px
    }
}

.c-success-stories__load-more {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 72px
}

@media (min-width:48em) {
    .c-success-stories__load-more {
        margin-top: 150px
    }
}

.c-team-member-content {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-team-member-content {
        --top: 0;
        --bot: 18
    }
}

.c-team-member-content:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-team-member-content__container > div + div {
    margin-top: calc(var(--base-space) * 3)
}

.c-team-member-content__category > span {
    background-color: #fff9;
    border: 1px solid var(--black-20);
    border-radius: 20px;
    display: inline-block;
    font-weight: 500;
    padding: calc(var(--base-space) * 1) calc(var(--base-space) * 4)
}

.c-team-member-content__image .u-media {
    width: 317px
}

.c-team-member-content__role {
    font-size: 2.1rem;
    margin-bottom: calc(var(--base-space) * 5)
}

.c-team-member-content__lead-text {
    font-size: var(--lead-size);
    line-height: 28px
}

.c-news-listing {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-news-listing {
        --top: 0;
        --bot: 18
    }
}

.c-news-listing:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-news-listing__chip-container {
    margin-bottom: calc(var(--base-space) * 5);
    overflow: auto;
    white-space: nowrap;
    z-index: 2;
    padding-bottom: 1rem;
    scrollbar-color: transparent
}

    .c-news-listing__chip-container .u-chip + .u-chip {
        margin-left: calc(var(--base-space) * 1.5)
    }

.c-news-listing .c-news-card {
    margin-bottom: calc(var(--base-space) * 4)
}

.c-news-listing__pagination {
    margin: calc(var(--base-space) * 5) auto 0
}

@media (min-width:48em) {
    .c-news-listing__pagination {
        margin-top: calc(var(--base-space) * 10)
    }
}

.c-news-hero {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot));
    padding-bottom: 9rem
}

@media (min-width:48em) {
    .c-news-hero {
        --top: 0;
        --bot: 18
    }
}

.c-news-hero:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-news-hero > * {
    display: grid;
    gap: calc(var(--base-space) * 3)
}

@media (max-width:47.9375em) {
    .c-news-hero__chip {
        margin-bottom: calc(var(--base-space) * 4)
    }
}

.c-news-hero__title > h1 {
    font-size: var(--h2)
}

@media (max-width:47.9375em) {
    .c-news-hero__title {
        margin-bottom: calc(var(--base-space) * 4)
    }
}

.c-news-hero__meta {
    display: flex
}

.c-news-hero__date + .c-news-hero__time {
    margin-left: calc(var(--base-space) * 3)
}

.c-news-hero .c-hero__content {
    padding-top: 1rem
}

.c-list-with-icons {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-list-with-icons {
        --top: 0;
        --bot: 18
    }
}

.c-list-with-icons:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-list-with-icons__container {
    margin-top: 48px
}

    .c-list-with-icons__container .c-list-with-icons__list {
        margin-top: 32px;
        padding-inline-start: 0
    }

.c-list-with-icons__list-item {
    position: relative;
    display: flex;
    align-items: start;
    list-style: none
}

    .c-list-with-icons__list-item:before {
        display: none
    }

@media (max-width:34.9375em) {
    .c-list-with-icons__list-item {
        flex-direction: column;
        align-items: flex-start
    }
}

.c-list-with-icons__list-item + .c-list-with-icons__list-item {
    margin-top: 32px
}

.c-list-with-icons__list-item > *:first-child {
    flex: 0 0 90px;
    height: 90px;
    margin-right: 40px;
    position: relative;
    width: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--secondary-magenta);
    border-radius: 50%;
    font-size: var(--h3)
}

    .c-list-with-icons__list-item > *:first-child svg {
        width: 44px;
        color: var(--neutral-100)
    }

.c-list-with-icons__list-item > *:last-child {
    flex: 1 1;
    margin-top: 3px
}

    .c-list-with-icons__list-item > *:last-child strong {
        color: var(--secondary-magenta)
    }

    .c-list-with-icons__list-item > *:last-child img {
        max-width: 100%
    }

@media (max-width:28.0625em) {
    .c-list-with-icons__list-item > *:first-child {
        flex-basis: 75px;
        margin-right: 20px;
        height: 75px;
        width: 75px
    }

    .c-list-with-icons__list-item:not(:last-child):after {
        left: 35.5px;
        top: 73px
    }

    .c-list-with-icons__list-item > *:last-child {
        padding-top: 24px
    }
}

.c-property-page {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-property-page {
        --top: 0;
        --bot: 18
    }
}

.c-property-page:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-property-page__back-button {
    display: inline-flex;
    align-items: center;
    margin-top: calc(var(--base-space) * 3)
}

    .c-property-page__back-button svg {
        width: 12px;
        height: 8px
    }

    .c-property-page__back-button > * + * {
        margin-left: calc(var(--base-space) * 1.5)
    }

.c-property-page__container > * {
    padding-bottom: calc(var(--base-space) * 6)
}

    .c-property-page__container > *.c-house-hero {
        padding-bottom: calc(var(--base-space) * 3)
    }

    .c-property-page__container > *.c-content > * {
        grid-column: full-page
    }

.c-property-page__aside > * {
    padding-bottom: calc(var(--base-space) * 4)
}

.c-property-page__aside .c-signpost-bar:first-child {
    display: none
}

@media (min-width:48em) {
    .c-property-page__aside .c-signpost-bar:first-child {
        display: block
    }
}

.c-property-page__aside .c-signpost-bar:last-child {
    --bot: 0
}

.c-property-page__circles {
    position: relative;
    padding-bottom: calc(var(--base-space) * 0)
}

.c-property-page__large-circle {
    position: absolute;
    left: 0;
    width: 110%;
    aspect-ratio: 1/1;
    border-radius: 50%;
    opacity: .2;
    transform: translate(-22%,-6%)
}

@media (min-width:48em) {
    .c-property-page__large-circle {
        top: 0;
        left: 50%;
        width: calc(100% + 24px);
        transform: translate(-85%,calc(var(--base-space) * -16))
    }
}

.c-property-page__small-circle {
    position: absolute;
    left: 55%;
    width: 64%;
    border-radius: 50%;
    aspect-ratio: 1/1;
    opacity: .2;
    transform: translateY(-60%)
}

@media (min-width:48em) {
    .c-property-page__small-circle {
        left: 50%;
        bottom: 0;
        width: calc(60% - 48px);
        transform: translate(-26%,calc(var(--base-space) * 13))
    }
}

@media (max-width:47.9375em) {
    .c-property-page__small-circle {
        left: unset;
        right: 0
    }
}

.c-property-page__aside .c-signpost-bar__container:before {
    background-color: var(--primary-purple)
}

.c-property-page__aside .c-signpost-bar__container:after {
    background-color: var(--secondary-green)
}

.c-content-card-aside {
    --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-content-card-aside {
        --top: 15;
        --bot: 9
    }
}

.c-content-card-aside:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-content-card-aside__content {
    position: relative
}

    .c-content-card-aside__content > * {
        z-index: 1
    }

    .c-content-card-aside__content img {
        max-width: 336px
    }

.c-content-card-aside__aside ul {
    padding-inline-start: 3.5em
}

.c-content-card-aside__aside li {
    display: flex;
    align-items: center
}

    .c-content-card-aside__aside li + li {
        margin-top: calc(var(--base-space) * 3.5)
    }

    .c-content-card-aside__aside li:before {
        top: 50%;
        left: -3.5em;
        width: 40px;
        height: 40px;
        transform: translatey(-50%)
    }

    .c-content-card-aside__aside li:after {
        content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='12' viewBox='0 0 24 18'%3E%3Cpath fill='white' d='M23.5 3.1 9 17.4a1.8 1.8 0 0 1-2.7 0L.5 11.6a1.8 1.8 0 0 1 .9-3 2 2 0 0 1 1.8.4l4.5 4.6L20.8.6a1.9 1.9 0 0 1 3.1.8c.2.6 0 1.3-.4 1.7Z'/%3E%3C/svg%3E%0A");
        position: absolute;
        top: 50%;
        left: -3.5em;
        width: 24px;
        height: 18px;
        transform: translate(12px,-12px)
    }

.c-content-card-aside__aside .c-plain-card:before {
    opacity: 1
}

@media (min-width:48em) {
    .c-content-card-aside__aside .c-plain-card:before {
        opacity: .6
    }
}

.c-content-card-aside__circles {
    position: absolute;
    bottom: 0;
    right: 0;
    height: 0;
    z-index: -1
}

@media (min-width:48em) {
    .c-content-card-aside__circles {
        top: 0
    }
}

.c-content-card-aside__circles > * {
    position: absolute;
    aspect-ratio: 1/1;
    border-radius: 50%;
    opacity: .2
}

.c-content-card-aside__circle-large {
    width: 434px;
    top: 0;
    right: 0;
    transform: translate(105px,-350px)
}

@media (min-width:48em) {
    .c-content-card-aside__circle-large {
        width: 566px;
        transform: translate(295px,-50px)
    }
}

.c-content-card-aside__circle-small {
    width: 284px;
    top: 0;
    right: 0;
    transform: translate(-60%,-30px)
}

@media (min-width:48em) {
    .c-content-card-aside__circle-small {
        width: 370px;
        transform: translate(-20%,360px)
    }
}

.c-download-card {
    padding: calc(var(--base-space) * 2)
}

.c-download-card__container {
    display: flex;
    flex-direction: column;
    height: 100%
}

    .c-download-card__container > * + * {
        margin-top: calc(var(--base-space) * 2)
    }

    .c-download-card__container span {
        font-size: var(--h4);
        font-weight: 500
    }

    .c-download-card__container svg {
        width: 24px;
        height: 24px
    }

.c-download-card__icon {
    padding-top: calc(var(--base-space) * 4);
    margin-top: auto
}

.c-download-card-list {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-download-card-list {
        --top: 0;
        --bot: 18
    }
}

.c-download-card-list:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-download-card-list__container {
    margin-top: 0
}

.c-download-list {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-download-list {
        --top: 0;
        --bot: 18
    }
}

.c-download-list:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-download-list__container > * + * {
    margin-top: calc(var(--base-space) * 4)
}

@media (min-width:48em) {
    .c-download-list__container > * + * {
        margin-top: calc(var(--base-space) * 9)
    }
}

.c-stats-simple {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-stats-simple {
        --top: 0;
        --bot: 18
    }
}

.c-stats-simple:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-stats-simple h2, .c-stats-simple h3 {
    display: block;
    text-align: center
}

.c-stats-simple h3 {
    color: var(--primary-purple)
}

.c-stats-simple__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(var(--base-space) * 3);
    font-size: var(--h3);
    font-weight: 500
}

.c-stats-simple__item-stat {
    width: 200px;
    height: 200px;
    aspect-ratio: 1/1;
    background-color: var(--primary-purple);
    color: var(--neutral-100);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--h2);
    border-radius: 50%
}

.c-info-list {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-info-list {
        --top: 0;
        --bot: 18
    }
}

.c-info-list:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-info-list h2 {
    text-align: center
}

.c-info-list__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(var(--base-space) * 2.5);
    padding: calc(var(--base-space) * 3)
}

    .c-info-list__item a {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: calc(var(--base-space) * 2.5)
    }

.c-info-list__item-title {
    font-size: var(--h3);
    font-weight: 500;
    color: var(--primary-purple);
    text-align: center
}

.c-info-list__item-description {
    text-align: center
}

.c-info-list__item-icon {
    align-items: center;
    aspect-ratio: 1/1;
    display: flex;
    width: 220px;
    flex: 0 0 220px;
    justify-content: center;
    position: relative;
    text-align: center;
    margin: 0 auto
}

    .c-info-list__item-icon svg {
        width: 100%;
        height: 100%;
        z-index: 1;
        color: var(--primary-purple)
    }

.c-cta-cards-advanced {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-cta-cards-advanced {
        --top: 0;
        --bot: 18
    }
}

.c-cta-cards-advanced:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-cta-cards-advanced > h2 {
    text-align: center
}

h2 + .c-cta-cards-advanced__container {
    margin-top: 0
}

.c-cta-cards-advanced__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: calc(var(--base-space) * 4)
}

.c-cta-cards-advanced__item--double {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
    grid-template-areas: "stat1" "title1" "stat2" "title2" "description" "button1" "button2";
    height: 100%;
    grid-template-rows: 150px min-content minmax(0,1fr) min-content
}

@media (min-width:48em) {
    .c-cta-cards-advanced__item--double {
        grid-template-columns: 1fr 1fr;
        grid-template-areas: "stat1 stat2" "title1 title2" "description description" "button1 button2"
    }
}

.c-cta-cards-advanced__left, .c-cta-cards-advanced__right {
    display: contents
}

.c-cta-cards-advanced__title {
    font-size: var(--h4);
    font-weight: 500
}

.c-cta-cards-advanced__left .c-cta-cards-advanced__title {
    grid-area: title1
}

.c-cta-cards-advanced__right .c-cta-cards-advanced__title {
    grid-area: title2
}

.c-cta-cards-advanced__description {
    grid-area: description;
    align-self: flex-start;
    display: flex;
    flex-wrap: wrap
}

.c-cta-cards-advanced__left .c-cta-cards-advanced__button {
    grid-area: button1
}

.c-cta-cards-advanced__right .c-cta-cards-advanced__button {
    grid-area: button2
}

.c-cta-cards-advanced__stat {
    width: 150px;
    height: 150px;
    aspect-ratio: 1/1;
    background-color: var(--secondary-magenta);
    color: var(--neutral-100);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: var(--h2);
    font-weight: 500;
    border-radius: 50%
}

    .c-cta-cards-advanced__stat span {
        display: block;
        font-size: var(--h6);
        margin-top: calc(var(--base-space) * -2)
    }

.c-cta-cards-advanced__left .c-cta-cards-advanced__stat {
    grid-area: stat1
}

.c-cta-cards-advanced__right .c-cta-cards-advanced__stat {
    grid-area: stat2
}

.c-circles-decoration {
    position: relative;
    padding-bottom: calc(var(--base-space) * 0);
    z-index: -2;
    overflow-x: clip
}

    .c-circles-decoration .contextual {
        z-index: 1
    }

    .c-circles-decoration + * {
        padding-top: calc(var(--base-space) * 0)
    }

.c-circles-decoration__large-circle {
    position: absolute;
    left: 0;
    width: 250%;
    aspect-ratio: 1/1;
    border-radius: 50%;
    opacity: .2;
    transform: translate(-52%,-12%)
}

@media (min-width:48em) {
    .c-circles-decoration__large-circle {
        top: 0;
        left: 50%;
        width: calc(90% + 24px);
        transform: translate(-110%,calc(var(--base-space) * -25))
    }
}

.c-circles-decoration__small-circle {
    position: absolute;
    left: 55%;
    width: 200%;
    border-radius: 50%;
    aspect-ratio: 1/1;
    opacity: .2;
    transform: translate(-25%,-60%)
}

@media (min-width:48em) {
    .c-circles-decoration__small-circle {
        left: 50%;
        bottom: 0;
        width: calc(60% - 48px);
        transform: translate(-85%,calc(var(--base-space) * 10))
    }
}

@media (max-width:47.9375em) {
    .c-circles-decoration__small-circle {
        left: unset;
        right: 0
    }
}

.c-content-image-signpost {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-content-image-signpost {
        --top: 0;
        --bot: 18.75
    }
}

.c-content-image-signpost:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-content-image-signpost__content {
    order: 1
}

@media (min-width:48em) {
    .c-content-image-signpost__content {
        order: 0
    }
}

.c-content-image-signpost__container, .c-content-image-signpost--with-circles .c-content-image-signpost__container {
    align-items: center
}

.c-content-image-signpost__image {
    position: relative
}

@media (min-width:48em) {
    .c-content-image-signpost__image {
        padding-right: 25%
    }

    .c-content-image-signpost__image--is-right {
        padding-left: 25%;
        padding-right: 0
    }
}

.c-content-image-signpost__image .u-media {
    z-index: 1
}

.c-content-image-signpost__image-circle-small {
    position: absolute;
    top: calc(var(--base-space) * 5);
    left: 34%;
    width: 52%;
    border-radius: 50%;
    aspect-ratio: 1/1;
    opacity: .2;
    transform: translate(15%,70%);
    z-index: 0
}

@media (min-width:48em) {
    .c-content-image-signpost__image-circle-small {
        left: 0;
        width: 40%;
        transform: translate(170%,-60%)
    }
}

.c-content-image-signpost__image--is-right .c-content-image-signpost__image-circle-small {
    left: 14%;
    transform: translate(-15%,70%)
}

@media (min-width:48em) {
    .c-content-image-signpost__image--is-right .c-content-image-signpost__image-circle-small {
        left: 100%;
        width: 40%;
        transform: translate(-270%,-60%)
    }
}

.c-content-image-signpost__image-circle-large {
    position: absolute;
    top: calc(var(--base-space) * 5);
    left: 14%;
    width: 68%;
    border-radius: 50%;
    aspect-ratio: 1/1;
    opacity: .2;
    transform: translate(-15%,90%);
    z-index: 0
}

@media (min-width:48em) {
    .c-content-image-signpost__image-circle-large {
        left: 0;
        width: 60%;
        transform: translate(60%)
    }
}

.c-content-image-signpost__image--is-right .c-content-image-signpost__image-circle-large {
    left: 14%;
    transform: translate(15%,90%)
}

@media (min-width:48em) {
    .c-content-image-signpost__image--is-right .c-content-image-signpost__image-circle-large {
        left: 100%;
        width: 60%;
        transform: translate(-160%)
    }
}

.c-image {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-image {
        --top: 0;
        --bot: 18
    }
}

.c-image:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.c-content + .c-image, .c-image + .c-content {
    --top: 0
}

.c-webform {
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-webform {
        --top: 0;
        --bot: 18
    }
}

.c-webform:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

.webform-submission-form .webform-progress-tracker {
    margin-top: 4rem;
    margin-bottom: 3rem
}

.webform-submission-form .webform-flexbox {
    margin-left: -.5em;
    margin-right: -.5em
}

@keyframes scroll {
    0% {
        transform: translate(0)
    }

    to {
        transform: translate(calc(-100% + 60vw))
    }
}

.c-alert-bar {
    max-width: 100%;
    min-height: 3rem;
    padding: 1rem 0;
    z-index: 100;
    color: var(--neutral-100);
    background-color: var(--secondary-magenta);
    overflow: hidden
}

    .c-alert-bar a {
        color: var(--neutral-100)
    }

        .c-alert-bar a:hover {
            text-decoration: underline
        }

.c-alert-bar__content {
    display: flex;
    gap: calc(var(--base-space) * 2);
    align-items: center
}

    .c-alert-bar__content p {
        margin: 0
    }

    .c-alert-bar__content svg {
        max-height: 100%;
        height: 17px;
        width: 8px !important;
        fill: var(--neutral-100)
    }

@media (max-width:34.9375em) {
    .c-alert-bar__content {
        display: flex;
        align-items: center;
        white-space: nowrap;
        width: fit-content;
        animation-name: scroll;
        animation-timing-function: linear;
        animation-duration: 10s;
        animation-iteration-count: infinite;
        animation-direction: alternate
    }
}

.c-stats-block {
    position: relative;
    z-index: 0;
    gap: 0;
    overflow: clip;
    --top: 0;
    --bot: 9;
    padding-top: calc(var(--base-space) * var(--top));
    padding-bottom: calc(var(--base-space) * var(--bot))
}

@media (min-width:48em) {
    .c-stats-block {
        --top: 0;
        --bot: 18
    }
}

.c-stats-block:not([class*=h-background]) + *:not([class*=h-background]):not([class*=h-maintain-space]) {
    --top: 0
}

@media (min-width:48em) {
    .c-stats-block {
        min-height: 830px
    }
}

.c-stats-block__background {
    grid-column: cover-page
}

@media (min-width:48em) {
    .c-stats-block__background {
        position: sticky;
        top: calc((100vh - 830px)/2);
        left: 0;
        width: 100%;
        height: 830px;
        grid-row: 1
    }
}

@media (max-width:47.9375em) {
    .c-stats-block__background {
        position: absolute;
        inset: 0
    }
}

.c-stats-block__background:after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle at 80%,rgba(68,37,98,.2),#442562 75%)
}

@media (max-width:47.9375em) {
    .c-stats-block__background:after {
        background-image: radial-gradient(circle at 50%,rgba(68,37,98,.6),#442562)
    }
}

.c-stats-block__background img {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right center
}

.c-stats-block__hider {
    position: sticky;
    top: calc((100vh - 830px)/2);
    left: 0;
    width: 100%;
    height: 830px;
    grid-column: cover-page;
    z-index: 2;
    pointer-events: none;
    grid-row: 1
}

@media (max-width:47.9375em) {
    .c-stats-block__hider {
        display: none
    }
}

.c-stats-block__hider:before, .c-stats-block__hider:after {
    content: "";
    background-color: var(--neutral-100);
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 2;
    height: calc((100vh - 830px)/2)
}

.c-stats-block__hider:before {
    top: calc((100vh - 830px)/-2)
}

.c-stats-block__hider:after {
    bottom: calc((100vh - 830px)/-2)
}

.layout-builder .c-stats-block__hider {
    display: none
}

.c-stats-block__container {
    position: relative;
    z-index: 1;
    padding: 120px 0;
    grid-column: full-bleed
}

@media (min-width:48em) {
    .c-stats-block__container {
        grid-row: 1
    }
}

@media (max-width:47.9375em) {
    .c-stats-block__container {
        padding: 40px 0 32px
    }
}

@media (min-width:48em) {
    .c-stats-block .c-slider__viewport {
        overflow: initial
    }
}

@media (min-width:48em) {
    .c-stats-block .c-slider__track {
        display: grid;
        grid-template-columns: minmax(0,250px) minmax(0,250px) minmax(0,450px);
        gap: 40px;
        margin-left: auto;
        justify-content: flex-end;
        overflow-x: initial
    }
}

@media (min-width:64em) {
    .c-stats-block .c-slider__track {
        gap: 120px
    }
}

.c-stats-block .c-slider__slide {
    display: flex;
    gap: 40px;
    justify-content: center;
    align-items: flex-start;
    grid-column: 1/span 2
}

@media (min-width:64em) {
    .c-stats-block .c-slider__slide {
        gap: 130px
    }
}

@media (max-width:47.9375em) {
    .c-stats-block .c-slider__slide {
        flex-direction: column;
        gap: 48px
    }
}

.c-stats-block .c-slider__slide:last-child {
    grid-row: 1/span var(--span);
    grid-column: 3/4
}

.c-stats-block .c-slider__controls {
    margin-top: 32px
}

.c-stats-block .c-slider__arrow {
    position: static;
    transform: none;
    background-color: transparent;
    color: var(--neutral-100);
    transition: color var(--trans-duration) cubic-bezier(.3,.15,.18,1)
}

    .c-stats-block .c-slider__arrow:hover {
        transform: none;
        color: var(--secondary-magenta-100)
    }

.c-stats-block .c-slider__dot {
    --color: var(--secondary-magenta-100)
}

.c-stats-block__item {
    position: relative;
    max-width: 288px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    padding: 66px 28px 0;
    color: var(--neutral-100)
}

    .c-stats-block__item:before {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        width: 100%;
        aspect-ratio: 1/1;
        border-radius: 50%;
        background-image: linear-gradient(to bottom,#991a6b,rgba(153,26,107,0) 50%);
        transform: translate(-50%)
    }

.c-stats-block__item--large {
    max-width: 450px;
    padding: 0
}

    .c-stats-block__item--large:before {
        display: none
    }

@media (min-width:48em) {
    .c-slider__slide:last-child .c-stats-block__item {
        position: sticky;
        top: calc((100vh - 830px)/2);
        height: 830px;
        display: flex;
        flex-direction: column;
        justify-content: center
    }
}

.c-stats-block__content {
    font-size: var(--h4);
    line-height: 1.2;
    position: relative;
    z-index: 1
}

.c-stats-block__item--large .c-stats-block__content {
    font-size: var(--h2)
}

.c-stats-block__value {
    display: flex;
    gap: 3px;
    align-items: baseline;
    justify-content: center;
    line-height: 1;
    position: relative;
    z-index: 1
}

    .c-stats-block__value small {
        font-size: 4rem
    }

    .c-stats-block__value span {
        font-size: 7.2rem
    }

    .c-stats-block__value + * {
        margin-top: 25px
    }

.c-stats-block__item--large .c-stats-block__value small {
    font-size: 8rem
}

.c-stats-block__item--large .c-stats-block__value span {
    font-size: 13rem
}

.c-stats-block__target {
    display: flex;
    justify-content: center;
    align-items: baseline;
    gap: 8px;
    font-size: var(--font-size-16);
    position: relative;
    z-index: 1
}

    .c-stats-block__target span {
        font-size: var(--h4);
        color: var(--secondary-magenta-100)
    }

.c-stats-block__item--large .c-stats-block__target {
    font-size: var(--h3)
}

    .c-stats-block__item--large .c-stats-block__target span {
        font-size: inherit;
        color: inherit
    }

.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--primary-magenta {
    --h-background-color: var(--primary-magenta);
    background-color: var(--primary-magenta)
}

.h-background--primary-yellow {
    --h-background-color: var(--primary-yellow);
    background-color: var(--primary-yellow)
}

.h-background--primary-green {
    --h-background-color: var(--primary-green);
    background-color: var(--primary-green)
}

.h-background--primary-cyan {
    --h-background-color: var(--primary-cyan);
    background-color: var(--primary-cyan)
}

.h-background--primary-grey {
    --h-background-color: var(--primary-grey);
    background-color: var(--primary-grey)
}

.h-background--primary-purple {
    --h-background-color: var(--primary-purple);
    background-color: var(--primary-purple);
    color: #fff;
}

.h-background--secondary-magenta-0 {
    --h-background-color: var(--secondary-magenta-0);
    background-color: var(--secondary-magenta-0)
}

.h-background--secondary-magenta {
    --h-background-color: var(--secondary-magenta);
    background-color: var(--secondary-magenta)
}

.h-background--secondary-magenta-100 {
    --h-background-color: var(--secondary-magenta-100);
    background-color: var(--secondary-magenta-100)
}

.h-background--secondary-yellow {
    --h-background-color: var(--secondary-yellow);
    background-color: var(--secondary-yellow)
}

.h-background--secondary-green {
    --h-background-color: var(--secondary-green);
    background-color: var(--secondary-green)
}

.h-background--secondary-blue {
    --h-background-color: var(--secondary-blue);
    background-color: var(--secondary-blue)
}

.h-background--secondary-grey {
    --h-background-color: var(--secondary-grey);
    background-color: var(--secondary-grey)
}

.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-60 {
    --h-background-color: var(--neutral-60);
    background-color: var(--neutral-60)
}

.h-background--neutral-75 {
    --h-background-color: var(--neutral-75);
    background-color: var(--neutral-75)
}

.h-background--neutral-100 {
    --h-background-color: var(--neutral-100);
    background-color: var(--neutral-100)
}

.h-background--black-20 {
    --h-background-color: var(--black-20);
    background-color: var(--black-20)
}

.h-background--white-60 {
    --h-background-color: var(--white-60);
    background-color: var(--white-60)
}

.h-background--status-error {
    --h-background-color: var(--status-error);
    background-color: var(--status-error)
}

.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 {
    color: var(--primary-0) !important
}

.h-text--primary-50 {
    color: var(--primary-50) !important
}

.h-text--primary-100 {
    color: var(--primary-100) !important
}

.h-text--primary-magenta {
    color: var(--primary-magenta) !important
}

.h-text--primary-yellow {
    color: var(--primary-yellow) !important
}

.h-text--primary-green {
    color: var(--primary-green) !important
}

.h-text--primary-cyan {
    color: var(--primary-cyan) !important
}

.h-text--primary-purple {
    color: var(--primary-purple) !important
}

.h-text--secondary-magenta-0 {
    color: var(--secondary-magenta-0) !important
}

.h-text--secondary-magenta {
    color: var(--secondary-magenta) !important
}

.h-text--secondary-magenta-100 {
    color: var(--secondary-magenta-100) !important
}

.h-text--secondary-yellow {
    color: var(--secondary-yellow) !important
}

.h-text--secondary-green {
    color: var(--secondary-green) !important
}

.h-text--secondary-blue {
    color: var(--secondary-blue) !important
}

.h-text--secondary-grey {
    color: var(--secondary-grey) !important
}

.h-text--neutral-0 {
    color: var(--neutral-0) !important
}

.h-text--neutral-25 {
    color: var(--neutral-25) !important
}

.h-text--neutral-50 {
    color: var(--neutral-50) !important
}

.h-text--neutral-60 {
    color: var(--neutral-60) !important
}

.h-text--neutral-75 {
    color: var(--neutral-75) !important
}

.h-text--neutral-100 {
    color: var(--neutral-100) !important
}

.h-text--black-20 {
    color: var(--black-20) !important
}

.h-text--white-60 {
    color: var(--white-60) !important
}

.h-text--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--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))
    }
}

@media (min-width:81.25em) {
    [style*="--space-times-nav:"] {
        --space: calc(var(--base-space) * var(--space-times-nav))
    }
}

.site-logo img, .site-name img {
    max-height: 60px
}

#block-base-branding .site-name, #block-base-branding .site-slogan, .node__submitted, .search-block-form {
    display: none
}

section {
    position: relative
}

.layout {
    position: relative
}

    .layout .contextual-links {
        top: 4px;
        padding: .5em;
        margin: 0;
        min-width: 120px;
        background: var(--colorGinLayer3Background);
        border: 0 none;
        border-radius: var(--ginBorderMedium);
        box-shadow: var(--ginShadowLevel2)
    }

        .layout .contextual-links a {
            font-size: small;
            font-family: var(--ginFont);
            color: var(--colorGinPrimary);
            line-height: 1;
            white-space: nowrap;
            padding: .5rem 1rem;
            margin: 0;
            background: transparent;
            border-radius: var(--ginBorderSmall);
            text-decoration: none
        }

            .layout .contextual-links a:hover {
                color: var(--colorGinButtonText);
                background: var(--colorGinPrimary)
            }

.layout-builder-form, .block-help-block {
    border-radius: 1rem;
    background-color: #fafafa;
    border: 1px solid #efefef;
    padding: 2rem;
    max-width: 95%;
    margin: 2rem auto
}

h2.block_label {
    position: absolute;
    right: 0;
    top: -10px;
    font-size: 60px;
    color: #efefef
}

.layout-builder {
    overflow: hidden;
    margin: 3rem 7rem
}

.layout-builder-update-block, .layout-builder-configure-block {
    font-size: 16px
}

.layout-builder__add-block, .layout-builder__add-section, .layout-builder__link {
    position: relative;
    z-index: 1
}

.layout-builder .c-circles-decoration {
    z-index: 0;
    min-height: 160px
}

    .layout-builder .c-circles-decoration:before {
        content: "Circles Decoration (hover to manage)";
        position: absolute;
        width: 100%;
        text-align: center;
        border: 1px dotted lightgray;
        padding: 2rem
    }

#layout-builder-modal select, #layout-builder-modal input.button {
    font-size: 14px
}

#layout-builder-modal .form-item input[type=text] {
    display: block;
    width: 100%;
    padding: 1rem;
    border: 1px solid #bbb;
    border-radius: 5px
}

#layout-builder-modal .media-library-item__name {
    font-size: 1.3rem
}

#block-base-local-tasks {
    position: fixed;
    right: 0;
    left: 0;
    z-index: 10;
    bottom: 0;
    border: 1px solid #ddd;
    padding: 1rem;
    background-color: #efefef;
    box-shadow: #64646f33 0 7px 29px
}

    #block-base-local-tasks nav.tabs {
        position: relative
    }

        #block-base-local-tasks nav.tabs ul.tabs {
            display: flex;
            flex-direction: row;
            margin: 0;
            justify-content: center
        }

            #block-base-local-tasks nav.tabs ul.tabs li a {
                color: #000;
                text-decoration: none;
                text-transform: uppercase;
                font-size: 80%
            }

                #block-base-local-tasks nav.tabs ul.tabs li a:hover {
                    background-color: #444;
                    color: #fff
                }

            #block-base-local-tasks nav.tabs ul.tabs li.is-active a {
                font-weight: 700
            }

.c-hero-5050__image {
    position: relative
}

    .c-hero-5050__image .c-hero-5050__image-wrap img {
        width: 100%;
        height: 100%;
        object-fit: cover
    }

figure.u-media {
    background-color: transparent
}

.c-header__language-select .c-header__button .goog-te-gadget-simple span:not(:first-of-type) {
    display: none
}

.ui-dialog .ui-dialog-title {
    font-size: 21px !important
}

#drupal-lbim-modal {
    overflow: hidden !important
}

.progress-step .progress-marker:before {
    font-size: var(--h5);
    padding: 2rem
}

.webform-progress-tracker .progress-step:not(.is-active) .progress-marker:before {
    background-color: var(--neutral-100);
    border: 2px solid var(--neutral-50);
    color: var(--neutral-50)
}

.progress-step.is-active .progress-marker:before {
    background-color: var(--secondary-magenta);
    color: var(--neutral-100)
}

.progress-marker:after {
    top: 1.8rem;
    height: 2px
}

.item-list__comma-list {
    padding-left: 3rem;
    display: block
}

    .item-list__comma-list li {
        display: block
    }

        .item-list__comma-list li:after {
            display: none
        }

div[aria-label="Error message"] {
    color: var(--status-error)
}

.media-library-item .media-library-item__remove, .media-library-item .media-library-item__remove.button {
    background-image: inherit !important
}

.block-inline-blockpdf-viewer {
    display: flex;
    justify-content: center
}
