[data-ani] {
    --delay: 0ms;
    --time: 400ms;
    --timing: ease;
    --distance: 100;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

[data-ani-init=true][data-ani*=fade],[data-ani-init=true][data-ani] {
    opacity: 0;
    transition: opacity var(--time) var(--timing),transform var(--time) var(--timing)
}

[data-ani-init=true][data-ani*=fade][data-ani-run=true],[data-ani-init=true][data-ani][data-ani-run=true] {
    opacity: 1;
    transform: translateY(0);
    transition-delay: var(--delay)
}

[data-ani-init=true][data-ani=fade-left] {
    transform: matrix(1,0,0,1,var(--distance),0)
}

[data-ani-init=true][data-ani=fade-right] {
    transform: matrix(1,0,0,1,calc(var(--distance)*-1),0)
}

[data-ani-init=true][data-ani=fade-up] {
    transform: matrix(1,0,0,1,0,var(--distance))
}

[data-ani-init=true][data-ani=fade-up-right] {
    transform: matrix(1,0,0,1,calc(var(--distance)*-1),var(--distance))
}

[data-ani-init=true][data-ani=fade-up-left] {
    transform: matrix(1,0,0,1,var(--distance),var(--distance))
}

.news-archive.page .carousel {
    --size: min(75%,976px,60vmin);
    --side-icons: url(/images/icon-arrow-right-white.svg);
    --nav-size: 114px;
    overflow: hidden;
    padding-top: var(--size);
    pointer-events: none;
    position: relative
}

.news-archive.page .carousel li.slide,.news-archive.page .carousel ol {
    list-style: none;
    margin: 0;
    padding: 0
}

.news-archive.page .carousel>ol {
    bottom: 0;
    display: flex;
    left: 0;
    overflow-x: scroll;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    position: absolute;
    right: 0;
    scroll-behavior: smooth;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    top: 0
}

.news-archive.page .carousel>ol::-webkit-scrollbar {
    display: none
}

.news-archive.page .carousel>ol>li.slide {
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    flex: 0 0 100%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: auto;
    max-height: 100%;
    pointer-events: all;
    position: relative;
    width: 100%
}

.news-archive.page .carousel>ol>li.slide>figure {
    height: auto;
    margin: auto;
    width: 100%
}

.news-archive.page .carousel>ol>li.slide>figure img {
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.news-archive.page .carousel>ol>li.slide>figure>figcaption.simple {
    color: var(--color-white);
    font-size: 5vmin;
    left: 5vmin;
    position: absolute;
    text-shadow: 3px 1px 3px rgba(0,0,0,.3);
    top: 5vmin
}

.news-archive.page .carousel>ol>li.slide>figure>figcaption.counter {
    color: var(--color-white);
    font-size: clamp(.875rem,2vw,1.25rem);
    left: 2.5vmin;
    position: absolute;
    text-align: left;
    text-shadow: 3px 1px 3px rgba(0,0,0,.3);
    top: 2.5vmin
}

.news-archive.page .carousel>ol>li.slide>figure>figcaption.counter label {
    font-size: clamp(1.125rem,3vw,1.5rem)
}

.news-archive.page .carousel>ol>li.slide>figure>figcaption.counter :not(:first-child) {
    padding-top: 5px
}

.news-archive.page .carousel>ol>li.slide>nav {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    scroll-snap-align: center;
    scroll-snap-stop:always;top: 0;
    width: 100%
}

.news-archive.page .carousel>aside {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    text-align: center
}

.news-archive.page .carousel>aside ol {
    padding-bottom: min(3vmin,45px)
}

.news-archive.page .carousel>aside li,.news-archive.page .carousel>aside ol {
    display: inline-block
}

.news-archive.page .carousel>aside li>a {
    background-clip: content-box;
    background-color: transparent;
    border: 1px solid var(--color-white);
    border-radius: 50%;
    display: inline-block;
    font-size: 0;
    height: 8px;
    margin: 7.5px;
    transition: background-color .3s ease-in-out;
    width: 8px
}

.news-archive.page .carousel>aside li.active>a {
    background-color: var(--color-white)
}

.news-archive.page .carousel:after,.news-archive.page .carousel:before,.news-archive.page .carousel a.next,.news-archive.page .carousel a.prev {
    font-size: 0;
    height: var(--nav-size);
    margin-top: calc(var(--size)/2);
    pointer-events: all;
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    width: var(--nav-size)
}

.news-archive.page .carousel a.next,.news-archive.page .carousel a.prev {
    margin-top: 0;
    top: 50%;
    transform: translateY(-50%)
}

.news-archive.page .carousel:before,.news-archive.page .carousel a.prev {
    left: 0
}

.news-archive.page .carousel:after,.news-archive.page .carousel a.next {
    right: 0
}

.news-archive.page .carousel:before {
    transform: rotate(180deg) translateY(50%)
}

.news-archive.page .carousel:not([data-multiple=false]):after,.news-archive.page .carousel:not([data-multiple=false]):before {
    background-color: transparent;
    background-image: var(--side-icons);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    pointer-events: none;
    z-index: 1
}

.news-archive.page .carousel-wrapper {
    --padding-sides: 0;
    background-color: rgba(0,0,0,.8);
    cursor: pointer;
    display: unset;
    height: max(100%,100vh);
    left: 0;
    opacity: 1;
    padding: max(104px,min(16vmin,125px)) 0;
    position: fixed;
    top: 0;
    transition: opacity .2s ease-in-out;
    width: 100vw;
    z-index: 1000
}

.news-archive.page .carousel-wrapper .carousel {
    --size: min(85%,80vmin);
    cursor: auto;
    z-index: 10
}

.news-archive.page .carousel-wrapper .carousel:after,.news-archive.page .carousel-wrapper .carousel:before {
    background-color: transparent;
    background-image: none
}

.news-archive.page .carousel-wrapper .carousel>ol>li.slide>figure img {
    -o-object-fit: contain;
    object-fit: contain
}

.news-archive.page .carousel-wrapper .carousel>aside {
    display: none
}

.news-archive.page .carousel-wrapper.hidden {
    opacity: 0;
    pointer-events: none
}

.news-archive.page .carousel-wrapper.hidden .carousel:after,.news-archive.page .carousel-wrapper.hidden .carousel:before,.news-archive.page .carousel-wrapper.hidden .carousel a.next,.news-archive.page .carousel-wrapper.hidden .carousel a.prev,.news-archive.page .carousel-wrapper.hidden li.slide {
    pointer-events: none
}

.news-archive.page .carousel-wrapper .head {
    align-items: center;
    display: flex;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    inset: 0;
    justify-content: space-between;
    position: absolute;
    width: 100%
}

.news-archive.page .carousel-wrapper .head .counter {
    color: var(--color-white);
    font: var(--font-size-22);
    margin: 24px
}

.news-archive.page .carousel-wrapper .head .close {
    background-color: var(--color-white);
    border: none;
    cursor: pointer;
    height: 66px;
    -webkit-mask-image: url(/images/icon-hamburger-open.svg);
    mask-image: url(/images/icon-hamburger-open.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 50px;
    mask-size: 50px;
    outline: none;
    width: 66px
}

@media screen and (min-width: 1000px) {
    .news-archive.page .carousel-wrapper {
        --padding-sides:0;
        max-width: 100vw
    }

    .news-archive.page .carousel-wrapper .images {
        grid-template-columns: repeat(2,1fr)
    }

    .news-archive.page .carousel-wrapper .images img {
        height: 100%
    }

    .news-archive.page .carousel-wrapper .carousel:after,.news-archive.page .carousel-wrapper .carousel:before {
        background-color: transparent;
        background-image: var(--side-icons);
        background-size: 25px
    }

    .news-archive.page .carousel-wrapper .carousel:after:hover,.news-archive.page .carousel-wrapper .carousel:before:hover {
        opacity: .5
    }

    .news-archive.page .carousel-wrapper .carousel figure {
        margin: auto;
        max-width: 82vw
    }

    .news-archive.page .carousel-wrapper .carousel figcaption.counter {
        bottom: 2.5vmin;
        right: calc(9vw + 2.5vmin);
        text-align: right!important;
        top: unset
    }

    .news-archive.page .carousel-wrapper .carousel>ol>li.slide>figure>img {
        -o-object-fit: contain!important;
        object-fit: contain!important
    }
}

.news-archive.page li.slide picture {
    display: flex
}

.news-archive.page img[data-expandable=true],.news-archive.page picture[data-expandable=true] {
    cursor: pointer;
    display: block;
    height: auto;
    position: relative;
    width: 100%
}

.news-archive.page img[data-expandable=true]:after,.news-archive.page picture[data-expandable=true]:after {
    --size: 44px;
    --inset: 10px;
    background-color: rgba(0,0,0,.6);
    background-image: url(/images/icon-enlarge-white.svg);
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 100%;
    content: "";
    display: block;
    height: var(--size);
    inset: var(--inset) calc(100% - var(--size) - var(--inset));
    opacity: 0;
    position: absolute;
    transition: opacity .15s ease-out;
    width: var(--size)
}

.news-archive.page img[data-expandable=true]:hover:after,.news-archive.page picture[data-expandable=true]:hover:after {
    opacity: 1
}

.embeditem iframe[src^="https://player.vimeo.com"],.embeditem iframe[src^="https://vimeo.com"],.embeditem iframe[src^="https://www.youtube.com"] {
    aspect-ratio: 16/9;
    height: auto;
    width: 100%
}

.front.page {
    min-height: 80vh
}

:root {
    --color-white: #fff;
    --color-offwhite: #f9f9f9;
    --color-black: #303030;
    --color-blue: #133a88;
    --color-orange: #ff6730;
    --color-white-orange: #fff7f4;
    --color-light-orange: #ffece5;
    --color-transparent-orange: rgba(255,103,48,.25);
    --color-background: var(--color-white);
    --color-header: var(--color-white);
    --color-footer: #223988;
    --color-font: var(--color-black);
    --color-font-reverse: var(--color-white);
    --font-family: "Mulish",sans-serif;
    --font-weight-extralight: 200;
    --font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --font-weight-black: 900;
    --font-size-16: 16px/20px var(--font-family);
    --font-size-18: 18px/27px var(--font-family);
    --font-size-20: 20px/30px var(--font-family);
    --font-size-22: 22px/33px var(--font-family);
    --font-size-32: 32px/48px var(--font-family);
    --font-size-40: clamp(32px,40px,4vw) /clamp(40px,50px,4vw) var(--font-family);
    --width-side-min: 24px;
    --width-max: 1440px;
    -webkit-text-size-adjust: none;
    -moz-text-size-adjust: none;
    text-size-adjust: none
}

html {
    scroll-behavior: smooth;
    width: 100vw
}

body,html {
    max-width: 100vw;
    overflow-x: hidden
}

body {
    background: var(--color-background);
    color: var(--color-font);
    display: grid;
    font: var(--font-size-18);
    font-family: var(--font-family);
    font-weight: var(--font-weight-regular);
    grid-template-rows: auto 1fr auto;
    margin: 0;
    min-height: 100vh;
    padding: 0
}

body main {
    display: flex;
    flex-direction: column;
    overflow: hidden
}

.h1,h1 {
    font: var(--font-size-40);
    font-weight: var(--font-weight-bold)
}

.h2,h2 {
    font: var(--font-size-32);
    font-weight: var(--font-weight-semibold)
}

.h3,h3 {
    font: var(--font-size-22);
    font-weight: var(--font-weight-bold)
}

.link,a {
    color: var(--color-orange)
}

.link {
    background-color: transparent;
    border: none;
    display: contents;
    font: inherit;
    padding: inherit
}

.skip-link {
    background: #fff;
    position: absolute;
    top: -3em
}

.skip-link:focus {
    top: 0
}

:focus-visible {
    outline: 4px dashed currentcolor
}

.page {
    align-items: center;
    display: flex
}

.page #content {
    max-width: calc(var(--width-max) + var(--margin-sides)*2);
    padding: 0 var(--margin-sides);
    width: 100%
}

span.icon {
    background-image: var(--image,pink);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: var(--icon-width,24px) var(--icon-height,var(--icon-width,24px));
    color: #fff;
    display: inline-block;
    font-size: 0;
    height: var(--icon-height,var(--icon-width,24px));
    min-width: var(--icon-width,24px);
    width: var(--icon-width,24px)
}

span.icon.search {
    --icon-width: 16px;
    --image: url(/images/icn-search.svg)
}

span.icon.arrow {
    --icon-width: 20px;
    --image: url(/images/icn-arrow.svg)
}

span.mask-icon {
    background-color: currentcolor;
    color: #fff;
    display: inline-block;
    font-size: 0;
    height: var(--icon-height,var(--icon-width,24px));
    -webkit-mask-image: var(--image,pink);
    mask-image: var(--image,pink);
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: var(--icon-width,24px) var(--icon-height,var(--icon-width,24px));
    mask-size: var(--icon-width,24px) var(--icon-height,var(--icon-width,24px));
    min-width: var(--icon-width,24px);
    width: var(--icon-width,24px)
}

span.mask-icon.search {
    --icon-width: 16px;
    --image: url(/images/icn-search.svg)
}

span.mask-icon.arrow {
    --icon-width: 20px;
    --image: url(/images/icn-arrow.svg)
}

span.mask-icon.download {
    --icon-width: 20px;
    --image: url(/images/icons/regular/download.svg)
}

@media screen and (min-width: 1251px) {
    span.icon.search {
        --icon-width:24px
    }
}

summary::-webkit-details-marker {
    display: none;
    height: 0;
    margin-right: 0;
    width: 0
}

.visually-hidden:not(:focus):not(:active) {
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px
}

[hidden] {
    display: none!important
}

.max-lines {
    --max-lines: 3;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: var(--max-lines);
    line-clamp: var(--max-lines);
    display: -webkit-box;
    display: box;
    overflow: hidden
}

.page {
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    max-width: 100vw
}

.page>article>h1 {
    margin: 0 auto;
    max-width: var(--width-max);
    padding: 0 var(--width-side-min);
    padding-top: 60px
}

.page>article>h1+section {
    margin: 0 auto;
    max-width: var(--width-max);
    padding: 0 var(--width-side-min);
    padding-bottom: clamp(64px,80px,10vw)
}

.page>article>h1+section>div {
    max-width: 680px
}

.news-archive.page .empty {
    margin: auto;
    max-width: 768px;
    padding: 0 var(--width-side-min);
    width: 100vw
}

.news-archive.page .empty h1 {
    margin-bottom: clamp(30px,5vw,100px);
    text-align: center
}

.popup {
    --outer-margins: clamp(var(--width-side-min),64px,4vw);
    background-color: rgba(48,48,48,.6);
    display: flex;
    height: calc(100vh - var(--outer-margins)*2);
    opacity: 100%;
    padding: var(--outer-margins);
    position: fixed;
    top: 0;
    width: calc(100vw - var(--outer-margins)*2);
    z-index: 10000
}

@-webkit-keyframes a {
    0% {
        opacity: 100%
    }

    to {
        opacity: 0
    }
}

@keyframes a {
    0% {
        opacity: 100%
    }

    to {
        opacity: 0
    }
}

@-webkit-keyframes b {
    0% {
        opacity: 0
    }

    to {
        opacity: 100%
    }
}

@keyframes b {
    0% {
        opacity: 0
    }

    to {
        opacity: 100%
    }
}

@-webkit-keyframes c {
    0% {
        transform: scale(25%)
    }

    to {
        transform: scale(100%)
    }
}

@keyframes c {
    0% {
        transform: scale(25%)
    }

    to {
        transform: scale(100%)
    }
}

@-webkit-keyframes d {
    0% {
        transform: scale(100%)
    }

    to {
        transform: scale(50%)
    }
}

@keyframes d {
    0% {
        transform: scale(100%)
    }

    to {
        transform: scale(50%)
    }
}

.popup>.wrapper {
    --padding-top: clamp(var(--width-side-min),32px,5vw);
    --padding-sides: clamp(var(--width-side-min),64px,5vw);
    --padding-bottom: clamp(32px,98px,8vmin);
    --width: clamp(100px,873px,64vw);
    background-color: #fff;
    display: flex;
    flex-direction: column;
    margin: auto;
    max-height: calc(100% - var(--outer-margins)*2);
    padding: var(--padding-top) calc(var(--padding-sides)/2) var(--padding-bottom) var(--padding-sides);
    transform: scale(1)
}

@media screen and (max-width: 720px) {
    .popup>.wrapper {
        --width:unset
    }
}

@media screen and (max-width: 1300px) {
    .popup>.wrapper {
        max-height:calc(100% - var(--outer-margins)*5)
    }
}

.popup>.wrapper .close-popup {
    --size: 24px;
    background: transparent;
    background-image: url(/images/close_icon.svg);
    background-repeat: no-repeat;
    background-size: contain;
    border: 0;
    cursor: pointer;
    font-size: 0;
    height: var(--size);
    margin: auto 0 0 auto;
    padding-bottom: 45px;
    width: var(--size)
}

@media screen and (max-width: 720px) {
    .popup>.wrapper .close-popup {
        position:absolute;
        right: 35px;
        top: 35px
    }
}

.popup>.wrapper>article {
    grid-gap: 0 var(--padding-sides);
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-right: calc(var(--padding-sides)/2);
    overflow: hidden;
    width: var(--width)
}

@media screen and (max-width: 720px) {
    .popup>.wrapper>article {
        grid-template-columns:1fr;
        overflow-y: auto
    }
}

.popup>.wrapper>article h1 {
    font: var(--font-size-32);
    margin: 0;
    padding: 0
}

@media screen and (max-width: 720px) {
    .popup>.wrapper>article h1 {
        font-size:1.5rem;
        line-height: 1.875rem;
        margin-top: 45px
    }
}

.popup>.wrapper>article .title {
    font: var(--font-size-20);
    margin: 0;
    padding: 0
}

@media screen and (max-width: 720px) {
    .popup>.wrapper>article .title {
        font-size:1rem;
        line-height: 1.25rem;
        margin-top: 10px
    }
}

.popup>.wrapper>article address {
    margin: 32px 0
}

@media screen and (max-width: 720px) {
    .popup>.wrapper>article address {
        font-size:1rem;
        line-height: 1.25rem;
        margin: 20px 0
    }
}

.popup>.wrapper>article address a {
    color: inherit;
    display: block;
    font-style: normal;
    text-decoration: none
}

.popup>.wrapper>article address a:hover {
    cursor: pointer;
    text-decoration: underline
}

.popup>.wrapper>article main {
    overflow-y: auto
}

@media screen and (max-width: 720px) {
    .popup>.wrapper>article main {
        font-size:1.125rem;
        line-height: 1.6875rem;
        overflow: unset
    }
}

.popup>.wrapper>article img {
    aspect-ratio: 1/1;
    background-color: #303030;
    grid-row: 1/5;
    height: auto;
    width: min(100%,295px)
}

.popup.closed {
    -webkit-animation: a .5s cubic-bezier(.5,0,.14,1.32) 1 forwards;
    animation: a .5s cubic-bezier(.5,0,.14,1.32) 1 forwards
}

.popup.closed>.wrapper {
    -webkit-animation: d .5s cubic-bezier(.5,0,.14,1.32) 1 forwards;
    animation: d .5s cubic-bezier(.5,0,.14,1.32) 1 forwards
}

.popup:not(.popup.closed) {
    -webkit-animation: b .5s cubic-bezier(.5,0,.14,1.32) 1 forwards;
    animation: b .5s cubic-bezier(.5,0,.14,1.32) 1 forwards
}

.popup:not(.popup.closed)>.wrapper {
    -webkit-animation: c .5s cubic-bezier(.5,0,.14,1.32) 1 forwards;
    animation: c .5s cubic-bezier(.5,0,.14,1.32) 1 forwards
}

.c-analyst-coverage {
    padding: 0 var(--width-side-min);
    padding-bottom: 80px;
    padding-top: 90px
}

.c-analyst-coverage h1 {
    margin: 0 auto 18px;
    max-width: var(--width-max)
}

.c-analyst-coverage figure {
    margin: 0 auto;
    max-width: var(--width-max);
    padding: 0
}

.c-analyst-coverage figcaption {
    font-size: .75rem;
    opacity: .75
}

.c-analyst-coverage table {
    border-collapse: collapse;
    font: var(--font-size-18);
    overflow-y: hidden;
    width: 100%
}

.c-analyst-coverage table td,.c-analyst-coverage table th {
    padding: 16px 20px;
    vertical-align: baseline
}

.c-analyst-coverage table thead {
    text-transform: uppercase
}

.c-analyst-coverage table thead th {
    background-color: #fff7f4;
    font-weight: var(--font-weight-extrabold);
    text-align: start;
    width: 31%
}

.c-analyst-coverage table [data-openable] {
    margin-top: 8px;
    max-height: 15rem;
    transform-origin: top;
    transition: .25s ease-in-out
}

.c-analyst-coverage table tr {
    background-color: var(--color-white)
}

.c-analyst-coverage table tr[data-is-open=false] [data-openable] {
    max-height: 0;
    opacity: 0;
    overflow: hidden
}

.c-analyst-coverage table button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    font: inherit;
    margin: 0;
    padding: 0;
    text-decoration: underline
}

.c-analyst-coverage table address {
    font-style: normal
}

.c-analyst-coverage table:not(.c-analyst-coverage table[data-analysts-count="1"]):not(.c-analyst-coverage table[data-analysts-count="2"]):not(.c-analyst-coverage table[data-analysts-count="3"]):not(.c-analyst-coverage table[data-analysts-count="4"]) tr:nth-child(2n) {
    background-color: #fff7f4
}

.c-analyst-coverage table .buy {
    color: var(--color,#10ac00)
}

.c-analyst-coverage table .hold {
    color: #f40
}

.c-analyst-coverage table .sell {
    color: #ac0000
}

.carousel-component {
    --size: 246px;
    --side-icons: url(/images/icon-arrow-back.svg);
    --nav-size: 32px;
    overflow: hidden;
    padding-top: var(--size);
    position: relative
}

.carousel-component li.slide,.carousel-component ol {
    list-style: none;
    margin: 0;
    padding: 0
}

.carousel-component>ol {
    bottom: 0;
    display: flex;
    left: 0;
    overflow-x: scroll;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    position: absolute;
    right: 0;
    scroll-behavior: smooth;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    top: 0
}

.carousel-component>ol::-webkit-scrollbar {
    display: none
}

.carousel-component>ol>li.slide {
    background: rgba(0,0,0,.8);
    background-repeat: no-repeat;
    background-size: cover;
    flex: 0 0 100%;
    position: relative;
    width: 100%
}

.carousel-component>ol>li.slide figure {
    height: 100%;
    margin: 0;
    width: 100%
}

.carousel-component>ol>li.slide figure img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.carousel-component>ol>li.slide figure>figcaption.date {
    bottom: 1vmin;
    color: var(--color-white);
    position: absolute;
    right: 2vmin;
    text-shadow: 3px 1px 3px rgba(0,0,0,.3)
}

.carousel-component>ol>li.slide figure>figcaption.simple {
    color: var(--color-white);
    font-size: 5vmin;
    left: 5vmin;
    position: absolute;
    text-shadow: 3px 1px 3px rgba(0,0,0,.3);
    top: 5vmin
}

.carousel-component>ol>li.slide figure>figcaption.counter {
    color: var(--color-white);
    font-size: clamp(.875rem,2vw,1.25rem);
    left: 2.5vmin;
    position: absolute;
    text-align: left;
    text-shadow: 3px 1px 3px rgba(0,0,0,.3);
    top: 2.5vmin
}

.carousel-component>ol>li.slide figure>figcaption.counter label {
    font-size: clamp(1.125rem,3vw,1.5rem)
}

.carousel-component>ol>li.slide figure>figcaption.counter :not(:first-child) {
    padding-top: 5px
}

.carousel-component>ol>li.slide>nav {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    scroll-snap-align: center;
    scroll-snap-stop:always;top: 0;
    width: 100%
}

.carousel-component>aside {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    text-align: center
}

.carousel-component>aside ol {
    padding-bottom: min(3vmin,45px)
}

.carousel-component>aside li,.carousel-component>aside ol {
    display: inline-block
}

.carousel-component>aside li>a {
    background-clip: content-box;
    background-color: transparent;
    border: 1px solid var(--color-white);
    border-radius: 50%;
    display: inline-block;
    font-size: 0;
    height: 8px;
    margin: 7.5px;
    transition: background-color .3s ease-in-out;
    width: 8px
}

.carousel-component>aside li.active>a {
    background-color: var(--color-white)
}

.carousel-component:after,.carousel-component:before,.carousel-component a.next,.carousel-component a.prev {
    font-size: 0;
    height: var(--nav-size);
    margin-top: calc(var(--size)/2);
    pointer-events: all;
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    width: var(--nav-size)
}

.carousel-component:before,.carousel-component a.prev {
    left: 0
}

.carousel-component:after,.carousel-component a.next {
    right: 0
}

.carousel-component:after {
    transform: rotate(180deg) translateY(50%)
}

.carousel-component:not([data-multiple=false]):after,.carousel-component:not([data-multiple=false]):before {
    background-color: var(--color-light-orange);
    background-image: var(--side-icons);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    pointer-events: none;
    z-index: 1
}

.text.page .component[style="--background-color:#f3f5f9"]+.component[style="--background-color:#f3f5f9"]>*,.text.page .component[style="--background-color:#f9f9f3"]+.component[style="--background-color:#f9f9f3"]>*,.text.page .component[style="--background-color:#fff7f4"]+.component[style="--background-color:#fff7f4"]>*,.text.page .component[style="--background-color:#ffffff"]+.component[style="--background-color:#ffffff"]>* {
    padding-top: 0
}

.component:has(.c-announcement-banner) {
    position: relative;
    z-index: 2
}

.c-announcement-banner {
    background-color: var(--color-light-orange);
    color: transparent;
    display: block;
    font: var(--font-size-18);
    font-weight: var(--font-weight-semi-bold);
    position: absolute;
    text-decoration: none;
    transform: scaleY(0);
    transform-origin: center top;
    transition: .4s ease;
    transition-delay: 0ms,.15s;
    transition-property: transform,color;
    width: 100%;
    z-index: 1
}

.c-announcement-banner[data-loaded] {
    color: var(--color-font);
    transform: scaleY(1)
}

.c-announcement-banner .inner {
    align-items: baseline;
    display: flex;
    flex-wrap: wrap;
    gap: .25em .5em;
    margin: auto;
    max-width: var(--width-max,1200px);
    padding: 1em
}

.c-announcement-banner .link-text {
    font: var(--font-size-18);
    font-weight: var(--font-weight-regular);
    text-decoration: underline;
    white-space: no-wrap
}

.events-component {
    padding-bottom: 65px;
    padding-top: clamp(60px,130px,10vw);
    position: relative
}

.events-component h1 {
    color: var(--color-blue);
    font: var(--font-size-32);
    font-weight: var(--font-weight-semibold);
    text-align: center
}

.events-component .wrapper {
    margin: auto;
    max-width: calc(var(--width-max) + var(--width-side-min)*2);
    padding: 0 var(--width-side-min);
    position: relative
}

@media only screen and (max-width: 1600px) {
    .events-component .wrapper {
        margin:0 clamp(50px,100px,5vw)
    }
}

.events-component .wrapper {
    --line-offset: 93px
}

.events-component .wrapper:before {
    background-color: var(--color-orange);
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    right: calc(50% - 50vw);
    top: var(--line-offset);
    width: 100vw
}

.events-component button[data-for=carousel] {
    --size: 48px;
    --buttons-offset: clamp(-75px,75px,4vw);
    background-color: var(--color-white-orange);
    background-image: url(/images/icon-arrow-back-black.svg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 20px;
    border: 0;
    border-radius: 100%;
    cursor: pointer;
    font-size: 0;
    height: var(--size);
    position: absolute;
    top: calc(var(--line-offset) - var(--size)/2);
    transition: background-color .15s ease-in-out;
    width: var(--size);
    z-index: 5
}

.events-component button[data-for=carousel]:hover {
    background-color: var(--color-light-orange)
}

.events-component button[data-for=carousel].previous {
    left: calc(var(--buttons-offset)*-1)
}

.events-component button[data-for=carousel].next {
    right: calc(var(--buttons-offset)*-1);
    transform: rotate(180deg)
}

.events-component .carousel {
    --size: 500px;
    --items-per-slide: 3;
    height: calc(var(--height, 480px) + 60px);
    overflow: hidden;
    position: relative
}

@media screen and (max-width: 1200px) {
    .events-component .carousel {
        transform:translateX(calc(var(--width-side-min)*-2));
        width: calc(100vw - var(--width-side-min)*2)
    }
}

.events-component .carousel li.slide,.events-component .carousel ol {
    list-style: none;
    margin: 0;
    padding: 0
}

.events-component .carousel>ol {
    bottom: 0;
    display: flex;
    left: 0;
    overflow-x: scroll;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    position: absolute;
    right: 0;
    scroll-behavior: smooth;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    top: 0
}

.events-component .carousel>ol::-webkit-scrollbar {
    display: none
}

.events-component .carousel>ol>li.slide {
    background-repeat: no-repeat;
    background-size: cover;
    flex: 0 0 calc(100%/var(--items-per-slide));
    position: relative;
    scroll-snap-align: start;
    width: calc(100%/var(--items-per-slide))
}

.events-component .carousel>ol>li.slide section {
    padding: 0 10px
}

.events-component .carousel>ol>li.slide section h2 {
    --offset: 50px;
    --circle-size: 24px;
    font-size: 2.375rem;
    font-weight: var(--font-weight-regular);
    line-height: 2.875rem;
    position: relative;
    text-align: center
}

.events-component .carousel>ol>li.slide section h2:after {
    background-color: var(--color-orange);
    border-radius: 100%;
    content: "";
    display: block;
    height: var(--circle-size);
    left: calc(50% - var(--circle-size)/2);
    position: absolute;
    top: var(--offset);
    width: var(--circle-size)
}

.events-component .carousel>ol>li.slide section ol {
    list-style-type: disc;
    padding-left: 15px;
    padding-top: 30px
}

.events-component .carousel>ol>li.slide section ol li {
    font: var(--font-size-18);
    font-weight: var(--font-weight-regular)
}

.file-archive-component {
    --height: 480px;
    --transition-duration: 250ms;
    --total-overlay-height: 360px;
    padding: 0 var(--width-side-min);
    padding-bottom: 80px;
    padding-top: 90px;
    position: relative
}

.file-archive-component>* {
    margin: auto;
    max-width: var(--width-max)
}

.file-archive-component>h1+section div {
    max-width: 680px
}

.file-archive-component .wrapper {
    position: relative
}

@media only screen and (max-width: 1600px) {
    .file-archive-component .wrapper {
        margin:0 clamp(50px,100px,5vw)
    }
}

@media only screen and (max-width: 598px) {
    .file-archive-component .wrapper {
        margin:0 auto
    }

    .file-archive-component .wrapper button[data-for=carousel] {
        display: none
    }
}

.file-archive-component .wrapper {
    --line-offset: 93px
}

.file-archive-component button[data-for=carousel] {
    --size: 48px;
    --buttons-offset: 170px
}

@media only screen and (max-width: 1700px) {
    .file-archive-component button[data-for=carousel] {
        --buttons-offset:70px
    }
}

.file-archive-component button[data-for=carousel] {
    background-color: var(--color-white-orange);
    background-image: url(/images/icon-arrow-back-black.svg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 20px;
    border: 0;
    border-radius: 100%;
    cursor: pointer;
    font-size: 0;
    height: var(--size);
    position: absolute;
    top: calc(var(--line-offset) - var(--size)/2);
    transition: background-color .15s ease-in-out;
    width: var(--size)
}

.file-archive-component button[data-for=carousel]:hover {
    background-color: var(--color-light-orange)
}

.file-archive-component button[data-for=carousel].previous {
    left: calc(var(--buttons-offset)*-1)
}

.file-archive-component button[data-for=carousel].next {
    right: calc(var(--buttons-offset)*-1);
    transform: rotate(180deg)
}

.file-archive-component .carousel {
    --size: 500px;
    --items-per-slide: 3;
    display: flex;
    height: var(--height,480px);
    justify-content: space-between;
    max-height: max(var(--max-height),calc(256px + var(--total-overlay-height)));
    min-height: var(--total-overlay-height);
    overflow: hidden;
    position: relative;
    transition: max-height var(--transition-duration) ease-in-out
}

.file-archive-component .carousel li.slide,.file-archive-component .carousel ol {
    list-style: none;
    margin: 0;
    padding: 0
}

.file-archive-component .carousel>ol {
    bottom: 0;
    display: flex;
    left: 0;
    overflow-x: scroll;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    position: absolute;
    right: 0;
    scroll-behavior: smooth;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    top: 0
}

.file-archive-component .carousel>ol::-webkit-scrollbar {
    display: none
}

.file-archive-component .carousel>ol>li.slide {
    background-repeat: no-repeat;
    background-size: cover;
    flex: 0 0 calc(100%/var(--items-per-slide));
    flex-grow: 1;
    position: relative;
    scroll-snap-align: start;
    width: calc(100%/var(--items-per-slide))
}

.file-archive-component .carousel>ol>li.slide .group {
    width: 100%
}

.file-archive-component .carousel>ol>li.slide .group h2 {
    font: var(--font-size-18);
    font-weight: var(--font-weight-bold)
}

.file-archive-component .carousel>ol>li.slide .group ol {
    font: var(--font-size-18);
    font-weight: var(--font-weight-regular);
    list-style-position: inside;
    margin: 0;
    padding: 0
}

.file-archive-component .carousel>ol>li.slide .group ol li {
    --border-thickness: 1px;
    --icon-url: url();
    border-top: var(--border-thickness) solid rgba(255,103,48,.2);
    padding-left: 20px;
    position: relative
}

.file-archive-component .carousel>ol>li.slide .group ol li.empty {
    font-size: 0;
    height: calc(64px - var(--border-thickness));
    list-style-image: none
}

.file-archive-component .carousel>ol>li.slide .group ol li[data-type=article],.file-archive-component .carousel>ol>li.slide .group ol li[data-type=file] {
    --icon-url: url(/images/icon-pdf.svg)
}

.file-archive-component .carousel>ol>li.slide .group ol li[data-type=audio],.file-archive-component .carousel>ol>li.slide .group ol li[data-type=video] {
    --icon-url: url(/images/icon-video.svg)
}

.file-archive-component .carousel>ol>li.slide .group ol li:before {
    background-image: var(--icon-url);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 20px;
    left: 0;
    position: absolute;
    top: 22px;
    width: 15px
}

.file-archive-component .carousel>ol>li.slide .group ol a {
    color: inherit;
    display: block;
    overflow: hidden;
    padding: 18px 0;
    text-decoration: inherit;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 80%
}

.file-archive-component .carousel>ol>li.slide .group ol a:hover {
    text-decoration: underline
}

.file-archive-component .carousel>ol>li.slide:focus {
    outline: none
}

.file-archive-component>.wrapper>.overlay {
    --transition-height: 224px;
    height: 360px;
    inset: calc(100% - 360px) 0;
    pointer-events: none;
    position: absolute;
    width: 100%;
    z-index: 1
}

.file-archive-component>.wrapper>.overlay:before {
    background: linear-gradient(to bottom,transparent,var(--background-color));
    content: "";
    height: var(--transition-height);
    inset: 0;
    position: absolute;
    width: 100%
}

.file-archive-component>.wrapper>.overlay:after {
    background: var(--background-color);
    content: "";
    height: calc(var(--total-overlay-height) - var(--transition-height));
    inset: var(--transition-height) 0;
    pointer-events: all;
    position: absolute;
    width: 100%
}

.file-archive-component>.wrapper>.overlay button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    color: var(--color-orange);
    cursor: pointer;
    font: var(--font-size-16);
    inset: calc(var(--transition-height) + 24px) 50%;
    line-height: 1;
    outline: none;
    pointer-events: all;
    position: absolute;
    text-decoration: underline;
    transform: translate(-50%);
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    z-index: 1
}

.file-archive-component>.wrapper>.overlay button:focus-visible:focus-visible,.file-archive-component>.wrapper>.overlay button:hover:focus-visible {
    outline: solid 3px var(--color-blue);
    outline-offset: 3px
}

.c-file-archive-manual {
    padding: 0 var(--width-side-min);
    padding-bottom: 80px;
    padding-top: 90px
}

.c-file-archive-manual>* {
    margin: auto;
    max-width: var(--width-max)
}

.c-file-archive-manual>h1+section div {
    max-width: 680px
}

.c-file-archive-manual>section {
    margin-bottom: 32px
}

.c-file-archive-manual c-tabs [role=tablist] {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: clamp(8px,5vw,24px);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-file-archive-manual c-tabs [role=tab] {
    max-width: 50%;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-file-archive-manual c-tabs .panels {
    overflow-x: scroll
}

.c-file-archive-modular-finance {
    padding: 0 var(--width-side-min);
    padding-bottom: 80px;
    padding-top: 90px
}

.c-file-archive-modular-finance[data-loading=true] {
    cursor: wait;
    filter: blur(5px);
    opacity: .25
}

.c-file-archive-modular-finance[data-loading=true]>* {
    pointer-events: none
}

.c-file-archive-modular-finance>* {
    margin: auto;
    max-width: var(--width-max)
}

.c-file-archive-modular-finance>h1+section div {
    max-width: 680px
}

.c-file-archive-modular-finance>section {
    margin-bottom: 32px
}

.c-file-archive-modular-finance c-tabs [role=tablist] {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: clamp(8px,5vw,24px);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-file-archive-modular-finance c-tabs [role=tab] {
    max-width: 50%;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-file-archive-modular-finance c-tabs .panels {
    overflow-x: scroll
}

body>footer {
    background: var(--color-footer,#223988);
    padding-top: 64px
}

body>footer>div {
    grid-gap: 32px;
    display: grid;
    grid-template-columns: minmax(140px,3fr) 1fr 2.5fr;
    justify-content: space-between;
    margin: 0 auto;
    max-width: min(var(--width-max),calc(100vw - var(--width-side-min)*2));
    padding: 0 var(--width-side-min);
    width: 100%
}

@media screen and (max-width: 980px) {
    body>footer>div {
        grid-template-columns:1fr
    }
}

body>footer>div .addresses {
    display: grid;
    gap: 32px 16px;
    grid-auto-flow: column;
    grid-template-columns: repeat(auto-fit,minmax(auto,230px));
    grid-template-rows: repeat(3,auto)
}

@media screen and (max-width: 980px) {
    body>footer>div .addresses {
        grid-auto-flow:row;
        grid-row: 3;
        grid-template-columns: 100%
    }

    body>footer>div .addresses address.full-row {
        grid-row: unset
    }
}

body>footer>div address {
    color: var(--color-white);
    font: var(--font-size-16);
    font-style: normal;
    font-weight: var(--font-weight-light);
    max-width: min(240px,100%)
}

body>footer>div address.full-row {
    grid-row: 1/4
}

body>footer>div address h1 {
    font: inherit;
    font-weight: var(--font-weight-extrabold);
    margin-top: 0
}

body>footer>div address h2 {
    font: inherit;
    font-weight: var(--font-weight-extrabold);
    margin: 0
}

body>footer>div address .business-registration span {
    display: block
}

body>footer>div address .qr-code {
    height: 150px;
    width: 150px
}

body>footer>div ol {
    -moz-column-count: 1;
    column-count: 1;
    list-style-type: none;
    margin: 31px 0 0;
    padding: 0
}

@media screen and (max-width: 980px) {
    body>footer>div ol {
        margin-top:0;
        max-width: 375px
    }
}

body>footer>div ol li {
    display: flex;
    margin-bottom: 17px
}

body>footer>div ol a {
    color: var(--color-white);
    font: var(--font-size-16);
    font-weight: var(--font-weight-semibold);
    text-decoration: none
}

body>footer>div ol a:hover {
    text-decoration: underline
}

body>footer .attribution {
    align-items: center;
    background-color: #17285e;
    color: var(--color-white);
    display: grid;
    height: 40px;
    margin-top: 32px;
    padding: 0 var(--width-side-min)
}

@media screen and (max-width: 780px) {
    body>footer .attribution {
        padding:20px var(--width-side-min) 17px var(--width-side-min)
    }
}

body>footer .attribution a {
    color: inherit
}

body>footer .attribution div {
    display: flex;
    font-size: .75rem;
    font-weight: var(--font-weight-regular);
    gap: 10px;
    grid-column: 1/-1;
    justify-content: space-between;
    line-height: .9375rem;
    margin: 0 auto;
    max-width: var(--width-max);
    opacity: .75;
    width: 100%
}

@media screen and (max-width: 780px) {
    body>footer .attribution div {
        flex-direction:column
    }
}

body>footer .form {
    max-width: calc(min(var(--width-max), 100vw) - var(--width-side-min)*2)
}

body>footer .form h2 {
    color: var(--color-white);
    font: var(--font-size-16);
    font-weight: var(--font-weight-bold);
    margin-bottom: 22px;
    margin-top: 0
}

body>footer .form h3 {
    margin: 0
}

body>footer form {
    display: grid;
    gap: 22px 16px;
    grid-template-areas: "a b" "c b";
    grid-template-columns: 2fr 1fr
}

@media screen and (max-width: 570px) {
    body>footer form {
        grid-template-areas:"a" "c" "b";
        grid-template-columns: 1fr
    }
}

body>footer form button,body>footer form fieldset,body>footer form input {
    background-color: transparent;
    border: 0;
    margin: 0;
    outline: 0;
    padding: 0
}

body>footer form button:focus-visible,body>footer form fieldset:focus-visible,body>footer form input:focus-visible {
    outline: 3px dotted #133a88
}

body>footer form button[type=submit],body>footer form input[type=email],body>footer form input[type=submit],body>footer form input[type=text] {
    font: var(--font-size-16);
    font-weight: var(--font-weight-regular);
    height: 48px;
    padding: 0 28px
}

body>footer form input[type=email],body>footer form input[type=text] {
    background-color: #e7ebf3
}

body>footer form input[type=email]::-moz-placeholder, body>footer form input[type=text]::-moz-placeholder {
    color: #303030;
    opacity: 1
}

body>footer form input[type=email]:-ms-input-placeholder, body>footer form input[type=text]:-ms-input-placeholder {
    color: #303030;
    opacity: 1
}

body>footer form input[type=email]::placeholder,body>footer form input[type=text]::placeholder {
    color: #303030;
    opacity: 1
}

body>footer form input[type=email]:focus-visible,body>footer form input[type=text]:focus-visible {
    outline-style: solid
}

body>footer form button[type=submit],body>footer form input[type=submit] {
    background-color: #133a88;
    color: #fff;
    cursor: pointer;
    min-width: 129.33333px;
    width: 100%
}

body>footer form button[type=submit]:hover,body>footer form input[type=submit]:hover {
    background-color: #0d2a63
}

body>footer form input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 2px solid #e7ebf3;
    cursor: pointer;
    height: 20px;
    position: relative;
    transition: background-color .15s ease-in-out,border .15s ease-in-out;
    width: 20px
}

body>footer form input[type=checkbox]:hover {
    border: 2px solid #133a88
}

body>footer form input[type=checkbox]:checked {
    background-color: #133a88;
    border: 2px solid #133a88
}

body>footer form input[type=checkbox]:checked:after {
    background-color: #fff;
    content: "";
    height: 100%;
    inset: 0;
    -webkit-mask-image: url(/images/checkmark.svg);
    mask-image: url(/images/checkmark.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 75%;
    mask-size: 75%;
    position: absolute;
    width: 100%
}

body>footer form label {
    color: #303030;
    cursor: pointer;
    font-size: .875rem;
    font-weight: var(--font-weight-regular);
    line-height: .875rem;
    white-space: nowrap
}

body>footer form input#email {
    grid-area: a
}

body>footer form fieldset.information-types {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-area: c;
    grid-column: 1/-1;
    grid-template-columns: repeat(2,-webkit-min-content auto);
    grid-template-columns: repeat(2,min-content auto)
}

@media screen and (max-width: 375px) {
    body>footer form fieldset.information-types {
        grid-template-columns:repeat(1,20px auto)
    }
}

body>footer form fieldset.information-types .g-recaptcha {
    display: flex;
    grid-column: 1/-1;
    justify-content: flex-end
}

body>footer form fieldset.submit {
    grid-area: b
}

body>footer b {
    color: var(--color-blue)
}

body>footer .socials h2 {
    color: var(--color-white);
    font: var(--font-size-16);
    font-weight: var(--font-weight-bold);
    margin-bottom: .25rem
}

body>footer .socials .links {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem
}

body>footer .socials :-webkit-any-link {
    background-color: var(--color-white);
    display: block;
    height: 1.5rem;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-transition: opacity .2s ease;
    transition: opacity .2s ease;
    width: 1.5rem
}

body>footer .socials :-moz-any-link {
    background-color: var(--color-white);
    display: block;
    height: 1.5rem;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
    -moz-transition: opacity .2s ease;
    transition: opacity .2s ease;
    width: 1.5rem
}

body>footer .socials :any-link {
    background-color: var(--color-white);
    display: block;
    height: 1.5rem;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    transition: opacity .2s ease;
    width: 1.5rem
}

body>footer .socials :-webkit-any-link.linkedin {
    -webkit-mask-image: url(/images/icons/brands/linkedin.svg);
    mask-image: url(/images/icons/brands/linkedin.svg)
}

body>footer .socials :-moz-any-link.linkedin {
    mask-image: url(/images/icons/brands/linkedin.svg)
}

body>footer .socials :any-link.linkedin {
    -webkit-mask-image: url(/images/icons/brands/linkedin.svg);
    mask-image: url(/images/icons/brands/linkedin.svg)
}

body>footer .socials :-webkit-any-link.facebook {
    -webkit-mask-image: url(/images/icons/brands/facebook.svg);
    mask-image: url(/images/icons/brands/facebook.svg)
}

body>footer .socials :-moz-any-link.facebook {
    mask-image: url(/images/icons/brands/facebook.svg)
}

body>footer .socials :any-link.facebook {
    -webkit-mask-image: url(/images/icons/brands/facebook.svg);
    mask-image: url(/images/icons/brands/facebook.svg)
}

body>footer .socials :-webkit-any-link.instagram {
    -webkit-mask-image: url(/images/icons/brands/instagram.svg);
    mask-image: url(/images/icons/brands/instagram.svg)
}

body>footer .socials :-moz-any-link.instagram {
    mask-image: url(/images/icons/brands/instagram.svg)
}

body>footer .socials :any-link.instagram {
    -webkit-mask-image: url(/images/icons/brands/instagram.svg);
    mask-image: url(/images/icons/brands/instagram.svg)
}

body>footer .socials :-webkit-any-link:focus-visible, body>footer .socials :-webkit-any-link:hover {
    opacity: .5
}

body>footer .socials :-moz-any-link:focus-visible, body>footer .socials :-moz-any-link:hover {
    opacity: .5
}

body>footer .socials :any-link:focus-visible,body>footer .socials :any-link:hover {
    opacity: .5
}

.c-404-not-found {
    margin: 0 auto;
    max-width: 712px;
    padding: 100px 32px
}

@media screen and (max-width: 1250px) {
    .c-404-not-found {
        padding:0 32px
    }
}

.gallery-page-component {
    --image-scale: 1
}

.gallery-page-component[data-object-fit=contain] {
    -o-object-fit: contain;
    object-fit: contain
}

.gallery-page-component.contain-all-images img {
    -o-object-fit: contain!important;
    object-fit: contain!important
}

.gallery-page-component.logo-gallery img {
    --image-scale: 0.66
}

.gallery-page-component {
    width: 100vw
}

.gallery-page-component h1,.gallery-page-component h1+section {
    margin: auto;
    max-width: var(--width-max);
    padding: 0 var(--width-side-min);
    padding-top: 60px
}

.gallery-page-component .gallery {
    --width: 408px;
    --height: 306px;
    grid-gap: clamp(16px,3vw,48px);
    display: grid;
    grid-template-columns: repeat(auto-fit,var(--width));
    justify-content: start;
    margin: auto;
    max-width: var(--width-max);
    padding: 0 var(--width-side-min)
}

.gallery-page-component .gallery .image {
    align-items: center;
    display: flex;
    height: var(--height);
    justify-content: center;
    margin: 0;
    max-width: calc(100vw - var(--width-side-min)*2);
    padding: 0;
    position: relative;
    width: var(--width)
}

.gallery-page-component .gallery .image figcaption {
    align-items: flex-end;
    bottom: 0;
    display: flex;
    flex-direction: column;
    position: absolute;
    right: 0;
    width: 100%
}

.gallery-page-component .gallery .image figcaption span {
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    background-color: rgba(218,224,235,.75);
    color: var(--color-blue);
    max-width: 75%;
    padding: .3em .5em;
    text-align: right;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.gallery-page-component .gallery .image figcaption span:last-of-type:not(:first-of-type) {
    padding-top: 0
}

.gallery-page-component .gallery .image img {
    height: calc(var(--height)*var(--image-scale));
    max-width: calc(100vw - var(--width-side-min)*2);
    -o-object-fit: cover;
    object-fit: cover;
    width: calc(var(--width)*var(--image-scale))
}

.gallery-page-component .gallery .image img[data-object-fit=contain] {
    -o-object-fit: contain;
    object-fit: contain
}

.gallery-page-component .gallery .image .fake-img {
    box-sizing: border-box;
    height: 100%;
    padding: 15%;
    width: 100%
}

.gallery-page-component .gallery .image .fake-img>div {
    background-color: var(--color-blue);
    height: 100%;
    -webkit-mask-image: var(--image-url);
    mask-image: var(--image-url);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    width: 100%
}

.gallery-page-component .gallery .item {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.gallery-page-component .gallery .item a[download] {
    align-items: center;
    display: flex;
    font: var(--font-size-16);
    gap: .5em;
    justify-content: flex-end;
    padding: .75em 0;
    text-decoration: none;
    width: 100%
}

.gallery-page-component .gallery .item a[download]:hover {
    text-decoration: underline
}

.gallery-page-component .gallery .item a[download] .mask-icon.download {
    --icon-width: 1.25em;
    background-color: var(--color-orange);
    font-size: inherit
}

.gallery-page-component .carousel {
    --size: min(75%,976px,60vmin);
    --side-icons: url(/images/icon-arrow-back.svg);
    --nav-size: 32px;
    overflow: hidden;
    padding-top: var(--size);
    position: relative
}

.gallery-page-component .carousel li.slide,.gallery-page-component .carousel ol {
    list-style: none;
    margin: 0;
    padding: 0
}

.gallery-page-component .carousel>ol {
    bottom: 0;
    display: flex;
    left: 0;
    overflow-x: scroll;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    position: absolute;
    right: 0;
    scroll-behavior: smooth;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    top: 0
}

.gallery-page-component .carousel>ol::-webkit-scrollbar {
    display: none
}

.gallery-page-component .carousel>ol>li.slide {
    background: rgba(0,0,0,.8);
    background-repeat: no-repeat;
    background-size: cover;
    flex: 0 0 100%;
    position: relative;
    width: 100%
}

.gallery-page-component .carousel>ol>li.slide>figure {
    height: 100%;
    margin: 0;
    width: 100%
}

.gallery-page-component .carousel>ol>li.slide>figure,.gallery-page-component .carousel>ol>li.slide>figure picture {
    align-items: center;
    display: flex;
    justify-content: center
}

.gallery-page-component .carousel>ol>li.slide>figure img {
    height: calc(100%*var(--image-scale));
    -o-object-fit: cover;
    object-fit: cover;
    width: calc(100%*var(--image-scale))
}

.gallery-page-component .carousel>ol>li.slide>figure .fake-img {
    align-items: center;
    box-sizing: border-box;
    display: flex;
    height: calc(100%*var(--image-scale));
    justify-content: center;
    padding: 15%;
    width: calc(100%*var(--image-scale))
}

.gallery-page-component .carousel>ol>li.slide>figure .fake-img>div {
    background-color: var(--color-blue);
    height: 100%;
    margin: auto;
    -webkit-mask-image: var(--image-url);
    mask-image: var(--image-url);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    max-height: 320px;
    max-width: 320px;
    width: 100%
}

.gallery-page-component .carousel>ol>li.slide>figure>figcaption.simple {
    background-color: #9db2da8c;
    color: var(--color-blue);
    font-size: 5vmin;
    left: 5vmin;
    padding: .3em .5em;
    position: absolute;
    top: 5vmin
}

.gallery-page-component .carousel>ol>li.slide>figure>figcaption.counter {
    color: var(--color-white);
    font-size: clamp(.875rem,2vw,1.25rem);
    left: 2.5vmin;
    position: absolute;
    text-align: left;
    text-shadow: 0 0 4px rgba(3,7,18,.33),0 0 6px rgba(3,7,18,.17);
    top: 2.5vmin
}

.gallery-page-component .carousel>ol>li.slide>figure>figcaption.counter label {
    font-size: clamp(1.125rem,3vw,1.5rem)
}

.gallery-page-component .carousel>ol>li.slide>figure>figcaption.counter :not(:first-child) {
    padding-top: 5px
}

.gallery-page-component .carousel>ol>li.slide a[download] {
    align-items: center;
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    background-color: hsla(0,0%,100%,.95);
    display: flex;
    font: var(--font-size-16);
    gap: .5em;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    inset: calc(100% - 1em) calc(100% - 1em);
    justify-content: flex-end;
    padding: .75em 1.25em;
    position: absolute;
    text-decoration: none;
    transform: translate(-100%,-100%);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.gallery-page-component .carousel>ol>li.slide a[download]:hover {
    text-decoration: underline
}

.gallery-page-component .carousel>ol>li.slide a[download] .mask-icon.download {
    --icon-width: 1.25em;
    background-color: var(--color-orange);
    font-size: inherit
}

.gallery-page-component .carousel>ol>li.slide>nav {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    scroll-snap-align: center;
    scroll-snap-stop:always;top: 0;
    width: 100%
}

.gallery-page-component .carousel>aside {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    text-align: center
}

.gallery-page-component .carousel>aside ol {
    padding-bottom: min(3vmin,45px)
}

.gallery-page-component .carousel>aside li,.gallery-page-component .carousel>aside ol {
    display: inline-block
}

.gallery-page-component .carousel>aside li>a {
    background-clip: content-box;
    background-color: transparent;
    border: 1px solid var(--color-white);
    border-radius: 50%;
    display: inline-block;
    font-size: 0;
    height: 8px;
    margin: 7.5px;
    transition: background-color .3s ease-in-out;
    width: 8px
}

.gallery-page-component .carousel>aside li.active>a {
    background-color: var(--color-white)
}

.gallery-page-component .carousel:after,.gallery-page-component .carousel:before,.gallery-page-component .carousel a.next,.gallery-page-component .carousel a.prev {
    font-size: 0;
    height: var(--nav-size);
    margin-top: calc(var(--size)/2);
    pointer-events: all;
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    width: var(--nav-size)
}

.gallery-page-component .carousel:before,.gallery-page-component .carousel a.prev {
    left: 0
}

.gallery-page-component .carousel:after,.gallery-page-component .carousel a.next {
    right: 0
}

.gallery-page-component .carousel:after {
    transform: rotate(180deg) translateY(50%)
}

.gallery-page-component .carousel:not([data-multiple=false]):after,.gallery-page-component .carousel:not([data-multiple=false]):before {
    background-color: var(--color-light-orange);
    background-image: var(--side-icons);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    pointer-events: none;
    z-index: 1
}

.gallery-page-component .carousel-wrapper {
    --padding-sides: 0;
    background-color: rgba(0,0,0,.9);
    cursor: pointer;
    display: unset;
    height: max(100%,100vh);
    left: 0;
    opacity: 1;
    padding: max(104px,min(16vmin,125px)) var(--padding-sides);
    position: fixed;
    top: 0;
    transition: opacity .2s ease-in-out;
    width: 100vw;
    z-index: 1000
}

.gallery-page-component .carousel-wrapper .carousel {
    --size: min(85%,80vmin);
    cursor: auto;
    z-index: 10
}

.gallery-page-component .carousel-wrapper .carousel:after,.gallery-page-component .carousel-wrapper .carousel:before {
    background-color: transparent;
    background-image: none
}

.gallery-page-component .carousel-wrapper .carousel>ol>li.slide>figure img {
    -o-object-fit: contain;
    object-fit: contain
}

.gallery-page-component .carousel-wrapper .carousel>aside {
    display: none
}

.gallery-page-component .carousel-wrapper.hidden {
    opacity: 0;
    pointer-events: none
}

.gallery-page-component .carousel-wrapper.hidden .carousel:after,.gallery-page-component .carousel-wrapper.hidden .carousel:before,.gallery-page-component .carousel-wrapper.hidden .carousel a.next,.gallery-page-component .carousel-wrapper.hidden .carousel a.prev {
    pointer-events: none
}

@media screen and (min-width: 1000px) {
    .gallery-page-component .carousel-wrapper {
        --padding-sides:9vw;
        max-width: calc(100vw - var(--padding-sides)*2)
    }

    .gallery-page-component .carousel-wrapper .images {
        grid-template-columns: repeat(2,1fr)
    }

    .gallery-page-component .carousel-wrapper .images img {
        height: calc(100%*var(--image-scale))
    }

    .gallery-page-component .carousel-wrapper .carousel:after,.gallery-page-component .carousel-wrapper .carousel:before {
        background-color: var(--color-light-orange);
        background-image: var(--side-icons)
    }

    .gallery-page-component .carousel-wrapper .carousel figcaption.counter {
        bottom: 2.5vmin;
        right: 2.5vmin;
        text-align: right!important;
        top: unset
    }

    .gallery-page-component .carousel-wrapper .carousel>ol>li.slide>figure>img {
        -o-object-fit: contain!important;
        object-fit: contain!important
    }
}

.gallery-preview-component {
    grid-gap: 30px;
    background: var(--color-white);
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: var(--height);
    height: unset;
    padding: 60px 40px 43px 62px;
    transform: translateY(-50%);
    width: auto
}

@media screen and (max-width: 1200px) {
    .gallery-preview-component {
        --padding:clamp(5px,16px,4vw);
        padding: var(--padding) var(--padding) 48px var(--padding);
        transform: translateY(-15%)
    }
}

@media screen and (max-width: 800px) {
    .gallery-preview-component {
        grid-template-columns:1fr;
        grid-template-rows: 1fr auto
    }

    .gallery-preview-component>section.gallery {
        aspect-ratio: 8/4.5;
        grid-row: 1
    }

    .gallery-preview-component>section.gallery section.carousel {
        --size: 45vw
    }
}

.gallery-preview-component>section {
    display: flex;
    flex-direction: column
}

.gallery-preview-component>section span {
    color: var(--color-blue);
    text-transform: uppercase
}

@media screen and (max-width: 1200px) {
    .gallery-preview-component>section span {
        font-size:1rem;
        line-height: 1.25rem
    }
}

.gallery-preview-component>section h2 {
    font: var(--font-size-40);
    margin: 22px 0 0
}

@media screen and (max-width: 1200px) {
    .gallery-preview-component>section h2 {
        margin-bottom:29px
    }
}

.gallery-preview-component>section a {
    margin-top: auto
}

@media screen and (max-width: 1200px) {
    .gallery-preview-component>section a {
        font-size:1rem;
        line-height: 1.25rem
    }
}

.c-graph-element {
    padding: 0 var(--width-side-min);
    padding-bottom: 80px;
    padding-top: 90px
}

.graph-element {
    margin: 0;
    padding: 0
}

.graph-element>* {
    margin: auto;
    max-width: var(--width-max)
}

.graph-element h1 {
    font: var(--font-size-40);
    font-weight: var(--font-weight-bold);
    margin: 0 0 16px
}

.graph-element .subtitle {
    display: block;
    font: var(--font-size-18);
    font-family: var(--font-family);
    font-weight: var(--font-weight-regular);
    margin-bottom: 32px
}

.graph-element .canvas-container {
    height: clamp(500px,50vw,715px)
}

.group-of-people-component {
    --width: clamp(224px,372px,24vw);
    padding: 0 var(--width-side-min);
    padding-bottom: clamp(60px,80px,10vw);
    padding-top: clamp(60px,90px,10vw)
}

.group-of-people-component h1 {
    color: var(--color-blue);
    font: var(--font-size-32);
    margin: 0 auto 52px;
    max-width: var(--width-max);
    width: 100%
}

.group-of-people-component h1.small {
    color: var(--color-black);
    font: var(--font-size-22)
}

.group-of-people-component div {
    grid-gap: clamp(24px,72px,4vw) clamp(24px,120px,8vw);
    display: grid;
    grid-template-columns: repeat(auto-fit,var(--width));
    margin: 0 auto;
    max-width: var(--width-max);
    width: 100%
}

@media screen and (max-width: 650px) {
    .group-of-people-component div {
        width:calc(100vw - var(--width-side-min)*2)
    }
}

.group-of-people-component .person {
    align-content: baseline;
    display: grid;
    width: 100%
}

@media screen and (max-width: 650px) {
    .group-of-people-component .person {
        grid-gap:0 16px;
        grid-template-areas: "d e" "d f" "d g";
        justify-content: start;
        width: calc(100vw - var(--width-side-min)*2)
    }
}

.group-of-people-component .person img {
    background-color: #303030;
    grid-row-start: -1;
    height: auto;
    min-height: var(--width);
    width: 100%
}

@media screen and (max-width: 650px) {
    .group-of-people-component .person img {
        grid-area:d;
        height: 96px;
        min-height: unset;
        width: 96px
    }
}

.group-of-people-component .person h2 {
    font: var(--font-size-22);
    font-weight: var(--font-weight-bold);
    margin-bottom: 0;
    max-width: 300px
}

@media screen and (max-width: 650px) {
    .group-of-people-component .person h2 {
        grid-area:e;
        margin: 0
    }
}

.group-of-people-component .person .link,.group-of-people-component .person p.summary,.group-of-people-component .person p.title {
    font: var(--font-size-18);
    font-weight: var(--font-weight-regular);
    margin-top: 0;
    max-width: 300px
}

@media screen and (max-width: 650px) {
    .group-of-people-component .person p.title {
        grid-area:f;
        margin: 0
    }

    .group-of-people-component .person p.summary {
        font-size: 0;
        grid-area: g
    }
}

.group-of-people-component .person .link {
    cursor: pointer
}

.group-of-people-component .person .link span:hover {
    text-decoration: underline
}

body>header {
    --header-color: var(--color-header,#fff);
    --header-active-color: #fff7f4;
    --hamburger-font-size: var(--font-size-18);
    --max-height: 136px;
    --min-height: 125px;
    --max-width: var(--width-max,1200px);
    --margin-sides: var(--width-side-min);
    --width: calc(100vw - var(--margin-sides)*2);
    align-items: center;
    background-color: var(--header-color);
    display: flex;
    width: var(--width)
}

body>header div.wrapper>a {
    margin-bottom: 10px
}

body>header div.wrapper>a img {
    height: 90px;
    width: 136.06px
}

body>header div.wrapper {
    display: flex;
    height: 100%;
    justify-content: space-between;
    width: 100%
}

body>header div.wrapper nav {
    z-index: 1000
}

body>header div.wrapper nav ul.menu.main {
    color: var(--color-blue);
    display: flex;
    font-size: var(--hamburger-font-size);
    font-weight: var(--font-weight-bold);
    list-style-type: none;
    width: var(--width)
}

body>header div.wrapper nav ul.menu.main,body>header div.wrapper nav ul.menu.main * {
    transition: all .2s ease-in-out
}

body>header div.wrapper nav ul.menu.main li {
    margin: 0 auto
}

body>header div.wrapper nav ul.menu.main li div {
    display: flex;
    justify-content: space-between;
    width: 100%
}

body>header div.wrapper nav ul.menu.main li div a {
    color: inherit;
    font-weight: var(--font-weight-medium);
    text-decoration: none;
    width: 100%
}

body>header div.wrapper nav ul.menu.main li ul {
    list-style-type: none
}

body>header div.wrapper nav ul.menu.main .lvl3 {
    background-color: #fff;
    margin: 0;
    max-width: 200px;
    padding: 0 5px;
    position: absolute;
    top: 100px
}

body>header div.wrapper nav ul.menu.main .lvl3 li {
    display: block;
    height: auto;
    margin: 0;
    text-align: left
}

body>header div.wrapper nav ul.menu.main .lvl3 li a {
    font-size: .625rem;
    margin: 0;
    padding: 0
}

@media screen and (max-width: 1250px),screen and (pointer:coarse) {
    body>header {
        justify-content:space-between;
        padding: 24px var(--margin-sides) 32px var(--margin-sides)
    }

    body>header.active {
        background-color: var(--header-active-color)
    }

    body>header div.wrapper nav {
        display: flex
    }

    body>header div.wrapper nav a,body>header div.wrapper nav span.icon.search {
        display: none
    }

    body>header div.wrapper nav button {
        background: none;
        border: 0;
        cursor: pointer;
        padding: 0
    }

    body>header div.wrapper nav ul.menu.main {
        background-color: var(--header-active-color);
        flex-direction: column;
        left: 0;
        margin-top: 45px;
        min-height: 100vh;
        opacity: 0;
        padding-bottom: 24px;
        padding-left: 24px;
        padding-right: 24px;
        position: absolute;
        top: max(calc(var(--min-height) - 25px),min(calc(var(--max-height) - 48px),calc(var(--max-height) + 10px)));
        transform: scaleY(0);
        transform-origin: top;
        width: calc(100vw - 48px);
        z-index: 1000
    }

    body>header div.wrapper nav ul.menu.main li {
        border-bottom: 1px solid var(--color-transparent-orange);
        color: var(--color-black);
        display: none;
        font: var(--font-size-20);
        opacity: 0;
        text-align: left;
        width: 100%
    }

    body>header div.wrapper nav ul.menu.main li div {
        align-items: center
    }

    body>header div.wrapper nav ul.menu.main li div a {
        padding: 16px 24px
    }

    body>header div.wrapper nav ul.menu.main li ul {
        padding-left: 20px
    }

    body>header div.wrapper nav ul.menu.main li ul.lvl3 {
        background-color: var(--darkreader-bg--color-transparent-orange);
        display: flex;
        flex-direction: column;
        gap: 10px;
        height: 0;
        max-width: unset;
        padding-left: 45px;
        position: inherit
    }

    body>header div.wrapper nav ul.menu.main li ul.lvl3 li {
        background-color: transparent;
        height: 0;
        opacity: 0;
        padding: 0;
        transition: all .25s ease-in-out
    }

    body>header div.wrapper nav ul.menu.main li ul.lvl3 li a {
        font-size: var(--hamburger-font-size)
    }

    body>header div.wrapper nav ul.menu.main li.active ul.lvl3 {
        height: 100%
    }

    body>header div.wrapper nav ul.menu.main li.active>ul.lvl3 li {
        height: 30px;
        opacity: 100%;
        padding: 10px 0
    }

    body>header div.wrapper nav ul.menu.main li:not(body>header div.wrapper nav ul.menu.main li.active)>ul.lvl3 li {
        border: 0
    }

    body>header div.wrapper nav ul.menu.main.active {
        opacity: 100%;
        transform: scaleY(1)
    }

    body>header div.wrapper nav ul.menu.main.active>li {
        display: unset;
        opacity: 100%;
        transform: scaleY(1)
    }

    body>header div.wrapper nav ul.menu.main.active>li div a {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        word-break: break-all
    }

    body>header div.wrapper nav ul.menu.main>li.current {
        background-color: #fff
    }

    body>header div.wrapper nav ul.menu.main>li.current>div>a[aria-current=page] {
        font-weight: 900
    }
}

@media screen and (min-width: 1251px) and (hover:hover) and (pointer:fine) {
    body>header {
        justify-content:space-evenly;
        margin: 30px auto 0;
        padding: 0 var(--margin-sides);
        padding-bottom: 0
    }

    body>header div.wrapper {
        max-width: var(--max-width)
    }

    body>header div.wrapper nav {
        align-items: center;
        display: flex;
        height: 100%
    }

    body>header div.wrapper nav a {
        color: var(--color-blue);
        font-size: 1.125rem;
        margin-right: 34px;
        text-decoration: none
    }

    body>header div.wrapper nav button {
        display: none
    }

    body>header div.wrapper nav ul.menu.main {
        align-items: end;
        flex-direction: row;
        height: 100%;
        margin: 0;
        padding: 0;
        width: 100%
    }

    body>header div.wrapper nav ul.menu.main>li.language {
        margin-left: 40px;
        position: relative
    }

    body>header div.wrapper nav ul.menu.main>li.language:before {
        background-color: #d8d8d8;
        content: "";
        height: 50px;
        left: -40px;
        pointer-events: none;
        position: absolute;
        top: 25%;
        width: 1px
    }

    body>header div.wrapper nav ul.menu.main>li:after {
        background: transparent;
        bottom: 0;
        content: "";
        height: 0;
        left: 0;
        margin: 0 auto;
        position: absolute;
        right: 0;
        transition: all .2s ease-in;
        width: 100%
    }

    body>header div.wrapper nav ul.menu.main>li {
        border-bottom: 0 solid var(--color-orange)
    }

    body>header div.wrapper nav ul.menu.main>li.active:after,body>header div.wrapper nav ul.menu.main>li:focus:after,body>header div.wrapper nav ul.menu.main>li:hover:after {
        background: var(--color-orange);
        height: 4px
    }

    body>header div.wrapper nav ul.menu.main li {
        align-items: center;
        display: flex;
        height: 100px;
        margin-right: 34px;
        position: relative;
        text-align: center;
        text-decoration-thickness: 0;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content
    }

    body>header div.wrapper nav ul.menu.main li div a {
        margin-right: 0;
        padding: var(--margin-sides) 0
    }

    body>header div.wrapper nav ul.menu.main li ul.lvl3 {
        background-color: var(--header-active-color);
        display: flex;
        flex-direction: column;
        gap: 28px;
        left: 0;
        max-width: min(26vw,500px);
        min-width: -webkit-max-content;
        min-width: -moz-max-content;
        min-width: max-content;
        opacity: 0;
        padding: 37px 32px;
        pointer-events: none;
        position: absolute;
        text-decoration: none;
        top: 100px;
        width: 100vw
    }

    body>header div.wrapper nav ul.menu.main li ul.lvl3 li {
        flex-direction: column;
        margin-left: 0;
        margin-right: 0;
        max-width: 100%;
        min-width: -webkit-max-content;
        min-width: -moz-max-content;
        min-width: max-content;
        text-align: left;
        width: 100%
    }

    body>header div.wrapper nav ul.menu.main li ul.lvl3 li a {
        font: var(--font-size-20);
        text-transform: none
    }

    body>header div.wrapper nav ul.menu.main li ul.lvl3 li:last-child {
        border-bottom: 1px solid transparent
    }

    body>header div.wrapper nav ul.menu.main li ul.lvl3 li>div:focus a,body>header div.wrapper nav ul.menu.main li ul.lvl3 li>div:hover a {
        font-weight: 1000
    }

    body>header div.wrapper nav ul.menu.main li:focus ul,body>header div.wrapper nav ul.menu.main li:hover ul {
        height: auto;
        opacity: 100%;
        pointer-events: unset
    }
}

button[type=button].hamburger-icon {
    --outer-size: 46px;
    --inner-size: 36px;
    align-self: center;
    font-size: 0;
    height: var(--outer-size);
    position: relative;
    width: var(--outer-size)
}

button[type=button].hamburger-icon .hamburger {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: var(--inner-size);
    color: #fff;
    display: inline-block;
    height: var(--outer-size);
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: opacity .2s ease-out;
    width: var(--outer-size)
}

button[type=button].hamburger-icon .passive {
    background-image: url(/images/icon-hamburger.svg)
}

button[type=button].hamburger-icon:not(.active) .passive {
    opacity: 100%
}

button[type=button].hamburger-icon .open {
    background-image: url(/images/icon-hamburger-open.svg)
}

button[type=button].hamburger-icon.active .open {
    opacity: 100%
}

button[type=button].triangle-icon {
    font-size: 0;
    height: 40px;
    margin-right: 10px;
    position: relative;
    width: 40px
}

button[type=button].triangle-icon .triangle {
    background-image: url(/images/icon-down-arrow.svg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 24px;
    color: #fff;
    display: inline-block;
    height: 40px;
    left: 0;
    position: absolute;
    top: 0;
    transform: rotate(-90deg);
    transition: opacity .2s ease-out;
    width: 40px
}

li.active>div>button[type=button].triangle-icon {
    transform: rotate(90deg);
    transform-origin: center
}

.hero-component {
    background: var(--background-color,var(--hero-text-color,var(--color-white)));
    display: grid
}

.hero-component>figure>img {
    -o-object-position: right;
    object-position: right
}

.hero-component>figure {
    --height: max(40vmax,375px);
    display: grid;
    grid-template: "h" 100%/1fr;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    margin: 0;
    min-height: var(--height);
    -o-object-fit: cover;
    object-fit: cover;
    overflow: hidden;
    padding: 0;
    position: relative;
    width: 100vw
}

.hero-component>figure>picture {
    --blur: 20px
}

.hero-component>figure>:first-child {
    grid-area: h;
    height: 100%;
    min-height: var(--height)
}

.hero-component>figure>:first-child img {
    height: var(--height);
    -o-object-fit: cover;
    object-fit: cover;
    transition: filter .25s ease;
    width: 100vw
}

.hero-component>figure .simple-parallax {
    --blur: 0;
    inset: 0;
    position: absolute
}

.hero-component>figure .simple-parallax>picture>img {
    position: absolute;
    right: 22vw;
    width: 57vw
}

.hero-component>figure .wrapper {
    align-items: center;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    grid-area: h;
    height: 100%;
    justify-content: center;
    padding: 20px var(--width-side-min);
    width: 100%;
    z-index: 1
}

.hero-component>figure .wrapper h1,.hero-component>figure .wrapper p {
    --width: 820px;
    --line-height: clamp(35px,9vw,88px);
    --font-size: clamp(28px,7vw,70px);
    color: var(--hero-text-color,var(--color-white));
    font-size: var(--font-size);
    line-height: var(--line-height);
    margin: 0;
    max-width: var(--width);
    padding: 0;
    position: relative;
    text-align: center;
    z-index: 1
}

.hero-component>figure .wrapper p {
    --font-size: 22px;
    --line-height: 33px;
    --width: 650px;
    margin-top: clamp(.25rem,3vmin,33px)
}

.hero-component>section {
    --gap: 50px clamp(10px,42px,2vw);
    --height: min(327px,25vw);
    grid-gap: var(--gap);
    display: grid;
    grid-template-columns: 1fr calc(2fr + var(--gap)*2);
    grid-template-columns: 1fr 2fr;
    height: 260px;
    margin: 0 auto -2%;
    max-width: var(--width-max);
    width: min(calc(100% - var(--width-side-min)*2),95vw)
}

@media screen and (max-width: 1200px) {
    .hero-component>section {
        grid-template-columns:1fr;
        height: unset
    }
}

.hero-component .nordic-pureatlantic-decoration {
    height: clamp(64px,10vmin,90px);
    margin-bottom: 48px
}

.hero-component .nordic-pureatlantic-decoration~p {
    margin-bottom: calc(clamp(64px, 10vmin, 90px) + 48px)!important
}

.hero-component .bottom-nordic-pureatlantic-decoration {
    height: clamp(64px,10vmin,81px);
    margin-top: 75px
}

.hero-component .wrapper:has(.bottom-nordic-pureatlantic-decoration) h1 {
    margin-top: calc(clamp(64px, 10vmin, 81px) + 75px)!important
}

.hero-component .fishnet-decoration {
    background-color: #fff;
    height: 175px;
    inset: calc(100% - 175px) 0;
    -webkit-mask-image: url(/images/fishnet-pattern.svg);
    mask-image: url(/images/fishnet-pattern.svg);
    -webkit-mask-repeat: repeat;
    mask-repeat: repeat;
    opacity: .5;
    position: absolute;
    width: 100%
}

[style="--background-color:#fff7f4"] .hero-component {
    --hero-text-color: var(--color-blue)
}

.image-block-component {
    margin: auto auto 104px;
    max-width: var(--width-max);
    padding: 0 var(--width-side-min)
}

@media screen and (max-width: 620px) {
    .image-block-component[data-hide-on-small-screens=true] {
        display:none
    }
}

.image-block-component img {
    width: 100%
}

.iframe-component {
    padding: 86px var(--width-side-min) 80px var(--width-side-min)
}

.iframe-component>h1+section p {
    margin-bottom: 46px;
    max-width: 678px
}

.iframe-component>* {
    margin: auto;
    max-width: var(--width-max);
    width: 100%
}

.iframe-component h1+.iframe,.iframe-component section+.iframe {
    margin-top: 44px
}

.iframe-component iframe[src="https://ir.oms.no/component/standardPage?token=NOAPAS&lang=en"] {
    min-height: 1740px
}

.iframe-component iframe[src="https://ir.oms.no/component/companyDisclosures?token=NOAPAS&lang=en"] {
    min-height: 485px
}

.iframe-component iframe[src="https://ir.oms.no/component/financialCalendar?token=NOAPAS&lang=en"] {
    min-height: 318px
}

.c-images {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(min(240px,100%),1fr));
    margin: 0 auto;
    max-width: var(--width-max);
    padding: 0 var(--width-side-min)
}

.c-images picture {
    display: block
}

.c-images img {
    height: auto;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%
}

.c-modular-finance-widget {
    background-color: var(--background-color);
    padding: 86px var(--width-side-min) 80px var(--width-side-min)
}

.c-modular-finance-widget>* {
    margin: auto;
    max-width: var(--width-max);
    width: 100%
}

.c-modular-finance-widget>h1+section p {
    max-width: 678px
}

.c-modular-finance-widget c-modular-finance-widget {
    display: block;
    margin: auto;
    max-width: var(--width-max)
}

.c-modular-finance-widget c-modular-finance-widget[label="Stock Table"] {
    margin-top: 0;
    padding-top: .25rem
}

.c-modular-finance-widget h1+c-modular-finance-widget,.c-modular-finance-widget section+c-modular-finance-widget {
    margin-top: 44px
}

.c-modular-finance-widget figure {
    margin: 32px 0 0;
    padding: 0
}

.c-modular-finance-widget figcaption {
    text-align: center
}

.c-modular-finance-widget[data-widget-label="Owner Distribution Donuts"]>div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    margin-top: 32px
}

.c-modular-finance-widget[data-widget-label="Owner Distribution Donuts"]>div>* {
    flex-basis: 1;
    flex-grow: 1;
    max-width: 500px
}

.c-modular-finance-widget[data-widget-label="Subscription Widget"] {
    padding-block:0 clamp(45px,5vw,90px)}

.c-modular-finance-widget[data-widget-label="KPI Table Tabs"] c-tabs {
    display: block;
    max-width: var(--width-max);
    padding-top: 32px
}

.c-modular-finance-widget[data-widget-label="KPI Table Tabs"] [role=tablist] {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 16px;
    max-width: 100%;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.c-modular-finance-widget[data-widget-label="KPI Table Tabs"] [role=tab] {
    padding: 9px clamp(16px,8vw,64px)
}

.c-modular-finance-widget[data-widget-label="KPI Table Tabs"] .c-modular-finance-widget {
    padding: 0
}

.c-modular-finance-widget[data-widget-label="KPI Table Tabs"] .c-modular-finance-widget figure {
    margin-top: 0
}

.c-modular-finance-widget[data-widget-label="Stock Ticker"] {
    margin-bottom: 0;
    padding-bottom: 0
}

.c-modular-finance-widget[data-widget-label="Stock Ticker"] .widget-stock-price-component {
    background-color: transparent;
    max-width: var(--width-max);
    transform: none
}

.c-modular-finance-widget[data-widget-label="Stock Ticker"] .widget-stock-price-component h2 {
    line-height: 1.25
}

.c-modular-finance-widget[data-widget-label="Stock Ticker"] .widget-stock-price-component>.wrapper {
    background-color: #e6f7fe;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-modular-finance-widget[data-widget-label="Stock Ticker"] .widget-stock-price-component>div {
    padding: clamp(16px,5vw,32px) clamp(16px,5vw,48px)
}

.c-modular-finance-widget[data-widget-label="Stock Ticker"] .widget-stock-price-component .wrapper div {
    font: var(--font-size-20);
    margin-bottom: 4px
}

.c-modular-finance-widget[data-widget-label="Stock Ticker"] .widget-stock-price-component .wrapper>data {
    font: var(--font-size-40);
    font-weight: var(--font-weight-extrabold)
}

.component:first-of-type .c-modular-finance-widget {
    padding-top: 0
}

.component:has(.c-modular-finance-widget[data-widget-label="Stock Ticker"])+.component .c-modular-finance-widget[data-widget-label="Stock Chart"] {
    padding-top: 0
}

.component:has(+.component .c-modular-finance-widget[data-widget-label="Stock Table"]) .c-modular-finance-widget[data-widget-label="Stock Chart"] {
    padding-bottom: 0
}

.component:has(.c-modular-finance-widget[data-widget-label="Stock Chart"])+.component .c-modular-finance-widget[data-widget-label="Stock Table"] {
    padding-top: 0
}

.component:has(.c-modular-finance-widget[data-widget-label="Stock Chart"])+.component .c-modular-finance-widget[data-widget-label="Stock Table"] figure {
    margin-top: 0
}

.component:has([label="Stock Table"])+.component .c-modular-finance-widget:has([label="Stock Chart"]) {
    padding-top: 0
}

.component:has([label="Stock Table"]):has(+.component [label="Stock Chart"]) .c-modular-finance-widget {
    padding-bottom: 0
}

.c-modular-finance-press-releases {
    padding: 0 var(--width-side-min);
    padding-bottom: 80px;
    padding-top: 90px
}

.c-modular-finance-press-releases>* {
    margin: auto;
    max-width: var(--width-max)
}

.c-modular-finance-press-releases>h1+section div {
    max-width: 680px
}

.c-modular-finance-press-releases>section {
    margin-bottom: 32px
}

.c-modular-finance-press-releases .max-lines {
    --max-lines: 1
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases .max-lines {
        --max-lines:3
    }
}

.c-modular-finance-press-releases .show-on-small-view {
    display: none
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases .hide-on-small-view {
        display:none
    }

    .c-modular-finance-press-releases .show-on-small-view {
        display: initial
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed .table-wrapper {
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed .table-wrapper {
        font:var(--font-size-16)
    }
}

@media screen and (max-width: 400px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed .table-wrapper {
        font-size:.875rem
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table {
    border-collapse: collapse;
    display: table;
    opacity: 1;
    transition: opacity .3s ease-in-out;
    width: 100%
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table[data-hidden=true] {
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table ol[role=list],.c-modular-finance-press-releases c-mfn-press-releases-feed table ul[role=list] {
    display: flex;
    flex-direction: column;
    gap: .5em;
    list-style: none;
    margin: 0;
    padding: 0
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table ul.attachments {
    flex-flow: row wrap;
    gap: .5em 0
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table ul.attachments :-webkit-any-link {
    display: block;
    height: 24px;
    width: 0
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table ul.attachments :-moz-any-link {
    display: block;
    height: 24px;
    width: 0
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table ul.attachments :any-link {
    display: block;
    height: 24px;
    width: 0
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table thead th span {
    --max-lines: 1!important
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody,.c-modular-finance-press-releases c-mfn-press-releases-feed table thead {
    min-width: 100%;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table td,.c-modular-finance-press-releases c-mfn-press-releases-feed table th {
    overflow: hidden;
    overflow-wrap: break-word;
    white-space: normal
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table thead tr {
    height: 4em
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tr {
    height: 65.5px
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed table tr {
        height:84px
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tr td,.c-modular-finance-press-releases c-mfn-press-releases-feed table tr th {
    text-wrap: balance;
    min-width: 350px;
    padding: 16px 20px
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed table tr td,.c-modular-finance-press-releases c-mfn-press-releases-feed table tr th {
        min-width:unset;
        padding: 8px;
        width: 100%
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tr td:first-child,.c-modular-finance-press-releases c-mfn-press-releases-feed table tr th:first-child {
    min-width: 160px;
    width: 160px
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed table tr td:first-child,.c-modular-finance-press-releases c-mfn-press-releases-feed table tr th:first-child {
        max-width:3.7em;
        min-width: 3.7em;
        width: 3.7em
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tr td:last-child,.c-modular-finance-press-releases c-mfn-press-releases-feed table tr th:last-child {
    min-width: 160px;
    width: 160px
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed table tr td:last-child,.c-modular-finance-press-releases c-mfn-press-releases-feed table tr th:last-child {
        max-width:4.5em;
        min-width: 4.5em;
        width: 4.5em
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table thead th {
    background-color: #fff7f4;
    font: var(--font-size-18);
    font-weight: var(--font-weight-extrabold);
    text-align: start;
    text-transform: uppercase
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed table thead th {
        font:var(--font-size-16);
        font-size: .875rem;
        font-weight: var(--font-weight-extrabold)
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody tr:nth-child(2n) {
    background-color: #fff7f4
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody tr:nth-child(odd) {
    background-color: var(--color-white)
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody th {
    font: var(--font-size-18);
    font-weight: var(--font-weight-bold);
    text-align: start
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody .as-link,.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody a {
    --color: var(--color-black);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: none;
    color: var(--color);
    cursor: pointer;
    display: inline;
    font: inherit;
    margin: 0;
    padding: 0 0 0 24px;
    position: relative;
    text-align: inherit;
    text-decoration: inherit
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody .as-link:hover,.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody a:hover {
    --color: var(--color-blue);
    text-decoration: underline
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody .as-link,.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody a {
    --icon-url: url(/images/icon-link.svg)
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody .as-link[data-content-type="application/pdf"],.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody a[data-content-type="application/pdf"] {
    --icon-url: url(/images/icon-pdf.svg)
}

.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody .as-link:before,.c-modular-finance-press-releases c-mfn-press-releases-feed table tbody a:before {
    background-color: var(--color);
    content: "";
    display: inline-block;
    height: 20px;
    left: 0;
    -webkit-mask-image: var(--icon-url);
    mask-image: var(--icon-url);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: absolute;
    top: 1px;
    width: 20px
}

.c-modular-finance-press-releases c-mfn-press-releases-feed search {
    display: flex;
    flex-wrap: wrap;
    gap: .5em;
    margin-bottom: 12px
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed search {
        font:var(--font-size-16)
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed search .select-wrapper {
    --color-foreground: var(--color-orange);
    --color-background: var(--color-light-orange);
    --chevron-size: 16px;
    background-color: var(--color-background);
    border-radius: 8px;
    color: var(--color-foreground);
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    position: relative;
    transition: background-color .2s ease,opacity .5s ease;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-modular-finance-press-releases c-mfn-press-releases-feed search .select-wrapper:after {
    background-color: var(--color-foreground);
    content: "";
    display: block;
    height: var(--chevron-size);
    -webkit-mask-image: url(/images/icons/sharp/chevron-down.svg);
    mask-image: url(/images/icons/sharp/chevron-down.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    pointer-events: none;
    position: absolute;
    right: var(--width-side-min);
    top: 50%;
    transform: translateY(-50%);
    width: var(--chevron-size)
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed search .select-wrapper:after {
        right:calc(var(--width-side-min)/1.5)
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed search .select-wrapper select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: none;
    color: inherit;
    cursor: pointer;
    font: inherit;
    margin: 0;
    outline: none;
    padding: 9px calc(1ch + var(--chevron-size) + var(--width-side-min)) 9px;
    text-align: center;
    transition: color .2s ease
}

@media screen and (max-width: 840px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed search .select-wrapper select {
        padding:9px calc(1ch + var(--chevron-size) + var(--width-side-min)/2) 9px
    }
}

@media screen and (max-width: 400px) {
    .c-modular-finance-press-releases c-mfn-press-releases-feed search .select-wrapper select {
        padding:9px calc(1ch + var(--chevron-size) + var(--width-side-min)/2) 9px calc(var(--width-side-min)/2)
    }
}

.c-modular-finance-press-releases c-mfn-press-releases-feed search .select-wrapper:hover {
    --color-foreground: var(--color-light-orange);
    --color-background: var(--color-orange)
}

.c-modular-finance-press-releases c-mfn-press-releases-feed nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 12px
}

.c-modular-finance-press-releases c-mfn-press-releases-feed nav>button {
    background-color: var(--color-light-orange);
    border: none;
    border-radius: 8px;
    color: var(--color-orange);
    cursor: pointer;
    font: inherit;
    outline: none;
    padding: 9px clamp(16px,8vw,64px);
    transition: color .2s ease,background-color .2s ease,opacity .5s ease
}

.c-modular-finance-press-releases c-mfn-press-releases-feed nav>button:disabled {
    opacity: 0;
    pointer-events: none
}

.c-modular-finance-press-releases c-mfn-press-releases-feed nav>button:not([disabled]):hover {
    background-color: var(--color-orange);
    color: var(--color-light-orange)
}

.c-modular-finance-press-releases dialog {
    border: none;
    padding: 0
}

.c-modular-finance-press-releases dialog::-webkit-backdrop {
    background-color: var(--color-blue);
    opacity: .75
}

.c-modular-finance-press-releases dialog::backdrop {
    background-color: var(--color-blue);
    opacity: .75
}

.c-modular-finance-press-releases dialog .content {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    max-width: calc(80ch - var(--width-side-min)*2);
    padding: var(--width-side-min);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-modular-finance-press-releases dialog .content button[data-close-dialog] {
    background-color: var(--color-blue);
    border: none;
    color: transparent;
    cursor: pointer;
    font-size: .0625rem;
    height: 32px;
    margin: 0;
    -webkit-mask-image: url(/images/icons/sharp/xmark.svg);
    mask-image: url(/images/icons/sharp/xmark.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    outline: none;
    padding: 0;
    position: absolute;
    right: var(--width-side-min);
    width: 32px
}

.c-modular-finance-press-releases dialog .content button[data-close-dialog]:hover {
    background-color: var(--color-orange)
}

.c-modular-finance-press-releases dialog .content c-mfn-press-release {
    display: block;
    max-width: calc(100vw - var(--width-side-min)*4);
    padding: var(--width-side-min) 0
}

.c-modular-finance-press-releases dialog .content header {
    display: grid;
    grid-template-areas: "i" "f" "j";
    margin-bottom: 24px;
    max-width: 680px
}

.c-modular-finance-press-releases dialog .content header time {
    color: var(--color-blue);
    font: var(--font-size-18);
    font-weight: var(--font-weight-regular);
    grid-area: i;
    margin-bottom: 24;
    padding: 0
}

@media screen and (max-width: 1200px) {
    .c-modular-finance-press-releases dialog .content header time {
        font-size:1rem;
        line-height: 1.25rem
    }
}

.c-modular-finance-press-releases dialog .content header h1 {
    color: var(--color-blue);
    font: var(--font-size-32);
    font-weight: var(--font-weight-semibold);
    grid-area: f;
    margin: 0;
    padding: 0
}

.c-modular-finance-press-releases dialog .content p+p {
    margin-top: 0
}

.c-modular-finance-press-releases dialog .content pre {
    overflow: scroll
}

.c-modular-finance-press-releases dialog .content h2 {
    font: var(--font-size-22);
    font-weight: var(--font-weight-bold);
    margin: .5em 0
}

.c-modular-finance-press-releases dialog .content ul[role=list] {
    display: flex;
    gap: .5em 1em;
    list-style: none;
    margin: 0;
    padding: 0
}

.c-modular-finance-press-releases dialog .content ul[slot=tags] {
    display: flex;
    flex-flow: row wrap;
    gap: .5em;
    margin-top: .5em
}

.c-modular-finance-press-releases dialog .content ul[slot=tags]>* {
    background-color: var(--color-light-orange);
    color: var(--color-orange);
    display: inline-block;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    padding: .25em .5em;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-modular-finance-press-releases dialog .content [slot=attachments] {
    flex-direction: column
}

.c-modular-finance-press-releases dialog .content [slot=attachments] a {
    --color: var(--color-black);
    color: var(--color);
    padding-left: 24px;
    position: relative;
    text-decoration: inherit
}

.c-modular-finance-press-releases dialog .content [slot=attachments] a:hover {
    --color: var(--color-blue);
    text-decoration: underline
}

.c-modular-finance-press-releases dialog .content [slot=attachments] a {
    --icon-url: url(/images/icon-link.svg)
}

.c-modular-finance-press-releases dialog .content [slot=attachments] a[data-content-type="application/pdf"] {
    --icon-url: url(/images/icon-pdf.svg)
}

.c-modular-finance-press-releases dialog .content [slot=attachments] a:before {
    background-color: var(--color);
    content: "";
    display: inline-block;
    height: 20px;
    left: 0;
    -webkit-mask-image: var(--icon-url);
    mask-image: var(--icon-url);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: absolute;
    top: 1px;
    width: 20px
}

.back-link {
    display: none
}

@media screen and (max-width: 800px) {
    .back-link {
        color:var(--color-blue);
        display: block;
        font-size: .75rem;
        font-weight: var(--font-weight-regular);
        line-height: .9375rem;
        margin: 30px;
        position: relative;
        text-decoration: none;
        transition: transform .25s ease-in-out
    }

    .back-link:before {
        --size: 24px;
        --icon-size: 16px;
        background-image: url(/images/icon-arrow-back.svg);
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: var(--icon-size);
        content: "";
        display: block;
        height: var(--size);
        left: calc(var(--size)*-1);
        position: absolute;
        top: calc(var(--size)/-4 + 2px);
        width: var(--size)
    }

    .back-link:hover {
        transform: translateX(-5px)
    }
}

.news-article-component {
    margin: 0 auto;
    max-width: 768px;
    padding-bottom: 0
}

@media screen and (min-width: 801px) {
    .news-article-component {
        margin-top:30px
    }
}

.news-article-component header {
    display: grid;
    grid-template-areas: "d" "i" "f"
}

.news-article-component header figure,.news-article-component header img {
    grid-area: d;
    margin: 0;
    max-height: 432px;
    max-width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    padding: 0;
    width: 100%
}

.news-article-component header time {
    color: var(--color-blue);
    font: var(--font-size-18);
    font-weight: var(--font-weight-regular);
    grid-area: i;
    margin-bottom: clamp(24px,40px,5vw);
    margin-top: clamp(24px,34px,5vw);
    padding: 0 var(--width-side-min)
}

@media screen and (max-width: 1200px) {
    .news-article-component header time {
        font-size:1rem;
        line-height: 1.25rem
    }
}

.news-article-component header h1 {
    color: var(--color-blue);
    font: var(--font-size-32);
    font-weight: var(--font-weight-semibold);
    grid-area: f;
    margin: 0;
    padding: 0 var(--width-side-min)
}

.news-article-component main {
    margin-bottom: 60px
}

.news-article-component aside,.news-article-component main {
    padding: 0 var(--width-side-min)
}

.news-article-component aside h2 {
    font: var(--font-size-22);
    font-weight: var(--font-weight-bold);
    margin: 0
}

.news-article-component aside a {
    color: inherit;
    display: block;
    margin-bottom: clamp(32px,40px,5vw);
    text-decoration: none
}

.news-article-component aside a:hover h2 {
    text-decoration: underline
}

.news-article-component aside time {
    color: var(--color-blue);
    font-size: .75rem;
    font-weight: var(--font-weight-semibold)
}

.news-overview-component {
    margin: 0 auto;
    max-width: 768px;
    padding-bottom: clamp(64px,152px,10vw)
}

.news-overview-component h1 {
    font: var(--font-size-40);
    font-weight: var(--font-weight-bold);
    margin-bottom: clamp(30px,195px,10vw);
    text-align: center
}

.news-overview-component .news a {
    color: inherit;
    text-decoration: none
}

.news-overview-component .news a:hover h2 {
    text-decoration: underline
}

.news-overview-component .news article {
    grid-gap: 0 40px;
    display: grid;
    grid-template: "d k" auto "d f" 1fr/auto 1fr;
    margin-bottom: 33px;
    padding: 0 var(--width-side-min)
}

@media screen and (max-width: 720px) {
    .news-overview-component .news article {
        grid-template-areas:"k" "f"
    }
}

.news-overview-component .news article img,.news-overview-component .news article picture {
    grid-area: d;
    height: 90px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 160px
}

@media screen and (max-width: 720px) {
    .news-overview-component .news article img,.news-overview-component .news article picture {
        display:none
    }
}

.news-overview-component .news article time {
    color: var(--color-blue);
    font-size: .75rem;
    font-weight: var(--font-weight-semibold);
    grid-area: k
}

.news-overview-component .news article h2 {
    font: var(--font-size-22);
    font-weight: var(--font-weight-bold);
    grid-area: f;
    margin: 5px 0 0
}

.news-overview-component nav {
    align-items: center;
    display: flex;
    font-size: 0;
    justify-content: center;
    margin-top: 65px
}

.news-overview-component nav>* {
    padding: 0 18px
}

.news-overview-component nav :first-child,.news-overview-component nav :last-child {
    background-image: url(/images/arrow2.svg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    font-size: 0;
    width: 27px
}

.news-overview-component nav :last-child {
    transform: rotate(180deg)
}

.news-overview-component nav :not(:first-child):not(:last-child) {
    border-left: 1px solid rgba(255,103,48,.2);
    color: inherit;
    font: var(--font-size-16);
    font-weight: var(--font-weight-regular);
    margin: 0;
    text-decoration: none
}

.news-overview-component nav :not(:first-child):not(:last-child):nth-last-child(2) {
    border-right: 1px solid rgba(255,103,48,.2)
}

.news-overview-component nav :not(:first-child):not(:last-child):hover {
    text-decoration: underline
}

.news-press-release-component {
    padding-bottom: 70px;
    padding-top: 0
}

.news-press-release-component .header-line {
    display: grid;
    grid-template-areas: ". f l";
    grid-template-columns: 1fr auto 1fr;
    margin: auto auto 55px;
    max-width: min(var(--width-max),1357px);
    padding: 0 var(--width-side-min)
}

@media screen and (max-width: 650px) {
    .news-press-release-component .header-line {
        grid-template-areas:"f l";
        grid-template-columns: auto 1fr
    }
}

@media screen and (max-width: 550px) {
    .news-press-release-component .header-line {
        grid-template-areas:"f" "l";
        grid-template-columns: 1fr
    }
}

.news-press-release-component .header-line div {
    align-items: center;
    display: flex;
    grid-area: l;
    justify-content: flex-end;
    z-index: 2
}

.news-press-release-component .header-line div a {
    transition: color .25s ease-out
}

.news-press-release-component .header-line div a:hover {
    color: var(--color-blue);
    transition: color .15s ease-in
}

.news-press-release-component h2 {
    grid-area: f;
    margin-bottom: 0;
    margin-top: 0;
    max-width: min(var(--width-max),1357px);
    text-align: center
}

@media screen and (max-width: 1200px) {
    .news-press-release-component h2 {
        padding:0 var(--width-side-min);
        text-align: left
    }
}

.news-press-release-component section {
    grid-gap: clamp(27px,140px,6vw);
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
    margin: 0 auto;
    max-width: min(var(--width-max),1357px);
    padding: 0 var(--width-side-min)
}

.news-press-release-component section a {
    color: inherit;
    display: block;
    height: 100%;
    margin: auto;
    max-width: var(--width-max);
    text-decoration: inherit;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.news-press-release-component section a:hover .fake-link,.news-press-release-component section a:hover h1 {
    color: var(--color-blue);
    transition: color .15s ease-in
}

.news-press-release-component section a:hover img {
    transform: scale(1.1);
    transition: transform .15s ease-in
}

.news-press-release-component section a article {
    align-content: space-between;
    display: grid;
    grid-template-areas: "d" "i" "f" "m";
    height: 100%;
    max-width: 100%
}

.news-press-release-component section a article picture {
    grid-area: d;
    margin-bottom: 38px;
    overflow: hidden
}

.news-press-release-component section a article picture,.news-press-release-component section a article picture img {
    aspect-ratio: 372/210;
    height: 100%;
    max-height: 210px;
    max-width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .25s ease-out;
    width: 100%
}

.news-press-release-component section a article time {
    color: var(--color-blue);
    font-size: .75rem;
    font-weight: var(--font-weight-semibold);
    grid-area: i;
    line-height: .9375rem;
    margin-bottom: 12px
}

.news-press-release-component section a article h1 {
    grid-area: f;
    margin-bottom: 18px;
    margin-top: 0;
    transition: color .25s ease-out
}

.news-press-release-component section a article .fake-link {
    color: var(--color-orange);
    font-size: 1.125rem;
    font-weight: var(--font-weight-regular);
    grid-area: m;
    line-height: 1.4375rem;
    text-decoration: underline;
    transition: color .25s ease-out
}

.newsletter {
    margin-top: -30px;
    padding-bottom: clamp(45px,5vw,90px)
}

.newsletter .form {
    background-color: rgb(255 103 48/5%);
    display: flex;
    flex-wrap: wrap;
    gap: 28px;
    margin: auto;
    max-width: calc(var(--width-max) - clamp(1px, 5vw, 62px)*2);
    padding: clamp(1px,5vw,40px) clamp(1px,5vw,62px);
    width: calc(100% - 48px - clamp(1px, 5vw, 70px)*2)
}

.newsletter .form>h1 {
    align-items: center;
    color: var(--color-blue);
    display: flex;
    font: var(--font-size-32);
    font-weight: var(--font-weight-semibold);
    margin: 0;
    padding: 0
}

@media screen and (max-width: 900px) {
    .newsletter .form>h1 {
        width:100%
    }
}

.newsletter .form>div {
    flex: 1;
    width: 100%
}

.newsletter form {
    align-items: center;
    display: grid;
    gap: 16px;
    grid-template-areas: "a b c";
    grid-template-columns: 2fr 1fr 304px
}

@media screen and (max-width: 900px) {
    .newsletter form {
        grid-template-areas:"a" "b" "c";
        grid-template-columns: 1fr
    }
}

.newsletter form button,.newsletter form fieldset,.newsletter form input {
    background-color: transparent;
    border: 0;
    margin: 0;
    outline: 0;
    padding: 0
}

.newsletter form button:focus-visible,.newsletter form fieldset:focus-visible,.newsletter form input:focus-visible {
    outline: 3px dotted #133a88
}

.newsletter form button[type=submit],.newsletter form input[type=email],.newsletter form input[type=submit],.newsletter form input[type=text] {
    font: var(--font-size-16);
    font-weight: var(--font-weight-regular);
    height: 48px;
    padding: 0 28px
}

.newsletter form input[type=email] {
    max-width: 400px
}

.newsletter form input[type=email],.newsletter form input[type=text] {
    background-color: #e7ebf3
}

.newsletter form input[type=email]::-moz-placeholder, .newsletter form input[type=text]::-moz-placeholder {
    color: #303030;
    opacity: 1
}

.newsletter form input[type=email]:-ms-input-placeholder, .newsletter form input[type=text]:-ms-input-placeholder {
    color: #303030;
    opacity: 1
}

.newsletter form input[type=email]::placeholder,.newsletter form input[type=text]::placeholder {
    color: #303030;
    opacity: 1
}

.newsletter form input[type=email]:focus-visible,.newsletter form input[type=text]:focus-visible {
    outline-style: solid
}

.newsletter form button[type=submit],.newsletter form input[type=submit] {
    background-color: #133a88;
    color: #fff;
    cursor: pointer;
    min-width: 129.33333px;
    width: 100%
}

.newsletter form button[type=submit]:hover,.newsletter form input[type=submit]:hover {
    background-color: #0d2a63
}

.newsletter form input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 2px solid #e7ebf3;
    cursor: pointer;
    height: 20px;
    position: relative;
    transition: background-color .15s ease-in-out,border .15s ease-in-out;
    width: 20px
}

.newsletter form input[type=checkbox]:hover {
    border: 2px solid #133a88
}

.newsletter form input[type=checkbox]:checked {
    background-color: #133a88;
    border: 2px solid #133a88
}

.newsletter form input[type=checkbox]:checked:after {
    background-color: #fff;
    content: "";
    height: 100%;
    inset: 0;
    -webkit-mask-image: url(/images/checkmark.svg);
    mask-image: url(/images/checkmark.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 75%;
    mask-size: 75%;
    position: absolute;
    width: 100%
}

.newsletter form label {
    color: #303030;
    cursor: pointer;
    font-size: .875rem;
    font-weight: var(--font-weight-regular);
    line-height: .875rem;
    white-space: nowrap
}

.newsletter form input#email {
    grid-area: a
}

.newsletter form fieldset.information-types {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-area: c;
    grid-template-columns: repeat(2,-webkit-min-content auto);
    grid-template-columns: repeat(2,min-content auto)
}

@media screen and (max-width: 900px) {
    .newsletter form fieldset.information-types {
        grid-template-columns:repeat(1,20px auto)
    }
}

.newsletter form fieldset.information-types .g-recaptcha {
    display: flex;
    grid-column: 1/-1;
    justify-content: flex-end;
    margin-top: 8px
}

.newsletter form fieldset.submit {
    grid-area: b;
    margin-right: 12px
}

@media screen and (max-width: 900px) {
    .newsletter form fieldset.submit {
        margin-right:0
    }
}

.c-our-product-tab-content {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(min(100%,380px),1fr))
}

.c-our-product-tab-content .image {
    display: flex;
    place-content: center
}

.c-our-product-tab-content picture {
    display: contents
}

.c-our-product-tab-content img {
    aspect-ratio: 1/1;
    border-radius: 382px;
    height: auto;
    margin: 0 auto;
    max-height: 382px;
    max-width: 382px;
    width: 100%
}

.c-our-product-tabs {
    margin: 0 auto;
    max-width: min(1140px,calc(100vw - var(--width-side-min)*2));
    padding-bottom: 76px
}

.parallax-contact-form-component {
    height: auto;
    overflow: hidden;
    position: relative;
    width: 100%
}

.parallax-contact-form-component figure {
    height: 100%;
    margin: 0;
    max-height: 823px;
    -o-object-fit: cover;
    object-fit: cover;
    padding: 0;
    position: absolute;
    width: 100vw
}

.parallax-contact-form-component figure .simple-parallax {
    height: 100%
}

.parallax-contact-form-component figure .simple-parallax img {
    height: 100%;
    max-height: 823px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 66.66667vw
}

.parallax-contact-form-component div.wrapper {
    --padding: var(--width-side-min);
    color: var(--color-white);
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin: 0 auto;
    margin-bottom: calc(141px - var(--padding));
    margin-top: calc(136px - var(--padding));
    max-width: var(--width-max);
    padding: var(--padding);
    position: relative
}

@media screen and (max-width: 1200px) {
    .parallax-contact-form-component div.wrapper {
        grid-template-columns:1fr
    }
}

.parallax-contact-form-component div.wrapper form {
    display: flex;
    flex-direction: column;
    gap: 14px
}

.parallax-contact-form-component div.wrapper form>* {
    border: 0;
    height: 100%;
    min-height: 12px;
    padding: 22px
}

.parallax-contact-form-component div.wrapper form h2 {
    margin-bottom: 64px;
    margin-top: 0;
    padding: 0
}

.parallax-contact-form-component div.wrapper form input.textbox {
    height: 100%
}

.parallax-contact-form-component div.wrapper form button {
    align-self: flex-end;
    background-color: var(--color-orange);
    border-radius: 4px;
    color: var(--color-white);
    max-width: 265px;
    width: 100%
}

@media screen and (max-width: 1200px) {
    .parallax-contact-form-component div.wrapper section {
        display:none
    }
}

.parallax-contact-form-component div.wrapper section a {
    color: inherit
}

.parallax-contact-form-component div.wrapper section h2 {
    font: var(--font-size-32);
    margin-bottom: 0;
    margin-top: 0
}

.parallax-contact-form-component div.wrapper section h2+p {
    margin-top: 0
}

.parallax-contact-form-component div.wrapper section p+h2 {
    margin-top: 24px
}

.parallax-text-component {
    height: auto;
    overflow: hidden;
    position: relative;
    width: 100%
}

.parallax-text-component figure {
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
    object-fit: cover;
    padding: 0;
    position: absolute;
    width: 100vw
}

.parallax-text-component figure .simple-parallax {
    height: 100%
}

.parallax-text-component figure .simple-parallax img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 66.66667vw
}

.parallax-text-component article {
    --padding: var(--width-side-min);
    color: var(--color-white);
    margin: 0 auto;
    margin-bottom: clamp(100px,calc(141px - var(--padding)),10vw);
    margin-top: clamp(100px,calc(136px - var(--padding)),10vw);
    max-width: 796px;
    padding: var(--padding);
    position: relative
}

.parallax-text-component article:before {
    background-color: #226389;
    content: "";
    height: 100%;
    opacity: 60%;
    width: 100%
}

.parallax-text-component article h1 {
    font-size: 1rem;
    font-weight: var(--font-weight-bold);
    line-height: 1.25rem;
    margin-bottom: 31px;
    text-transform: uppercase
}

.parallax-text-component article main {
    font: var(--font-size-32);
    font-size: 1.5rem;
    line-height: 1.875rem
}

.parallax-text-component article main a {
    color: inherit
}

.parallax-text-component article main a.read-more {
    color: inherit;
    font-size: 1.125rem;
    margin-top: 24px
}

.partners-component {
    display: grid;
    padding-bottom: clamp(64px,104px,10vw);
    padding-top: clamp(64px,117px,10vw)
}

.partners-component h2 {
    color: var(--color-blue);
    margin: 0 auto 52px;
    max-width: var(--width-max);
    padding: 0 var(--width-side-min);
    width: calc(100% - var(--width-side-min)*2)
}

@media screen and (max-width: 1200px) {
    .partners-component h2 {
        text-align:center
    }
}

.partners-component h3 {
    color: var(--color-blue);
    font: var(--font-size-32);
    font-weight: var(--font-weight-semibold);
    margin: 0
}

.partners-component ol {
    grid-gap: 44px calc(clamp(10px, 96px, 4vw)*2);
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(min(300px,80vw),1fr));
    list-style-type: none;
    margin: 0 auto;
    max-width: var(--width-max);
    padding: 0;
    padding: 0 var(--width-side-min);
    width: calc(100vw - var(--width-side-min)*2)
}

.partners-component ol li {
    display: flex;
    justify-content: center
}

.partners-component .partner {
    align-content: baseline;
    align-items: center;
    align-self: baseline;
    display: grid;
    grid-template-areas: "d" "n";
    height: 100%;
    justify-items: center;
    text-align: center;
    width: calc(100% - var(--width-side-min)*2)
}

.partners-component .partner p:first-of-type(p) {
    margin: 0
}

.partners-component .partner img {
    grid-area: d
}

.partners-component.small img {
    border-radius: 100%;
    max-width: 385px;
    width: 100%
}

.partners-component.small ol {
    grid-template-columns: repeat(auto-fit,minmax(min(530px,80vw),1fr))
}

.partners-component.small ol .partner h3 {
    margin-top: 36px
}

.partners-component:not(.partners-component.small) img {
    margin-bottom: clamp(35px,70px,4vw);
    max-height: 80px;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%
}

.preview-contacts-component {
    display: grid;
    padding-bottom: clamp(64px,104px,10vw);
    padding-top: clamp(70px,117px,10vw)
}

.preview-contacts-component h2 {
    color: var(--color-blue);
    margin-bottom: 52px;
    text-align: center
}

@media screen and (max-width: 650px) {
    .preview-contacts-component h2 {
        padding:0 var(--width-side-min);
        text-align: unset
    }
}

.preview-contacts-component ol {
    grid-gap: 24px;
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(120px,1fr));
    list-style-type: none;
    margin: 0 auto;
    max-width: var(--width-max);
    padding: 0;
    padding: 0 var(--width-side-min);
    width: calc(100vw - var(--width-side-min)*2)
}

@media screen and (max-width: 650px) {
    .preview-contacts-component ol {
        grid-gap:16px;
        grid-template-columns: 1fr
    }
}

.preview-contacts-component ol li {
    display: flex;
    justify-content: center
}

@media screen and (max-width: 650px) {
    .preview-contacts-component ol li {
        justify-content:start
    }
}

.preview-contacts-component .contact {
    display: grid;
    grid-template-areas: "d" "e" "f";
    grid-template-columns: 100%;
    width: 100%
}

@media screen and (max-width: 650px) {
    .preview-contacts-component .contact {
        grid-gap:0 16px;
        grid-template-areas: "d e" "d f";
        grid-template-columns: auto 1fr
    }
}

.preview-contacts-component .contact img,.preview-contacts-component .contact picture {
    grid-area: d;
    max-width: 100%
}

@media screen and (max-width: 650px) {
    .preview-contacts-component .contact img,.preview-contacts-component .contact picture {
        height:96px;
        width: 96px
    }
}

.preview-contacts-component .contact .name {
    font: var(--font-size-22);
    font-weight: var(--font-weight-bold);
    grid-area: e;
    line-height: 1;
    margin: .25rem 0 0;
    padding: 0
}

@media screen and (max-width: 650px) {
    .preview-contacts-component .contact .name {
        align-self:end;
        margin: 0
    }
}

.preview-contacts-component .contact .title {
    font: var(--font-size-18);
    font-weight: var(--font-weight-regular);
    grid-area: f;
    margin: 0;
    padding: 0
}

.preview-contacts-component a {
    background-color: var(--color-light-orange);
    color: var(--color-black);
    margin: 56px auto 0;
    padding: 15px 68px 10px;
    text-decoration: none;
    transition: all .25s ease-in-out!important
}

@media screen and (max-width: 650px) {
    .preview-contacts-component a {
        height:60px;
        line-height: 3.75rem;
        padding: 0;
        text-align: center;
        width: calc(100% - var(--width-side-min)*2)
    }
}

.preview-contacts-component a:hover {
    background-color: #ffb59a
}

.rich-text-component {
    padding: clamp(40px,8vw,86px) var(--width-side-min) clamp(40px,8vw,80px) var(--width-side-min)
}

.rich-text-component h1.center {
    text-align: center
}

.rich-text-component>h1+section p {
    margin-bottom: 46px;
    max-width: 678px
}

.rich-text-component>* {
    margin: auto;
    max-width: var(--width-max);
    width: 100%
}

.rich-text-component.small {
    --width-max: 758px
}

.rich-text-component.small h1 {
    color: var(--color-blue);
    font: var(--font-size-32);
    font-weight: var(--font-weight-semibold)
}

.c-sibling-page-navigation {
    color: var(--color-blue);
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    justify-content: space-between;
    padding: 36px clamp(var(--width-side-min),3vw,56px);
    text-decoration: none
}

.c-sibling-page-navigation :-webkit-any-link {
    align-items: center;
    color: inherit;
    display: flex;
    justify-content: center;
    text-decoration: inherit
}

.c-sibling-page-navigation :-moz-any-link {
    align-items: center;
    color: inherit;
    display: flex;
    justify-content: center;
    text-decoration: inherit
}

.c-sibling-page-navigation :any-link {
    align-items: center;
    color: inherit;
    display: flex;
    justify-content: center;
    text-decoration: inherit
}

.c-sibling-page-navigation :-webkit-any-link:hover {
    text-decoration: underline
}

.c-sibling-page-navigation :-moz-any-link:hover {
    text-decoration: underline
}

.c-sibling-page-navigation :any-link:hover {
    text-decoration: underline
}

@media screen and (max-width: 750px) {
    .c-sibling-page-navigation :-webkit-any-link span {
        display:none
    }

    .c-sibling-page-navigation :-moz-any-link span {
        display: none
    }

    .c-sibling-page-navigation :any-link span {
        display: none
    }
}

.c-sibling-page-navigation :-webkit-any-link:first-child:before {
    background-color: currentcolor;
    content: "";
    display: inline-block;
    margin-right: .5rem;
    -webkit-mask-image: url(/images/icons/sharp/arrow-left.svg);
    mask-image: url(/images/icons/sharp/arrow-left.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    min-height: 16px;
    min-width: 16px
}

.c-sibling-page-navigation :-moz-any-link:first-child:before {
    background-color: currentcolor;
    content: "";
    display: inline-block;
    margin-right: .5rem;
    mask-image: url(/images/icons/sharp/arrow-left.svg);
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
    min-height: 16px;
    min-width: 16px
}

.c-sibling-page-navigation :any-link:first-child:before {
    background-color: currentcolor;
    content: "";
    display: inline-block;
    margin-right: .5rem;
    -webkit-mask-image: url(/images/icons/sharp/arrow-left.svg);
    mask-image: url(/images/icons/sharp/arrow-left.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    min-height: 16px;
    min-width: 16px
}

.c-sibling-page-navigation :-webkit-any-link:not(.c-sibling-page-navigation :-webkit-any-link:first-child):last-child:after {
    background-color: currentcolor;
    content: "";
    display: inline-block;
    margin-left: .5rem;
    -webkit-mask-image: url(/images/icons/sharp/arrow-right.svg);
    mask-image: url(/images/icons/sharp/arrow-right.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    min-height: 16px;
    min-width: 16px
}

.c-sibling-page-navigation :-moz-any-link:not(.c-sibling-page-navigation :-moz-any-link:first-child):last-child:after {
    background-color: currentcolor;
    content: "";
    display: inline-block;
    margin-left: .5rem;
    mask-image: url(/images/icons/sharp/arrow-right.svg);
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
    min-height: 16px;
    min-width: 16px
}

.c-sibling-page-navigation :any-link:not(.c-sibling-page-navigation :any-link:first-child):last-child:after {
    background-color: currentcolor;
    content: "";
    display: inline-block;
    margin-left: .5rem;
    -webkit-mask-image: url(/images/icons/sharp/arrow-right.svg);
    mask-image: url(/images/icons/sharp/arrow-right.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    min-height: 16px;
    min-width: 16px
}

.c-strategic-priority-accordion {
    --content-inset: clamp(24px,5vw,40px);
    --icon-size: 32px;
    display: grid;
    gap: 15px 32px;
    grid-template: "o . ." 0 "o p ." auto "o q ." auto "o . ." 0/min-content auto 16px;
    margin: 0 auto clamp(42px,8vw,56px);
    width: min(calc(var(--width-max) - 390px),calc(100vw - var(--width-side-min)*2))
}

.c-strategic-priority-accordion[style*="--primary-color:#ff6630"],.c-strategic-priority-accordion[style*="--primary-color: #ff6630"] {
    --secondary-color: var(--color-light-orange)
}

.c-strategic-priority-accordion[style*="--primary-color:#85a33b"],.c-strategic-priority-accordion[style*="--primary-color: #85a33b"] {
    --secondary-color: #e7edd7
}

.c-strategic-priority-accordion[style*="--primary-color:#7cb8d1"],.c-strategic-priority-accordion[style*="--primary-color: #7cb8d1"] {
    --secondary-color: #e5f1f6
}

@media screen and (max-width: 640px) {
    .c-strategic-priority-accordion {
        --content-inset:0px;
        grid-template: "p " auto "q" auto/1fr
    }
}

.c-strategic-priority-accordion>.icon-container {
    background-color: var(--primary-color);
    border-radius: 124px;
    display: block;
    grid-area: o;
    height: 124px;
    overflow: hidden;
    width: 124px
}

@media screen and (max-width: 640px) {
    .c-strategic-priority-accordion>.icon-container {
        display:none
    }
}

.c-strategic-priority-accordion>.icon-container img,.c-strategic-priority-accordion>.icon-container picture {
    height: 100%;
    width: 100%
}

.c-strategic-priority-accordion>.icon-container[style*="--icon-url"] {
    position: relative
}

.c-strategic-priority-accordion>.icon-container[style*="--icon-url"]:after {
    background-color: var(--color-white);
    content: "";
    display: block;
    height: 100%;
    inset: 0;
    -webkit-mask-image: var(--icon-url);
    mask-image: var(--icon-url);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 32%;
    mask-size: 32%;
    position: absolute;
    width: 100%
}

.c-strategic-priority-accordion>.icon-container[style*="--primary-color"] picture {
    mix-blend-mode: overlay
}

.c-strategic-priority-accordion>p {
    display: block;
    font: var(--font-size-16);
    grid-area: p;
    margin: 0;
    text-transform: uppercase;
    width: 100%
}

.c-strategic-priority-accordion>details {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    grid-area: q;
    overflow: hidden;
    width: 100%
}

.c-strategic-priority-accordion>details summary {
    background-color: var(--secondary-color,var(--color-light-orange));
    cursor: pointer;
    font: var(--font-size-22);
    font-weight: var(--font-weight-bold);
    list-style: none;
    padding: 15px max(var(--content-inset),16px);
    position: relative;
    text-transform: uppercase;
    transition: .25s ease
}

@media screen and (max-width: 640px) {
    .c-strategic-priority-accordion>details summary {
        font-size:1.25rem;
        line-height: 1
    }
}

.c-strategic-priority-accordion>details summary:after {
    --size: 20px;
    background-color: var(--primary-color,var(--color-orange));
    content: "";
    display: block;
    height: var(--size);
    inset: calc(50% - var(--size)/2) calc(100% - max(var(--content-inset), 16px) - var(--size));
    -webkit-mask-image: url(/images/icons/sharp/plus.svg);
    mask-image: url(/images/icons/sharp/plus.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: absolute;
    transition: .25s ease;
    width: var(--size)
}

.c-strategic-priority-accordion>details[open][data-is-closing=false] summary {
    background-color: var(--primary-color,var(--color-orange));
    color: var(--color-white)
}

.c-strategic-priority-accordion>details[open][data-is-closing=false] summary:after {
    background-color: var(--color-white);
    transform: rotate(45deg)
}

@media screen and (min-width: 641px) {
    .c-strategic-priority-accordion>details .table-wrapper {
        overflow:auto
    }
}

.c-strategic-priority-accordion>details table {
    border-collapse: collapse;
    display: table;
    overflow: initial;
    table-layout: fixed;
    white-space: normal
}

.c-strategic-priority-accordion>details table th {
    font: var(--font-size-20);
    font-weight: var(--font-weight-bold);
    padding: 32px 0;
    text-align: start;
    text-transform: uppercase
}

@media screen and (max-width: 640px) {
    .c-strategic-priority-accordion>details table th {
        font-size:1.0625rem;
        line-height: 1.5
    }
}

.c-strategic-priority-accordion>details table td {
    word-wrap: break-word
}

.c-strategic-priority-accordion>details table tr {
    border-bottom: 1px solid var(--primary-color,var(--color-orange))
}

.c-strategic-priority-accordion>details table tr td,.c-strategic-priority-accordion>details table tr th {
    padding: clamp(16px,5vw,32px) 0;
    vertical-align: top
}

.c-strategic-priority-accordion>details table tr td p,.c-strategic-priority-accordion>details table tr th p {
    margin: 0
}

@media screen and (max-width: 640px) {
    .c-strategic-priority-accordion>details table tr td p,.c-strategic-priority-accordion>details table tr th p {
        font-size:1rem;
        line-height: 1.5
    }
}

.c-strategic-priority-accordion>details table tr td:first-child,.c-strategic-priority-accordion>details table tr th:first-child {
    padding-left: var(--content-inset);
    padding-right: clamp(16px,5vw,100px);
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.c-strategic-priority-accordion>details table tr td:first-child span,.c-strategic-priority-accordion>details table tr th:first-child span {
    display: block;
    font: var(--font-size-20);
    font-weight: var(--font-weight-bold)
}

@media screen and (max-width: 640px) {
    .c-strategic-priority-accordion>details table tr td:first-child span,.c-strategic-priority-accordion>details table tr th:first-child span {
        font-size:1.0625rem;
        line-height: 1.5
    }
}

.c-strategic-priority-accordion>details table tr td:first-child span[style*="--icon-url"],.c-strategic-priority-accordion>details table tr th:first-child span[style*="--icon-url"] {
    align-items: center;
    display: flex;
    gap: 1em
}

.c-strategic-priority-accordion>details table tr td:first-child span[style*="--icon-url"]:before,.c-strategic-priority-accordion>details table tr th:first-child span[style*="--icon-url"]:before {
    align-self: start;
    background-color: var(--primary-color,var(--color-orange));
    content: "";
    display: inline-block;
    inset: 0;
    -webkit-mask-image: var(--icon-url);
    mask-image: var(--icon-url);
    -webkit-mask-position: start center;
    mask-position: start center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    min-height: var(--icon-size);
    min-width: var(--icon-size)
}

@media screen and (max-width: 0) {
    .c-strategic-priority-accordion>details table {
        --icon-spacing:16px;
        display: flex;
        flex-direction: column;
        margin-top: 32px;
        width: 100%
    }

    .c-strategic-priority-accordion>details table tr {
        display: flex;
        gap: 0 26px
    }

    .c-strategic-priority-accordion>details table tbody tr {
        flex-direction: column;
        padding: 24px var(--icon-spacing)
    }

    .c-strategic-priority-accordion>details table td,.c-strategic-priority-accordion>details table th {
        padding: 0!important;
        width: -webkit-fit-content!important;
        width: -moz-fit-content!important;
        width: fit-content!important
    }

    .c-strategic-priority-accordion>details table th {
        font-size: .875rem;
        font-weight: var(--font-weight-extrabold)
    }

    .c-strategic-priority-accordion>details table td:last-child {
        margin-left: calc(var(--icon-size) + var(--icon-spacing));
        margin-top: 24px
    }
}

c-tabs [role=tablist] {
    display: grid;
    gap: 4px;
    grid-template-columns: repeat(auto-fit,minmax(180px,1fr));
    margin-bottom: clamp(16px,5vw,64px)
}

@media screen and (max-width: 800px) {
    c-tabs [role=tablist] {
        grid-template-columns:1fr 1fr
    }
}

@media screen and (max-width: 420px) {
    c-tabs [role=tablist] {
        grid-template-columns:1fr
    }
}

c-tabs [role=tablist]>* {
    flex: 1 1 0
}

c-tabs [role=tab] {
    background-color: var(--color-light-orange);
    border: none;
    border-radius: 8px;
    color: var(--color-orange);
    cursor: pointer;
    font: var(--font-size-20);
    min-width: -webkit-fit-content;
    min-width: -moz-fit-content;
    min-width: fit-content;
    padding: 9px 27px;
    text-align: center;
    transition: background-color .4s ease
}

c-tabs [role=tab] .label span {
    overflow-wrap: anywhere
}

c-tabs [role=tab][aria-selected=true] {
    background-color: var(--color-orange);
    color: var(--color-white)
}

c-tabs [role=tab]:focus-visible {
    outline: solid 2px var(--color-orange);
    outline-offset: 2px
}

c-tabs .panels-wrapper {
    display: grid;
    grid-template: "r" 100%;
    height: var(--panel-height);
    overflow-y: hidden;
    transition: height .3s ease-out
}

c-tabs [role=tabpanel] {
    grid-area: r;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    transition: .3s ease-out;
    transition-delay: .15s;
    transition-property: transform,opacity
}

c-tabs [role=tabpanel][aria-hidden=true] {
    opacity: 0;
    pointer-events: none;
    transform: translateY(3px);
    transition-delay: 0ms
}

.text-image-aside-component .wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    position: relative;
    width: 100%
}

@media screen and (max-width: 650px) {
    .text-image-aside-component .wrapper {
        grid-template-columns:1fr
    }
}

.text-image-aside-component .text-wrapper {
    --padding-right: clamp(10px,96px,4vw);
    align-self: center;
    display: flex;
    grid-area: s;
    justify-self: center;
    margin-left: auto;
    margin-right: var(--padding-right);
    max-width: calc(var(--width-max)/2 - var(--padding-right) + var(--width-side-min));
    padding-bottom: clamp(52px,185px,8vw);
    padding-top: clamp(50px,200px,8vw);
    width: 100%
}

.text-image-aside-component .text-wrapper .text {
    max-width: calc(100% - var(--width-side-min)*2 - var(--padding-right));
    padding: 0 var(--width-side-min)
}

.text-image-aside-component .text-wrapper .text .tag {
    color: var(--color-orange);
    font: var(--font-size-18);
    font-weight: var(--font-weight-regular);
    text-transform: uppercase
}

.text-image-aside-component .text-wrapper .text h2 {
    color: var(--color-blue);
    font-weight: var(--font-weight-semibold);
    margin: 0 0 30px
}

.text-image-aside-component .text-wrapper .text .fake-read-more {
    color: var(--color-orange);
    display: block;
    margin-top: 58px;
    text-decoration: underline
}

.text-image-aside-component a.read-more {
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.text-image-aside-component.left .wrapper {
    grid-template-areas: "t s"
}

@media screen and (max-width: 650px) {
    .text-image-aside-component.left .wrapper {
        grid-template-areas:"t" "s"
    }
}

.text-image-aside-component.left .wrapper .text-wrapper {
    margin: 0 auto 0 0;
    margin-left: var(--padding-right)
}

.text-image-aside-component.right .wrapper {
    grid-template-areas: "s t"
}

@media screen and (max-width: 650px) {
    .text-image-aside-component.right .wrapper {
        grid-template-areas:"t" "s"
    }
}

.text-image-aside-component.right .wrapper .text-wrapper {
    margin: 0 0 0 auto
}

.text-image-aside-component img {
    grid-area: t;
    height: 100%;
    margin: auto;
    max-height: -webkit-fit-content;
    max-height: -moz-fit-content;
    max-height: fit-content;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media screen and (max-width: 650px) {
    .text-image-aside-component img {
        max-height:234px
    }
}

.text-image-aside-component.small {
    padding: 56px
}

.text-image-aside-component.small picture {
    align-items: center;
    display: flex;
    justify-content: center
}

.text-image-aside-component.small img {
    --size: 100%;
    --max-size: 385px;
    aspect-ratio: 1/1;
    border-radius: 100%;
    height: auto;
    margin: auto;
    max-height: var(--max-size);
    max-width: var(--max-size);
    -o-object-fit: cover;
    object-fit: cover;
    width: var(--size)
}

.text-image-aside-component.small .wrapper {
    grid-gap: calc(clamp(10px, 96px, 4vw)*2);
    margin: auto;
    max-width: var(--width-max)
}

.text-image-aside-component.small .wrapper .text-wrapper {
    margin: 0;
    max-width: unset;
    padding: 0;
    transform: translateX(-8%);
    width: 120%
}

@media screen and (max-width: 650px) {
    .text-image-aside-component.small .wrapper .text-wrapper {
        text-align:center;
        transform: unset;
        width: 100%
    }
}

.text-image-aside-component.small .wrapper .text-wrapper .text {
    max-width: unset
}

.text-image-aside-component.small.right .text-wrapper {
    transform: translateX(8%)
}

@media screen and (max-width: 650px) {
    .text-image-aside-component.small.right .text-wrapper {
        transform:unset
    }
}

.text-image-aside-component.small.transparency img {
    aspect-ratio: unset;
    border-radius: 0;
    max-width: 572px;
    -o-object-fit: contain;
    object-fit: contain
}

.c-three-blocks-and-link {
    background-color: var(--background-color,var(--color-white))
}

.c-three-blocks-and-link .content {
    margin: 0 auto;
    padding: clamp(50px,10vw,80px) 0;
    position: relative;
    width: min(var(--width-max),calc(100vw - var(--width-side-min)*2))
}

@media screen and (max-width: 520px) {
    .c-three-blocks-and-link .content {
        padding:0
    }
}

.c-three-blocks-and-link h2 {
    color: var(--color-blue);
    font-weight: var(--font-weight-semibold);
    margin: 0 0 58px;
    text-align: center
}

.c-three-blocks-and-link .blocks {
    display: flex;
    flex-wrap: wrap;
    gap: 24px 2rem;
    justify-content: space-evenly;
    margin-bottom: 48px
}

@media screen and (max-width: 520px) {
    .c-three-blocks-and-link .blocks {
        flex-flow:column nowrap
    }
}

.c-three-blocks-and-link .block {
    align-items: center;
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: flex-start;
    position: relative
}

@media screen and (max-width: 520px) {
    .c-three-blocks-and-link .block {
        display:grid;
        gap: 0 16px;
        grid-template: "t . " 8px "t f" auto "t u " auto "t . " 8px/auto 1fr
    }
}

.c-three-blocks-and-link .block .icon-container {
    aspect-ratio: 1/1;
    border-radius: 220px;
    grid-area: t;
    height: 220px;
    margin-bottom: 32px;
    overflow: hidden;
    width: 220px
}

@media screen and (max-width: 520px) {
    .c-three-blocks-and-link .block .icon-container {
        align-self:start;
        border-radius: 70px;
        height: 70px;
        margin-bottom: 0;
        width: 70px
    }
}

.c-three-blocks-and-link .block .icon-container img,.c-three-blocks-and-link .block .icon-container picture {
    height: 100%;
    width: 100%
}

.c-three-blocks-and-link .block .icon-container[style*="--icon-url"] {
    position: relative
}

.c-three-blocks-and-link .block .icon-container[style*="--icon-url"]:after {
    background-color: var(--color-white);
    content: "";
    display: block;
    height: 100%;
    inset: 0;
    -webkit-mask-image: var(--icon-url);
    mask-image: var(--icon-url);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 32%;
    mask-size: 32%;
    position: absolute;
    width: 100%
}

.c-three-blocks-and-link .block .icon-container[style*="--primary-color"] picture {
    mix-blend-mode: overlay
}

.c-three-blocks-and-link .block h3 {
    color: var(--color-orange);
    font: var(--font-size-40);
    grid-area: f;
    margin: 0 0 12px;
    text-align: center
}

@media screen and (max-width: 520px) {
    .c-three-blocks-and-link .block h3 {
        font:var(--font-size-22);
        margin: 0;
        text-align: start
    }
}

.c-three-blocks-and-link .block .about {
    grid-area: u;
    margin: 0;
    max-width: 333px;
    text-align: center
}

@media screen and (max-width: 520px) {
    .c-three-blocks-and-link .block .about {
        text-align:start
    }

    .c-three-blocks-and-link .block .about p {
        font: var(--font-size-16);
        margin: 0
    }
}

.c-three-blocks-and-link .block :-webkit-any-link {
    margin-top: auto
}

.c-three-blocks-and-link .block :-moz-any-link {
    margin-top: auto
}

.c-three-blocks-and-link .block :any-link {
    margin-top: auto
}

@media screen and (max-width: 520px) {
    .c-three-blocks-and-link .block :-webkit-any-link {
        font-size:0
    }

    .c-three-blocks-and-link .block :-moz-any-link {
        font-size: 0
    }

    .c-three-blocks-and-link .block :any-link {
        font-size: 0
    }
}

.c-three-blocks-and-link .block :-webkit-any-link:after {
    content: "";
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.c-three-blocks-and-link .block :-moz-any-link:after {
    content: "";
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.c-three-blocks-and-link .block :any-link:after {
    content: "";
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.c-three-blocks-and-link .content>:-webkit-any-link:not(.cover) {
    color: var(--color-orange);
    display: block;
    margin: auto;
    text-decoration: underline;
    width: -webkit-fit-content;
    width: fit-content
}

.c-three-blocks-and-link .content>:-moz-any-link:not(.cover) {
    color: var(--color-orange);
    display: block;
    margin: auto;
    text-decoration: underline;
    width: -moz-fit-content;
    width: fit-content
}

.c-three-blocks-and-link .content>:any-link:not(.cover),.c-three-blocks-and-link .fake-link {
    color: var(--color-orange);
    display: block;
    margin: auto;
    text-decoration: underline;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.c-three-blocks-and-link .content>:-webkit-any-link.cover {
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.c-three-blocks-and-link .content>:-moz-any-link.cover {
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.c-three-blocks-and-link .content>:any-link.cover {
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.c-un-sdgs {
    background-color: var(--background-color,transparent);
    padding: clamp(20px,4vw,50px) 0
}

.c-un-sdgs>.header {
    --width-max: 1105px;
    display: grid;
    gap: 15px 32px;
    grid-template: "o . ." 0 "o p ." auto "o f ." auto "o . ." 0/min-content auto 16px;
    margin: 0 auto 18px;
    width: min(var(--width-max),calc(100vw - var(--width-side-min)*2))
}

@media screen and (max-width: 842px) {
    .c-un-sdgs>.header {
        gap:4px;
        grid-template: "p " auto "f" auto/auto
    }
}

.c-un-sdgs>.header>.icon-container {
    background-color: var(--primary-color);
    border-radius: 124px;
    display: block;
    grid-area: o;
    height: 124px;
    overflow: hidden;
    width: 124px
}

@media screen and (max-width: 842px) {
    .c-un-sdgs>.header>.icon-container {
        display:none
    }
}

.c-un-sdgs>.header>.icon-container img,.c-un-sdgs>.header>.icon-container picture {
    height: 100%;
    width: 100%
}

.c-un-sdgs>.header>.icon-container[style*="--icon-url"] {
    position: relative
}

.c-un-sdgs>.header>.icon-container[style*="--icon-url"]:after {
    background-color: var(--color-white);
    content: "";
    display: block;
    height: 100%;
    inset: 0;
    -webkit-mask-image: var(--icon-url);
    mask-image: var(--icon-url);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 32%;
    mask-size: 32%;
    position: absolute;
    width: 100%
}

.c-un-sdgs>.header>.icon-container[style*="--primary-color"] picture {
    mix-blend-mode: overlay
}

.c-un-sdgs>.header>p {
    display: block;
    font: var(--font-size-20);
    grid-area: p;
    margin: 0;
    text-transform: uppercase;
    width: 100%
}

@media screen and (max-width: 842px) {
    .c-un-sdgs>.header>p {
        font-size:1rem;
        line-height: 1
    }
}

.c-un-sdgs>.header>h2 {
    color: var(--primary-color,var(--color-orange));
    font: var(--font-size-40);
    font-weight: var(--font-weight-bold);
    grid-area: f;
    margin: 0
}

.c-un-sdgs>.content {
    --width-max: 794px;
    margin: 0 auto;
    width: min(var(--width-max),calc(100vw - var(--width-side-min)*2))
}

.c-un-sdgs .images {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(8px,1.5vw,15px)
}

.c-un-sdgs .images picture {
    --size: clamp(60px,10vw,100px);
    height: var(--size);
    width: var(--size)
}

.c-un-sdgs .images picture img {
    height: 100%;
    width: 100%
}

.widget-stock-price-component {
    background: #e6f7fe;
    height: var(--height);
    height: -webkit-min-content;
    height: -moz-min-content;
    height: min-content;
    transform: translateY(-50%);
    width: auto
}

@media screen and (max-width: 1200px) {
    .widget-stock-price-component {
        transform:translateY(-15%)
    }
}

.widget-stock-price-component>a {
    color: inherit;
    display: block;
    font: inherit;
    height: 100%;
    text-decoration: inherit;
    width: auto
}

.widget-stock-price-component>a>div,.widget-stock-price-component>div {
    height: 100%;
    padding: 60px 70px 43px;
    width: auto
}

@media screen and (max-width: 1200px) {
    .widget-stock-price-component>a>div,.widget-stock-price-component>div {
        --padding:clamp(5px,55px,13vw);
        padding: var(--padding) var(--padding) 32px var(--padding)
    }
}

.widget-stock-price-component h2 {
    color: var(--color-blue);
    font: var(--font-size-18);
    margin: 0
}

@media screen and (max-width: 1200px) {
    .widget-stock-price-component h2 {
        font-size:.8125rem
    }
}

.widget-stock-price-component .wrapper>data {
    background-color: transparent;
    font-size: 6.625rem;
    font-weight: var(--font-weight-bold);
    line-height: 8.375rem
}

@media screen and (max-width: 1200px) {
    .widget-stock-price-component .wrapper>data {
        font-size:5.125rem;
        line-height: 6.4375rem
    }
}

.widget-stock-price-component .wrapper>div {
    font-size: 1.5625rem;
    font-weight: var(--font-weight-semibold);
    line-height: 1.9375rem;
    margin-bottom: 23px
}

.widget-stock-price-component .wrapper>div data {
    color: var(--color,#10ac00)
}

.widget-stock-price-component .wrapper>div data.red {
    color: #ac0000
}

@media screen and (max-width: 1200px) {
    .widget-stock-price-component .wrapper>div {
        font-size:1.125rem;
        line-height: 1.4375rem;
        margin-bottom: 0
    }
}

.widget-stock-price-component time {
    font: var(--font-size-16)
}

@media screen and (max-width: 1200px) {
    .widget-stock-price-component time {
        font-size:.74813rem;
        line-height: .9375rem
    }
}

.widget-stock-price-component+* {
    background: var(--color-light-orange)
}

.c-file-archive-manual-tab-panel {
    border-collapse: collapse;
    opacity: 1;
    overflow-x: auto;
    overflow-y: hidden;
    transition: opacity .3s ease-in-out
}

.c-file-archive-manual-tab-panel[data-hidden=true] {
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute
}

.c-file-archive-manual-tab-panel,.c-file-archive-manual-tab-panel tbody,.c-file-archive-manual-tab-panel thead {
    display: block;
    width: 100%
}

.c-file-archive-manual-tab-panel td,.c-file-archive-manual-tab-panel th {
    min-width: 227px;
    overflow: hidden;
    overflow-wrap: break-word;
    white-space: normal;
    width: 100%
}

.c-file-archive-manual-tab-panel tr {
    display: flex
}

.c-file-archive-manual-tab-panel tr td,.c-file-archive-manual-tab-panel tr th {
    padding: 16px 20px
}

.c-file-archive-manual-tab-panel thead th {
    background-color: #fff7f4;
    font: var(--font-size-18);
    font-weight: var(--font-weight-extrabold);
    text-align: start;
    text-transform: uppercase
}

.c-file-archive-manual-tab-panel tbody tr:nth-child(2n) {
    background-color: #fff7f4
}

.c-file-archive-manual-tab-panel tbody tr:nth-child(odd) {
    background-color: var(--color-white)
}

.c-file-archive-manual-tab-panel tbody th {
    font: var(--font-size-18);
    font-weight: var(--font-weight-extrabold);
    text-align: start
}

.c-file-archive-manual-tab-panel tbody a {
    --color: var(--color-black);
    color: var(--color);
    padding-left: 24px;
    position: relative;
    text-decoration: inherit
}

.c-file-archive-manual-tab-panel tbody a:hover {
    --color: var(--color-blue);
    text-decoration: underline
}

.c-file-archive-manual-tab-panel tbody a {
    --icon-url: url(/images/icon-link.svg)
}

.c-file-archive-manual-tab-panel tbody a[data-file-extension=".pdf"] {
    --icon-url: url(/images/icon-pdf.svg)
}

.c-file-archive-manual-tab-panel tbody a[data-file-extension=".mp4"] {
    --icon-url: url(/images/icon-video.svg)
}

.c-file-archive-manual-tab-panel tbody a:before {
    background-color: var(--color);
    content: "";
    display: inline-block;
    height: 20px;
    left: 0;
    -webkit-mask-image: var(--icon-url);
    mask-image: var(--icon-url);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: absolute;
    top: 1px;
    width: 20px
}

.c-file-archive-modular-finance-tab-panel {
    border-collapse: collapse;
    opacity: 1;
    overflow-x: auto;
    overflow-y: hidden;
    transition: opacity .3s ease-in-out
}

.c-file-archive-modular-finance-tab-panel[data-hidden=true] {
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute
}

.c-file-archive-modular-finance-tab-panel,.c-file-archive-modular-finance-tab-panel tbody,.c-file-archive-modular-finance-tab-panel thead {
    display: block;
    width: 100%
}

.c-file-archive-modular-finance-tab-panel td,.c-file-archive-modular-finance-tab-panel th {
    min-width: 227px;
    overflow: hidden;
    overflow-wrap: break-word;
    white-space: normal;
    width: 100%
}

.c-file-archive-modular-finance-tab-panel tr {
    display: flex
}

.c-file-archive-modular-finance-tab-panel tr td,.c-file-archive-modular-finance-tab-panel tr th {
    padding: 16px 20px
}

.c-file-archive-modular-finance-tab-panel thead th {
    background-color: #fff7f4;
    font: var(--font-size-18);
    font-weight: var(--font-weight-extrabold);
    text-align: start;
    text-transform: uppercase
}

.c-file-archive-modular-finance-tab-panel tbody tr:nth-child(2n) {
    background-color: #fff7f4
}

.c-file-archive-modular-finance-tab-panel tbody tr:nth-child(odd) {
    background-color: var(--color-white)
}

.c-file-archive-modular-finance-tab-panel tbody th {
    font: var(--font-size-18);
    font-weight: var(--font-weight-bold);
    text-align: start
}

.c-file-archive-modular-finance-tab-panel tbody a {
    --color: var(--color-black);
    color: var(--color);
    padding-left: 24px;
    position: relative;
    text-decoration: inherit
}

.c-file-archive-modular-finance-tab-panel tbody a:hover {
    --color: var(--color-blue);
    text-decoration: underline
}

.c-file-archive-modular-finance-tab-panel tbody a {
    --icon-url: url(/images/icon-link.svg)
}

.c-file-archive-modular-finance-tab-panel tbody a[data-file-extension=".pdf"] {
    --icon-url: url(/images/icon-pdf.svg)
}

.c-file-archive-modular-finance-tab-panel tbody a[data-file-extension=".mp4"] {
    --icon-url: url(/images/icon-video.svg)
}

.c-file-archive-modular-finance-tab-panel tbody a:before {
    background-color: var(--color);
    content: "";
    display: inline-block;
    height: 20px;
    left: 0;
    -webkit-mask-image: var(--icon-url);
    mask-image: var(--icon-url);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: absolute;
    top: 1px;
    width: 20px
}
