/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

body {
    margin: 0
}

article,
aside,
footer,
header,
nav,
section {
    display: block
}

figcaption,
figure,
main {
    display: block
}

figure {
    margin: 1em 40px
}

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

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

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:active,
a:hover {
    outline-width: 0
}

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

b,
strong {
    font-weight: inherit
}

b,
strong {
    font-weight: bolder
}

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

dfn {
    font-style: italic
}

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

audio,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

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

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

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

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

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

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: .35em .625em .75em
}

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

progress {
    display: inline-block;
    vertical-align: baseline
}

textarea {
    overflow: auto
}

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

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

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

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

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

details,
menu {
    display: block
}

summary {
    display: list-item
}

canvas {
    display: inline-block
}

template {
    display: none
}

[hidden] {
    display: none
}

@font-face {
    font-family: swiper-icons;
    src: url(data:application/font-woff;charset=utf-8;base64,\ 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);
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

:host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box;
    transform: translateZ(0)
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d {
    perspective: 1200px
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
    transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
    scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after {
    height: 1px;
    width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after {
    width: 1px;
    height: var(--swiper-virtual-size)
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-prev,
.swiper-button-next {
    position: absolute;
    top: var(--swiper-navigation-top-offset, 50%);
    width: calc(var(--swiper-navigation-size) / 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none
}

.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
    display: none !important
}

.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
    transform: rotate(180deg)
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 10px);
    right: auto
}

.swiper-button-lock {
    display: none
}

.swiper-button-prev:after,
.swiper-button-next:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
    content: "prev"
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
    content: "next"
}

.swiper-pagination {
    position: relative;
    display: flex;
    justify-content: center;
    margin: 30px 0;
    transition: .3s opacity;
    transform: translateZ(0);
    z-index: 10
}

@media (min-width: 992px) {
    .swiper-pagination {
        display: block;
        position: absolute
    }
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
    display: none !important
}

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: var(--swiper-pagination-bottom, 0);
    top: var(--swiper-pagination-top, auto);
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    display: inline-block;
    background: var(--blue-light);
    transform-origin: center center;
    transform: scale(0);
    transition: transform .5s var(--transition-1);
    position: relative;
    transition: .6s ease-in-out
}

.visible .swiper-pagination-bullet {
    transform: scale(1)
}

.swiper-pagination-bullet:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--blue-dark);
    transition: transform .5s var(--transition-1);
    transform-origin: center center;
    transform: scale(0)
}

@media (hover: hover) {
    .swiper-pagination-bullet:hover:after {
        transform: scaleX(1)
    }
}

@media (min-width: 992px) {
    .swiper-pagination-bullet {
        width: 10px;
        height: 10px
    }
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    transform-origin: left center
}

.swiper-pagination-bullet-active:after {
    transform: scale(1)
}

.swiper-vertical>.swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
    right: var(--swiper-pagination-right, 8px);
    left: var(--swiper-pagination-left, auto);
    top: 50%;
    transform: translate3d(0, -50%, 0)
}

.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block
}

.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: .2s transform, .2s top
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translate(-50%);
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s left
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s right
}

.swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit)
}

.swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0
}

.swiper-vertical>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    touch-action: none;
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, .1))
}

.swiper-scrollbar-disabled>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-vertical>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-vertical {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, .5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container>img,
.swiper-zoom-container>svg,
.swiper-zoom-container>canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move;
    touch-action: none
}

.swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-grid>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: .6;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
    content: "";
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(50px)
}

.swiper-cube .swiper-slide-next+.swiper-slide {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-creative .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    transform-origin: center bottom;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden
}

:root {
    --blue: #1e2796;
    --blue-dark: #010056;
    --blue-light: #6fe4fc;
    --purple: #8973ff;
    --gray: #858585;
    --yellow: #f8bc38;
    --orange: #f55f3f;
    --black: #000;
    --white: #fff;
    --vh: 1vh;
    --font-family-britanicaSEB: "BSemiExpandedBlack", sans-serif;
    --font-family-britanicaSEEB: "BSemiExpandedExtraBold", sans-serif;
    --font-family-britanicaThin: "BThin", sans-serif;
    --font-family-britanicaLight: "BLight", sans-serif;
    --font-family-gellix: "GRegular", sans-serif;
    --font-size-base: 16px;
    --line-height-base: 1.5rem;
    --font-size-h1: 2.5rem;
    --font-size-h2: 2rem;
    --font-size-h3: 1.75rem;
    --font-size-h4: 1.5rem;
    --font-size-h5: 1.25rem;
    --font-size-h6: 1rem;
    --font-weight-h1: 500;
    --font-weight-h2: 500;
    --font-weight-h3: 500;
    --font-weight-h4: 500;
    --font-weight-h5: 500;
    --font-weight-h6: 500;
    --text-base-size: 1em;
    --text-scale-ratio: 1.2;
    --text-xs: calc((1em / var(--text-scale-ratio)) / var(--text-scale-ratio));
    --text-sm: calc(var(--text-xs) * var(--text-scale-ratio));
    --text-md: calc(var(--text-sm) * var(--text-scale-ratio) * var(--text-scale-ratio));
    --text-lg: calc(var(--text-md) * var(--text-scale-ratio));
    --text-xl: calc(var(--text-lg) * var(--text-scale-ratio));
    --breakpoint-xs: 375px;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --breakpoint-xxl: 1440px;
    --grid-wrap-space: 15px;
    --grid-wrap-width-xs: 100%;
    --grid-wrap-width-sm: 540px;
    --grid-wrap-width-md: 720px;
    --grid-wrap-width-lg: 960px;
    --grid-wrap-width-xl: 1140px;
    --grid-col-space: 30px;
    --border-radius: 0;
    --spacing: 20px;
    --transition-cubic-bezier: cubic-bezier(.3, .86, .36, .95);
    --transition-cubic-bezier2: cubic-bezier(.4, 0, 0, 1);
    --viewport-height-mobile: 100vh;
    --transition-1: cubic-bezier(.25, .1, .25, 1);
    --transition-2: cubic-bezier(.42, 0, .58, 1);
    --transition-3: cubic-bezier(.25, .25, .75, .75);
    --transition-4: cubic-bezier(.6, -.28, .735, .045);
    --transition-5: cubic-bezier(.175, .885, .32, 1.275);
    --transition-6: cubic-bezier(.68, -.55, .265, 1.55);
    --transition-7: cubic-bezier(.47, 0, .745, .715)
}

@font-face {
    font-family: BSemiExpandedBlack;
    src: url(../fonts/b-semi-expanded-black.woff2) format("woff2"), url(../fonts/b-semi-expanded-black.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: BSemiExpandedExtraBold;
    src: url(../fonts/b-semi-expanded-extra-bold.woff2) format("woff2"), url(../fonts/b-semi-expanded-extra-bold.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: BLight;
    src: url(../fonts/b-light.woff2) format("woff2"), url(../fonts/b-light.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: BThin;
    src: url(../fonts/b-thin.woff2) format("woff2"), url(../fonts/b-thin.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: GRegular;
    src: url(../fonts/g-regular.woff2) format("woff2"), url(../fonts/g-regular.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: GrRegular;
    src: url(../fonts/gr-regular.woff2) format("woff2"), url(../fonts/gr-regular.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: icomoon;
    src: url(data:application/vnd.ms-fontobject;base64,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);
    src: url(data:application/vnd.ms-fontobject;base64,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) format("embedded-opentype"), url(data:font/ttf;base64,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) format("truetype"), url(data:font/woff;base64,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) format("woff"), url(/img/icomoon.svg?o2h7u6#icomoon) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: block
}

[class^=icon-],
[class*=" icon-"] {
    font-family: icomoon !important;
    speak: never;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-play:before {
    content: ""
}

.icon-facebook:before {
    content: ""
}

.icon-instagram:before {
    content: ""
}

.icon-linkedin:before {
    content: ""
}

.icon-youtube:before {
    content: ""
}

.icon-arrow:before {
    content: ""
}

.icon-arrow-down:before {
    content: ""
}

.icon-arrow-thin:before {
    content: ""
}

.icon-x-mark:before {
    content: ""
}

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

ul {
    margin: 0;
    padding: 0;
    -webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    -webkit-padding-start: 0
}

li {
    list-style-type: none
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    padding: 0
}

iframe,
button {
    border: none
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    -webkit-padding-before: 0;
    -webkit-padding-start: 0;
    -webkit-padding-end: 0;
    -webkit-padding-after: 0;
    min-width: auto
}

body:before {
    content: "(xs: 375px, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1440px)";
    display: none
}

html {
    scroll-behavior: smooth
}

html,
body {
    color: var(--blue-dark);
    font-family: var(--font-family-gellix)
}

body {
    cursor: none
}

::selection,
::-moz-selection {
    color: var(--white);
    background-color: var(--blue-light)
}

.title {
    font-size: 2.25rem;
    margin-bottom: 30px;
    line-height: 1;
    word-wrap: break-word
}

.title span {
    color: var(--blue-light);
    display: inline-block
}

.title>div {
    opacity: 0;
    transform: translateY(20px);
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1), clip-path .75s var(--transition-1)
}

.title>div:nth-child(1) {
    transition-delay: 75ms
}

.title>div:nth-child(2) {
    transition-delay: .15s
}

.title>div:nth-child(3) {
    transition-delay: .225s
}

.title>div:nth-child(4) {
    transition-delay: .3s
}

.title>div:nth-child(5) {
    transition-delay: .375s
}

.title>div:nth-child(6) {
    transition-delay: .45s
}

.title>div:nth-child(7) {
    transition-delay: .525s
}

.title>div:nth-child(8) {
    transition-delay: .6s
}

.title>div:nth-child(9) {
    transition-delay: .675s
}

.title>div:nth-child(10) {
    transition-delay: .75s
}

.title.visible>div {
    opacity: 1;
    transform: translateY(0);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}

@media (min-width: 768px) {
    .title {
        font-size: 2rem
    }
}

@media (min-width: 1600px) {
    .title {
        font-size: 3.2rem
    }
}

@media (min-width: 1920px) {
    .title {
        font-size: 5vh
    }
}

@media screen and (min-width: 1920px) and (min-height: 1080px) {
    .title {
        font-size: 4.25vh
    }
}

.more {
    font-family: var(--font-family-britanicaSEB);
    color: var(--blue-light);
    position: relative;
    display: inline-block;
    transition: transform .5s var(--transition-1), opacity .5s var(--transition-1);
    font-size: 1.125rem;
    opacity: 0
}

.more span {
    position: relative;
    z-index: 2
}

.more span strong {
    position: relative;
    z-index: 2;
    transition: color .3s ease
}

.more i {
    font-size: 14px;
    margin-left: 10px;
    display: inline-block;
    transform-origin: center center;
    position: relative;
    z-index: 1;
    transition: all .5s var(--transition-1)
}

.more.visible {
    opacity: 1
}

@media (min-width: 1920px) {
    .more {
        font-size: 2.25vh
    }
}

.more-effect span:after {
    content: "";
    position: absolute;
    top: -10px;
    left: -20px;
    width: calc(100% + 40px);
    height: calc(100% + 20px);
    background-color: var(--blue-dark);
    clip-path: circle(0% at 50% 50%);
    transition: clip-path .5s var(--transition-1)
}

@media (hover: hover) {
    .more-effect:hover {
        transform: translate(20px)
    }

    .more-effect:hover i {
        transform: rotate(45deg) scale(1.75);
        margin-left: 20px
    }

    .more-effect:hover span:after {
        clip-path: circle(150% at 50% 50%)
    }
}

.subtitle {
    font-size: 3rem;
    margin-bottom: 30px;
    color: var(--blue-light)
}

.line {
    position: relative
}

.line:after {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--blue-light);
    transition: transform .5s ease;
    transform: scaleX(0);
    transform-origin: left center
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.h-blue {
    color: var(--blue-light) !important
}

.h-blue-bg {
    background-color: var(--blue-light) !important
}

.h-purple {
    color: var(--purple) !important
}

.h-purple-bg {
    background-color: var(--purple) !important
}

.h-rotate-45 {
    transform: rotate(45deg);
    display: inline-block;
    margin: 0 3px
}

.h-full {
    width: 100%
}

a {
    color: inherit;
    text-decoration: none
}

a:hover {
    text-decoration: none
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-family-britanicaSEB)
}

h1 {
    font-size: var(--font-size-h1);
    font-weight: var(--font-weight-h1)
}

h2 {
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-h2)
}

h3 {
    font-size: var(--font-size-h3);
    font-weight: var(--font-weight-h3)
}

h4 {
    font-size: var(--font-size-h4);
    font-weight: var(--font-weight-h4)
}

h5 {
    font-size: 1.1rem;
    font-weight: var(--font-weight-h5)
}

@media (min-width: 768px) {
    h5 {
        font-size: 1.125rem
    }
}

@media (min-width: 992px) {
    h5 {
        font-size: var(--font-size-h5)
    }
}

h6 {
    font-size: var(--font-size-h6);
    font-weight: var(--font-weight-h6)
}

p {
    font-size: var(--font-base);
    line-height: var(--line-height-base)
}

.wrap {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 100%
}

@media (min-width: 992px) {
    .wrap {
        padding: 0;
        width: calc(100vw - 60px)
    }
}

@media (min-width: 1200px) {
    .wrap {
        width: 89.1666666667vw
    }
}

@media (min-width: 992px) {
    .grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 31.25vw
    }
}

.column {
    padding: 0 15px
}

.column h4 {
    font-family: var(--font-family-britanicaSEEB);
    margin-bottom: 30px;
    font-size: 1.35rem
}

@media (min-width: 1920px) {
    .column h4 {
        font-size: 2.75vh
    }
}

@media (max-aspect-ratio: 198.5/100) and (min-width: 1920px) {
    .column h4 {
        font-size: 2.5vh
    }
}

.column h3 {
    font-size: 2rem;
    line-height: 1;
    color: var(--blue-light);
    margin-bottom: 30px;
    font-family: var(--font-family-britanicaSEB)
}

@media (min-width: 1920px) {
    .column h3 {
        font-size: 5vh
    }
}

@media (max-aspect-ratio: 198.5/100) and (min-width: 1920px) {
    .column h3 {
        font-size: 4vh
    }
}

.column h3>div,
.column h4>div {
    opacity: 0;
    transform: translateY(20px);
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition: opacity .5s var(--transition-1), transform .5s var(--transition-1), clip-path .5s var(--transition-1)
}

.column h3>div:nth-child(1),
.column h4>div:nth-child(1) {
    transition-delay: .05s
}

.column h3>div:nth-child(2),
.column h4>div:nth-child(2) {
    transition-delay: .1s
}

.column h3>div:nth-child(3),
.column h4>div:nth-child(3) {
    transition-delay: .15s
}

.column h3>div:nth-child(4),
.column h4>div:nth-child(4) {
    transition-delay: .2s
}

.column h3>div:nth-child(5),
.column h4>div:nth-child(5) {
    transition-delay: .25s
}

.column h3>div:nth-child(6),
.column h4>div:nth-child(6) {
    transition-delay: .3s
}

.column h3>div:nth-child(7),
.column h4>div:nth-child(7) {
    transition-delay: .35s
}

.column h3>div:nth-child(8),
.column h4>div:nth-child(8) {
    transition-delay: .4s
}

.column h3>div:nth-child(9),
.column h4>div:nth-child(9) {
    transition-delay: .45s
}

.column h3>div:nth-child(10),
.column h4>div:nth-child(10) {
    transition-delay: .5s
}

.column h3.visible>div,
.column h4.visible>div {
    opacity: 1;
    transform: translateY(0);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}

@media (min-width: 992px) {

    .column h3>div,
    .column h4>div {
        transition: opacity .75s var(--transition-1), transform .75s var(--transition-1), clip-path .75s var(--transition-1)
    }

    .column h3>div:nth-child(1),
    .column h4>div:nth-child(1) {
        transition-delay: 75ms
    }

    .column h3>div:nth-child(2),
    .column h4>div:nth-child(2) {
        transition-delay: .15s
    }

    .column h3>div:nth-child(3),
    .column h4>div:nth-child(3) {
        transition-delay: .225s
    }

    .column h3>div:nth-child(4),
    .column h4>div:nth-child(4) {
        transition-delay: .3s
    }

    .column h3>div:nth-child(5),
    .column h4>div:nth-child(5) {
        transition-delay: .375s
    }

    .column h3>div:nth-child(6),
    .column h4>div:nth-child(6) {
        transition-delay: .45s
    }

    .column h3>div:nth-child(7),
    .column h4>div:nth-child(7) {
        transition-delay: .525s
    }

    .column h3>div:nth-child(8),
    .column h4>div:nth-child(8) {
        transition-delay: .6s
    }

    .column h3>div:nth-child(9),
    .column h4>div:nth-child(9) {
        transition-delay: .675s
    }

    .column h3>div:nth-child(10),
    .column h4>div:nth-child(10) {
        transition-delay: .75s
    }
}

.column p {
    font-size: 1rem;
    line-height: 1.25;
    margin-bottom: 3vh
}

.column p:last-child {
    margin-bottom: 0
}

.column p>div {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .5s var(--transition-1), transform .5s var(--transition-1)
}

.column p>div:nth-child(1) {
    transition-delay: .05s
}

.column p>div:nth-child(2) {
    transition-delay: .1s
}

.column p>div:nth-child(3) {
    transition-delay: .15s
}

.column p>div:nth-child(4) {
    transition-delay: .2s
}

.column p>div:nth-child(5) {
    transition-delay: .25s
}

.column p>div:nth-child(6) {
    transition-delay: .3s
}

.column p>div:nth-child(7) {
    transition-delay: .35s
}

.column p>div:nth-child(8) {
    transition-delay: .4s
}

.column p>div:nth-child(9) {
    transition-delay: .45s
}

.column p>div:nth-child(10) {
    transition-delay: .5s
}

.column p>div:nth-child(11) {
    transition-delay: .55s
}

.column p>div:nth-child(12) {
    transition-delay: .6s
}

.column p>div:nth-child(13) {
    transition-delay: .65s
}

.column p>div:nth-child(14) {
    transition-delay: .7s
}

.column p>div:nth-child(15) {
    transition-delay: .75s
}

.column p>div:nth-child(16) {
    transition-delay: .8s
}

.column p>div:nth-child(17) {
    transition-delay: .85s
}

.column p>div:nth-child(18) {
    transition-delay: .9s
}

.column p>div:nth-child(19) {
    transition-delay: .95s
}

.column p>div:nth-child(20) {
    transition-delay: 1s
}

.column p.visible>div {
    opacity: 1;
    transform: translateY(0)
}

@media (min-width: 992px) {
    .column p>div {
        transition: opacity .75s var(--transition-1), transform .75s var(--transition-1)
    }

    .column p>div:nth-child(1) {
        transition-delay: 75ms
    }

    .column p>div:nth-child(2) {
        transition-delay: .15s
    }

    .column p>div:nth-child(3) {
        transition-delay: .225s
    }

    .column p>div:nth-child(4) {
        transition-delay: .3s
    }

    .column p>div:nth-child(5) {
        transition-delay: .375s
    }

    .column p>div:nth-child(6) {
        transition-delay: .45s
    }

    .column p>div:nth-child(7) {
        transition-delay: .525s
    }

    .column p>div:nth-child(8) {
        transition-delay: .6s
    }

    .column p>div:nth-child(9) {
        transition-delay: .675s
    }

    .column p>div:nth-child(10) {
        transition-delay: .75s
    }

    .column p>div:nth-child(11) {
        transition-delay: .825s
    }

    .column p>div:nth-child(12) {
        transition-delay: .9s
    }

    .column p>div:nth-child(13) {
        transition-delay: .975s
    }

    .column p>div:nth-child(14) {
        transition-delay: 1.05s
    }

    .column p>div:nth-child(15) {
        transition-delay: 1.125s
    }

    .column p>div:nth-child(16) {
        transition-delay: 1.2s
    }

    .column p>div:nth-child(17) {
        transition-delay: 1.275s
    }

    .column p>div:nth-child(18) {
        transition-delay: 1.35s
    }

    .column p>div:nth-child(19) {
        transition-delay: 1.425s
    }

    .column p>div:nth-child(20) {
        transition-delay: 1.5s
    }
}

@media (min-width: 1920px) {
    .column p {
        font-size: 2.15vh
    }
}

@media (max-aspect-ratio: 198.5/100) and (min-width: 1920px) {
    .column p {
        font-size: 1.85vh
    }
}

.column ul {
    font-size: 1rem;
    padding-left: 15px;
    display: inline-block
}

.column ul li {
    position: relative;
    margin-bottom: 15px;
    padding-left: 5px;
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1);
    opacity: 0;
    transform: translateY(10px)
}

.column ul li:before {
    content: "";
    position: absolute;
    top: 7px;
    left: -15px;
    width: 8px;
    height: 8px;
    background-color: var(--blue-light);
    border-radius: 50%;
    border: 1px solid var(--blue-light);
    background-color: transparent;
    transform-origin: center center;
    transform: scale(0);
    transition: transform .75s var(--transition-1)
}

.column ul li:nth-child(1) {
    transition-delay: 75ms
}

.column ul li:nth-child(1):before {
    transition-delay: 75ms
}

.column ul li:nth-child(2) {
    transition-delay: .15s
}

.column ul li:nth-child(2):before {
    transition-delay: .15s
}

.column ul li:nth-child(3) {
    transition-delay: .225s
}

.column ul li:nth-child(3):before {
    transition-delay: .225s
}

.column ul li:nth-child(4) {
    transition-delay: .3s
}

.column ul li:nth-child(4):before {
    transition-delay: .3s
}

.column ul li:nth-child(5) {
    transition-delay: .375s
}

.column ul li:nth-child(5):before {
    transition-delay: .375s
}

.column ul li:nth-child(6) {
    transition-delay: .45s
}

.column ul li:nth-child(6):before {
    transition-delay: .45s
}

.column ul li:nth-child(7) {
    transition-delay: .525s
}

.column ul li:nth-child(7):before {
    transition-delay: .525s
}

.column ul li:nth-child(8) {
    transition-delay: .6s
}

.column ul li:nth-child(8):before {
    transition-delay: .6s
}

.column ul li:nth-child(9) {
    transition-delay: .675s
}

.column ul li:nth-child(9):before {
    transition-delay: .675s
}

.column ul li:nth-child(10) {
    transition-delay: .75s
}

.column ul li:nth-child(10):before {
    transition-delay: .75s
}

.column ul.visible li {
    opacity: 1;
    transform: translateY(0)
}

.column ul.visible li:before {
    transform: scale(1)
}

@media (min-width: 1920px) {
    .column ul {
        font-size: 2.15vh
    }
}

@media (max-aspect-ratio: 198.5/100) and (min-width: 1920px) {
    .column ul {
        font-size: 1.85vh
    }
}

.column .more {
    opacity: 0
}

.column .more.visible {
    opacity: 1
}

@media (min-width: 768px) {
    .column h3 {
        font-size: 2rem
    }
}

@media (min-width: 992px) {
    .column {
        padding: 0
    }
}

@media (min-width: 1200px) and (max-width: 1799px) {
    .column h3 {
        font-size: 2.35rem
    }

    .column h4 {
        font-size: 1.15rem
    }

    .column p,
    .column ul {
        font-size: .95rem
    }
}

@media (min-width: 1800px) {
    .column h3 {
        font-size: 2.7rem
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .column h2 {
        margin-bottom: 15px
    }

    .column h4 {
        font-size: 1.1rem;
        margin-bottom: 15px
    }

    .column ul,
    .column p {
        font-size: .95rem
    }

    .column ul li {
        margin-bottom: 10px
    }
}

.l-header {
    position: fixed;
    z-index: 5;
    top: 0;
    left: 0;
    width: 100%;
    background: transparent;
    transition: background .3s ease
}

.l-header.l-header-scrolled,
.l-header.l-header-privacy {
    background: rgba(255, 255, 255, .75);
    backdrop-filter: blur(10px)
}

.l-header.l-header-scrolled .l-nav-link,
.l-header.l-header-privacy .l-nav-link {
    color: var(--blue-dark)
}

.l-header.l-header-scrolled .l-logo,
.l-header.l-header-privacy .l-logo {
    padding: 0 !important
}

.l-header.l-header-scrolled .l-logo svg,
.l-header.l-header-privacy .l-logo svg {
    width: 120px;
    transition: .3s ease
}

@media (min-width: 768px) {

    .l-header.l-header-scrolled .l-logo svg,
    .l-header.l-header-privacy .l-logo svg {
        width: 160px
    }
}

.l-header.l-header-scrolled .l-logo g,
.l-header.l-header-privacy .l-logo g {
    fill: var(--blue-dark)
}

.l-header.l-header-scrolled .l-hamburger-line,
.l-header.l-header-privacy .l-hamburger-line {
    background-color: var(--blue-dark) !important
}

.l-header .l-header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 15px;
    margin: 0 auto
}

@media (min-width: 992px) {
    .l-header .l-header-inner {
        padding-left: 0;
        padding-right: 0;
        width: calc(100vw - 60px)
    }
}

@media (min-width: 1200px) {
    .l-header .l-header-inner {
        width: 89.1666666667vw
    }
}

.l-header .l-logo {
    padding: 15px 0;
    display: inline-block;
    transform: translate(0);
    transition: transform .4s ease, padding .3s ease, opacity .3s;
    transform-origin: left top;
    position: relative
}

.l-header .l-logo:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 75px;
    height: 80px;
    background-color: var(--blue-dark);
    z-index: 1;
    transform: scaleY(0);
    transform-origin: top center;
    transition: transform .4s ease
}

.l-header .l-logo svg {
    width: 160px;
    height: auto;
    min-width: 120px;
    position: relative;
    z-index: 2
}

.l-header .l-logo svg g {
    transition: .3 ease
}

.l-header .l-hamburger {
    display: none;
    flex-direction: column;
    justify-content: space-around;
    width: 30px;
    height: 30px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 10;
    position: relative;
    opacity: 0;
    transition: .3s ease
}

@media (max-width: 1199px) {
    .l-header .l-hamburger {
        display: flex
    }
}

.l-header .l-hamburger .l-hamburger-line {
    width: 100%;
    height: 3px;
    background-color: var(--white);
    border-radius: 2px;
    transition: all .3s ease;
    transform-origin: center
}

.l-header .l-hamburger[aria-expanded=true] .l-hamburger-line:nth-child(1) {
    transform: rotate(45deg) translate(7px, 7px)
}

.l-header .l-hamburger[aria-expanded=true] .l-hamburger-line:nth-child(2) {
    opacity: 0
}

.l-header .l-hamburger[aria-expanded=true] .l-hamburger-line:nth-child(3) {
    transform: rotate(-45deg) translate(8px, -8px)
}

@media (max-width: 1200px) {
    .l-header .menu-telecom-navigation-container {
        position: fixed;
        z-index: 5
    }

    .l-header .menu-telecom-navigation-container li {
        height: 50px;
        padding-left: 15px
    }

    .l-header .menu-telecom-navigation-container li.l-btn {
        margin: 15px 15px 0
    }
}

.l-header .l-header-nav {
    font-family: var(--font-family-britanicaSEB);
    display: flex;
    align-items: center;
    gap: 30px
}

@media (max-width: 1199px) {
    .l-header .l-header-nav {
        position: fixed;
        top: 0;
        right: 0;
        width: 100%;
        max-width: 300px;
        height: 100vh;
        background: var(--white);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 80px 0 30px;
        margin-right: 0;
        gap: 0;
        transform: translate(100%);
        transition: transform .3s ease;
        z-index: 5;
        box-shadow: -2px 0 10px rgba(0, 0, 0, .3)
    }
}

@media (max-width: 991px) {
    .l-header .l-header-nav {
        margin-right: 0
    }
}

@media (max-width: 1199px) {
    .l-header .l-header-nav.l-menu-open {
        transform: translate(0)
    }
}

.l-header .l-header-nav-dark .l-nav-link {
    color: var(--blue-dark)
}

.l-header .l-menu-backdrop {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, .5);
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease, visibility .3s ease;
    z-index: 4;
    pointer-events: none
}

@media (max-width: 1199px) {
    .l-header .l-menu-backdrop {
        display: block
    }
}

.l-header .l-menu-backdrop.l-backdrop-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto
}

.l-header .l-nav-link {
    color: var(--white);
    font-family: var(--font-family-britanicaSEB);
    font-size: clamp(1.2rem, 2.5vw, 18px);
    text-decoration: none;
    transition: .3s ease;
    position: relative;
    transform: translate(0)
}

@media (max-width: 1199px) {
    .l-header .l-nav-link {
        font-size: clamp(1rem, 2.5vw, 20px);
        width: 100%;
        padding: 15px 0;
        border-bottom: 1px solid rgba(0, 0, 0, .1)
    }
}

@media (hover: hover) {
    .l-header .l-nav-link:hover {
        opacity: .8
    }
}

.l-header .l-nav-link--btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 19px;
    background-color: var(--blue-light);
    color: var(--blue-dark);
    border-radius: 10px;
    border: none;
    white-space: nowrap;
    font-size: 16px;
    transition: all .3s var(--transition-1);
    opacity: 0
}

@media (min-width: 768px) {
    .l-header .l-nav-link--btn {
        padding: 14px 30px
    }
}

@media (min-width: 992px) {
    .l-header .l-nav-link--btn {
        font-size: 18px;
        padding: 14px 30px
    }
}

@media (hover: hover) {
    .l-header .l-nav-link--btn:hover {
        opacity: .9;
        background-color: var(--blue-light)
    }
}

.page-data-center .l-header .l-nav-link--btn {
    background-color: #8f45ed;
    color: #fff
}

@media (hover: hover) {
    .page-data-center .l-header .l-nav-link--btn:hover {
        background-color: #010056;
        color: #fff
    }
}

@media (min-width: 992px) {
    .l-header .l-logo {
        padding: 30px 15px
    }

    .l-header .l-logo:after {
        width: 100px;
        height: 90px
    }

    .l-header .l-logo svg {
        width: 200px
    }
}

#logo-shape,
#logo-arrow {
    fill: var(--blue-light)
}

.l-logo-texts {
    transition: opacity .4s var(--transition-1)
}

.l-logo-text {
    fill: var(--blue-dark)
}

#logo-arrow {
    opacity: 0
}

.l-scrolled a {
    padding: 0 15px;
    transform: translate(0) scale(.85)
}

.l-scrolled a:after {
    transform: scaleY(1)
}

.l-scrolled .l-logo-texts,
.l-header.l-header-loader .l-btn,
.l-header.l-header-loader .l-nav-link,
.l-header.l-header-loader .l-logo {
    opacity: 0
}

.l-header.l-header-loader .l-hamburger .l-hamburger-line {
    background-color: var(--blue-dark)
}

.l-header.l-header-black .l-nav-link {
    color: var(--blue-dark)
}

.l-header.l-header-black .l-hamburger .l-hamburger-line {
    background-color: var(--blue-dark)
}

.boxes {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 15px
}

@media (min-width: 576px) {
    .boxes {
        flex-wrap: nowrap;
        margin-bottom: 40.125vw
    }
}

@media (min-width: 992px) {
    .boxes {
        padding: 0 15%;
        margin-bottom: 28.125vw
    }
}

.box {
    position: relative;
    aspect-ratio: 1/1;
    color: var(--white);
    padding: 25px;
    width: 100%;
    overflow: hidden;
    margin-bottom: 15px
}

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

.box:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: transform .75s var(--transition-1);
    z-index: 1
}

.box>svg {
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0;
    transition: opacity .5s var(--transition-1) .5s, transform .5s var(--transition-1) .5s;
    z-index: 3;
    transform-origin: center center
}

.box:nth-child(1):after {
    background-color: var(--yellow);
    transform: scaleX(0);
    transform-origin: left center
}

.box:nth-child(1)>svg {
    left: 0;
    bottom: 0;
    top: unset;
    transform: translateY(100%)
}

.box:nth-child(1) .box-img:after {
    background: linear-gradient(158deg, var(--yellow) 50%, rgba(125, 185, 232, 0) 100%)
}

.box:nth-child(2):after {
    background-color: var(--blue-dark);
    transform: scaleX(0);
    transform-origin: right center
}

.box:nth-child(2)>svg {
    transform: translate(100%)
}

.box:nth-child(2) .box-img:after {
    background: linear-gradient(158deg, var(--blue-dark) 50%, rgba(125, 185, 232, 0) 100%)
}

.box:nth-child(3):after {
    background-color: var(--orange);
    transform: scaleY(0);
    transform-origin: top center
}

.box:nth-child(3)>svg {
    transform: translateY(-100%)
}

.box:nth-child(3) .box-img:after {
    background: linear-gradient(158deg, var(--orange) 50%, rgba(125, 185, 232, 0) 100%)
}

.box h3 {
    font-size: 1.85rem;
    padding-right: 60px;
    position: relative;
    z-index: 3
}

.box h3>div {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1), clip-path .75s var(--transition-1);
    transition-delay: .2s
}

.box h3>div:nth-child(1) {
    transition-delay: 75ms
}

.box h3>div:nth-child(2) {
    transition-delay: .15s
}

.box h3>div:nth-child(3) {
    transition-delay: .225s
}

.box h3>div:nth-child(4) {
    transition-delay: .3s
}

.box h3>div:nth-child(5) {
    transition-delay: .375s
}

.box .box-play {
    position: absolute;
    bottom: 20px;
    right: 20px;
    opacity: 0;
    transform: scale(.75);
    transition: opacity .5s var(--transition-1) .7s, transform .5s var(--transition-1) .7s;
    transform-origin: center center;
    z-index: 3;
    display: inline-block
}

.box .box-play span {
    padding: 15px 15px 15px 18px;
    display: inline-block;
    border: 2px solid var(--white);
    border-radius: 50%;
    transform-origin: center center;
    transition: transform .4s var(--transition-1)
}

.box .box-img {
    position: absolute;
    bottom: -3px;
    right: 0;
    z-index: 2;
    width: 85%;
    height: auto;
    text-align: right;
    opacity: 0;
    transition: opacity .5s var(--transition-1) .7s
}

.box .box-img img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
    transform-origin: center center;
    transform: translateY(50px)
}

.box .box-img:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2
}

.box.visible:after {
    transform: scaleY(1)
}

.box.visible h3>div {
    opacity: 1;
    transform: translateY(0)
}

.box.visible .box-play {
    transform: scale(1);
    opacity: 1
}

.box.visible>svg {
    opacity: 1;
    transform: translate(0)
}

.box.visible .box-img {
    opacity: 1
}

@media (hover: hover) {
    .box:hover .box-play span {
        transform: scale(1.2)
    }
}

@media (min-width: 576px) {
    .box {
        width: unset;
        flex: 1;
        margin-bottom: 0
    }

    .box:nth-child(2) {
        transform-origin: top center;
        transform: translateY(100%)
    }

    .box h3 {
        font-size: 18px
    }
}

@media (min-width: 768px) {
    .box h3 {
        font-size: 20px
    }
}

@media (min-width: 992px) {
    .box h3 {
        font-size: 22px
    }
}

@media (min-width: 1600px) {
    .box h3 {
        font-size: 30px
    }
}

@media (min-width: 1920px) {
    .box h3 {
        font-size: 40px
    }
}

.l-boxes {
    width: 100%;
    padding: 60px 0;
    background-color: var(--white)
}

.l-boxes-container {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

.l-boxes-cards {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    width: 100%;
    padding: 0 20px
}

@media (min-width: 1200px) {
    .l-boxes-cards {
        padding: 0
    }
}

.l-boxes-card {
    position: relative;
    padding: 32px 24px;
    border-radius: 0;
    width: 100%;
    min-height: 200px;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.l-boxes-card--pink {
    background-color: #8973ff
}

.l-boxes-card--blue {
    background-color: var(--blue-dark)
}

.l-boxes-card--purple {
    background-color: var(--blue)
}

.l-boxes-card--light-purple {
    background-color: var(--purple)
}

.l-boxes-card-title {
    font-family: var(--font-family-britanicaSEB);
    font-size: clamp(22px, 3.5vw, 40px);
    line-height: 1.3;
    color: var(--white);
    margin-bottom: 16px
}

.l-boxes-card-text {
    position: absolute;
    bottom: 24px;
    left: 24px;
    font-family: var(--font-family-britanicaSEB);
    font-size: clamp(24px, 2vw, 50px);
    line-height: 1;
    color: var(--white)
}

@media (min-width: 768px) {
    .l-boxes {
        padding: 80px 0
    }

    .l-boxes-cards {
        grid-template-columns: repeat(2, 1fr)
    }

    .l-boxes-card {
        padding: 36px 28px;
        min-height: 220px
    }

    .l-boxes-card-title {
        margin-bottom: 18px
    }

    .l-boxes-card-text {
        bottom: 28px;
        left: 28px
    }
}

@media (min-width: 1200px) {
    .l-boxes-container {
        width: 89.1666666667vw
    }

    .l-boxes-card {
        padding: 44px 36px
    }
}

@media (min-width: 1600px) {
    .l-boxes-cards {
        grid-template-columns: repeat(3, 1fr)
    }
}

.cookie-banner {
    position: fixed;
    right: 16px;
    left: 16px;
    bottom: 16px;
    z-index: 9999;
    width: auto;
    background: #010056;
    color: #fff;
    border-radius: 0;
    box-shadow: 0 18px 40px rgba(7, 12, 70, .35);
    padding: 22px;
    opacity: 0;
    transform: translateY(16px);
    transition: opacity .2s ease, transform .2s ease
}

.cookie-banner.is-visible {
    opacity: 1;
    transform: translateY(0)
}

.cookie-banner__inner {
    display: flex;
    flex-direction: column;
    gap: 12px
}

.cookie-banner__title {
    font-family: var(--font-family-britanicaSEB);
    margin: 0;
    font-size: clamp(24px, 2vw, 34px);
    letter-spacing: .2px
}

.cookie-banner__text {
    font-family: var(--font-family-gellix);
    margin: 0 0 15px;
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, .85)
}

.cookie-banner__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px
}

.cookie-banner__button {
    border: 0;
    border-radius: 10px;
    padding: 10px 16px;
    font-size: 10px;
    font-weight: 700;
    cursor: pointer;
    transition: transform .15s ease, box-shadow .15s ease;
    min-width: 0;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    white-space: nowrap;
    width: calc((100% - 10px)/2);
    flex: 1 1 calc((100% - 10px)/2)
}

.cookie-banner__button:focus-visible {
    outline: 2px solid #a8e5ff;
    outline-offset: 2px
}

.cookie-banner__button--primary,
.cookie-banner__button--secondary {
    background: #8fe6ff;
    color: #0a0b4f
}

.cookie-banner__button:hover {
    transform: translateY(-1px)
}

.cookie-banner__arrow {
    font-size: 8px
}

.cookie-banner__button:nth-child(3) {
    width: 100%;
    flex-basis: 100%
}

@media (min-width: 769px) {
    .cookie-banner {
        right: 95px;
        left: auto;
        bottom: 32px;
        width: min(570px, 100vw - 32px);
        padding: 28px 30px
    }

    .cookie-banner__actions {
        flex-wrap: nowrap;
        gap: 6px
    }

    .cookie-banner__button {
        padding: 12px 22px;
        font-size: 13px;
        min-width: 170px;
        width: 170px;
        flex: 0 0 170px
    }

    .cookie-banner__button:nth-child(3) {
        width: 131px;
        flex-basis: 131px
    }
}

.circle-cursor {
    z-index: 10001
}

.main {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    padding: 480px 0 45px
}

.main .wrap,
.main .grid {
    position: relative;
    z-index: 3
}

.main .l-btn {
    display: inline-flex;
    opacity: 0
}

.main h1,
.main h2,
.main p {
    opacity: 0
}

.main h1>div,
.main h2>div,
.main p>div {
    opacity: 0;
    transform: translateY(20px);
    clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
    will-change: opacity, transform, clip-path;
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1), clip-path .75s var(--transition-1)
}

.main h1>div:nth-child(1),
.main h2>div:nth-child(1),
.main p>div:nth-child(1) {
    transition-delay: 75ms
}

.main h1>div:nth-child(2),
.main h2>div:nth-child(2),
.main p>div:nth-child(2) {
    transition-delay: .15s
}

.main h1>div:nth-child(3),
.main h2>div:nth-child(3),
.main p>div:nth-child(3) {
    transition-delay: .225s
}

.main h1>div:nth-child(4),
.main h2>div:nth-child(4),
.main p>div:nth-child(4) {
    transition-delay: .3s
}

.main h1>div:nth-child(5),
.main h2>div:nth-child(5),
.main p>div:nth-child(5) {
    transition-delay: .375s
}

.main h1>div:nth-child(6),
.main h2>div:nth-child(6),
.main p>div:nth-child(6) {
    transition-delay: .45s
}

.main h1>div:nth-child(7),
.main h2>div:nth-child(7),
.main p>div:nth-child(7) {
    transition-delay: .525s
}

.main h1>div:nth-child(8),
.main h2>div:nth-child(8),
.main p>div:nth-child(8) {
    transition-delay: .6s
}

.main h1>div:nth-child(9),
.main h2>div:nth-child(9),
.main p>div:nth-child(9) {
    transition-delay: .675s
}

.main h1>div:nth-child(10),
.main h2>div:nth-child(10),
.main p>div:nth-child(10) {
    transition-delay: .75s
}

.main h1.visible>div,
.main h2.visible>div,
.main p.visible>div {
    opacity: 1;
    transform: translateY(0);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.main h1 {
    font-size: 2.65rem;
    line-height: 1;
    margin-bottom: 30px
}

.main h1 span {
    color: var(--blue-light)
}

.main h2 {
    font-size: 1.35rem;
    line-height: 1;
    margin-bottom: 30px
}

.main .more {
    opacity: 0
}

.main.main-visible h1,
.main.main-visible h2,
.main.main-visible p {
    opacity: 1
}

@media (max-width: 991px) {

    .main h1,
    .main h2,
    .main p {
        width: 100%
    }

    .main h1 br,
    .main h2 br,
    .main p br {
        display: block
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .main {
        padding-top: 70vh
    }
}

@media (min-width: 768px) and (max-width: 991px) and (orientation: portrait) {
    .main {
        padding-top: 55vh
    }

    .main .main-lines {
        top: 7vh
    }
}

@media (min-width: 992px) {
    .main {
        padding: 0;
        margin-top: 100px;
        height: calc(var(--vh, 1vh) * 100 - 100px);
        justify-content: center;
        min-height: calc(100vh - 90px)
    }

    .main h1 {
        font-size: 3.4rem
    }

    .main h2 {
        font-size: 1.75rem
    }

    .main .grid {
        gap: 0
    }
}

@media (min-width: 992px) and (max-width: 1199px) and (orientation: portrait) {
    .main {
        height: calc(var(--vh, 1vh) * 50);
        padding-top: 60px
    }
}

@media (min-width: 1200px) {
    .main h1 {
        font-size: 4rem
    }
}

@media (min-width: 1600px) {
    .main h1 {
        font-size: 5.5rem
    }

    .main h2 {
        font-size: 2rem
    }
}

@media (min-width: 1920px) {
    .main p {
        font-size: 2vh
    }
}

@media (max-aspect-ratio: 198.5/100) and (min-width: 1920px) {
    .main p {
        font-size: 1.75vh
    }
}

@media (min-width: 1200px) and (max-width: 1799px) {
    .main .column p {
        font-size: 1.1rem
    }
}

.main-lines {
    position: absolute;
    top: 14vh;
    right: -15vw;
    z-index: 1;
    width: 130vw;
    opacity: 0
}

@media (min-width: 768px) {
    .main-lines {
        top: 0;
        width: 120vw;
        right: -10vw
    }
}

@media (min-width: 992px) {
    .main-lines {
        top: 50%;
        left: 50%;
        right: -10vw;
        width: 90vw;
        transform: translate(-30%, -50%)
    }
}

.main-shape {
    position: absolute;
    top: 10vh;
    right: 20vw;
    z-index: 2
}

.main-shape-video {
    position: absolute;
    top: 12vh;
    right: 50%;
    z-index: 4;
    width: 779px;
    height: 1008px;
    object-fit: cover;
    object-position: center;
    mask: url(#mask0);
    transform: scale(.35) translate(50%);
    transform-origin: top right;
    clip-path: circle(0% at 25% 0%);
    transition: all .8s var(--transition-1);
    aspect-ratio: 1920/1080
}

@media (min-width: 768px) {
    .main-shape-video {
        top: 15vh
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .main-shape-video {
        transform: scale(.4) translate(50%)
    }
}

@media (min-width: 992px) {
    .main-shape-video {
        top: 0;
        right: 10.6vw
    }
}

.main-play {
    background-color: var(--blue-light);
    color: var(--white);
    border-radius: 50%;
    padding: 15px 15px 15px 18px;
    width: 60px;
    height: 60px;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 480px;
    right: 22%;
    z-index: 8;
    display: flex;
    opacity: 0;
    font-size: 22px;
    transform-origin: center center;
    transform: translateY(-65px) scale(.75)
}

@media (min-width: 992px) {
    .main-play {
        top: unset;
        bottom: 5%;
        right: 24vw
    }
}

.services-title {
    margin-bottom: 60px
}

.services {
    position: relative;
    padding: 0 15px;
    overflow: hidden;
    margin-bottom: 60px
}

@media (min-width: 992px) {
    .services {
        padding: 0;
        margin-bottom: 0
    }
}

.service-text>.swiper {
    display: flex;
    flex-direction: column-reverse
}

.service-text p {
    font-size: 1rem;
    line-height: 1.25;
    margin-bottom: 3vh
}

.service-text p:last-child {
    margin-bottom: 0
}

.service-text p>div {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1)
}

.service-text p>div:nth-child(1) {
    transition-delay: 75ms
}

.service-text p>div:nth-child(2) {
    transition-delay: .15s
}

.service-text p>div:nth-child(3) {
    transition-delay: .225s
}

.service-text p>div:nth-child(4) {
    transition-delay: .3s
}

.service-text p>div:nth-child(5) {
    transition-delay: .375s
}

.service-text p>div:nth-child(6) {
    transition-delay: .45s
}

.service-text p>div:nth-child(7) {
    transition-delay: .525s
}

.service-text p>div:nth-child(8) {
    transition-delay: .6s
}

.service-text p>div:nth-child(9) {
    transition-delay: .675s
}

.service-text p>div:nth-child(10) {
    transition-delay: .75s
}

.service-text p>div:nth-child(11) {
    transition-delay: .825s
}

.service-text p>div:nth-child(12) {
    transition-delay: .9s
}

.service-text p>div:nth-child(13) {
    transition-delay: .975s
}

.service-text p>div:nth-child(14) {
    transition-delay: 1.05s
}

.service-text p>div:nth-child(15) {
    transition-delay: 1.125s
}

.service-text p>div:nth-child(16) {
    transition-delay: 1.2s
}

.service-text p>div:nth-child(17) {
    transition-delay: 1.275s
}

.service-text p>div:nth-child(18) {
    transition-delay: 1.35s
}

.service-text p>div:nth-child(19) {
    transition-delay: 1.425s
}

.service-text p>div:nth-child(20) {
    transition-delay: 1.5s
}

.service-text p.visible>div {
    opacity: 1;
    transform: translateY(0)
}

.scroll-show .service-text p svg>div {
    opacity: 1;
    transform: translateY(0);
    transition: none
}

@media (min-width: 992px) {
    .service-text {
        width: 35.6770833333vw
    }

    .service-text>.swiper {
        flex-direction: column
    }
}

@media (min-width: 992px) and (max-width: 1799px) {
    .service-text p {
        font-size: .9rem
    }
}

@media (min-width: 1920px) {
    .service-text p {
        font-size: 2.15vh
    }
}

@media (max-aspect-ratio: 198.5/100) and (min-width: 1920px) {
    .service-text p {
        font-size: 1.85vh
    }
}

.service-text-slide {
    transition: transform .35s var(--transition-1), opacity .35s var(--transition-1);
    will-change: transform, opacity
}

@media (min-width: 992px) {
    .service-text-slide {
        padding-bottom: 60px
    }
}

.services-shape {
    position: relative;
    overflow: hidden
}

.services-shape>svg {
    aspect-ratio: 534.86/764.9;
    width: 60vw;
    margin-left: 20vw;
    transform-origin: bottom center
}

.services-shape>svg path {
    clip-path: circle(130% at 50% 0%);
    transition: fill .75s var(--transition-1), clip-path .75s var(--transition-1);
    stroke: var(--blue-light);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round
}

.services-shape>svg path.service-item-outline {
    clip-path: circle(0% at 75% 0%);
    fill: var(--white)
}

.services-shape>svg path.service-item-fill {
    fill: var(--blue-dark);
    clip-path: circle(0% at 25% 100%)
}

.services-shape.visible>svg path.service-item-outline {
    clip-path: circle(120% at 50% 0%)
}

.services-shape .services-icons {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-25%, -65%);
    opacity: 0;
    transition: opacity .75s var(--transition-1)
}

.services-shape .services-icons svg {
    width: 17vw
}

.services-shape .services-icons svg path {
    fill: var(--white)
}

.services-shape .services-icons .service-icon-hidden {
    opacity: 0
}

.services-shape .services-icons.visible {
    opacity: 1
}

@media (min-width: 992px) {
    .services-shape {
        position: absolute;
        top: 0;
        right: 11vw;
        margin-bottom: 0;
        overflow: visible;
        padding-bottom: 0
    }

    .services-shape>svg {
        width: 27.8572916667vw;
        margin-left: 0
    }

    .services-shape .services-icons {
        transform: translate(-50%, -50%)
    }

    .services-shape .services-icons svg {
        width: 7vw
    }
}

.service-arrows-desktop {
    display: none;
    position: relative;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-100%) rotate(11deg) translateY(-11px);
}

.service-arrows-desktop a {
    display: block;
    position: relative;
    width: auto;
    height: auto;
    top: 0;
    left: 0
}

.service-arrows-desktop a:after {
    display: none
}

.service-arrows-desktop a.visible svg path.service-arrow-outline {
    clip-path: circle(140% at 50% 0%)
}

.service-arrows-desktop a.visible .service-arrow-text {
    opacity: 1
}

.service-arrows-desktop svg {
    width: 135px;
    position: relative
}

.service-arrows-desktop svg path {
    stroke: var(--blue-light);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    will-change: clip-path;
    clip-path: circle(0% at 75% 0%);
    transition: fill .7s var(--transition-1), clip-path .7s var(--transition-1)
}

.service-arrows-desktop svg path.service-arrow-outline {
    fill: var(--white)
}

.service-arrows-desktop svg path.service-arrow-fill {
    fill: var(--blue-light)
}

.service-arrows-desktop .service-arrow-next {
    top: -17px
}

.service-arrows-desktop .service-arrow-next svg path.service-arrow-fill {
    clip-path: circle(0% at 25% 100%)
}

.service-arrows-desktop .service-arrow-next .service-arrow-text {
    transform: translate(10px, 10px) rotate(-45deg)
}

.service-arrows-desktop .service-arrow-prev {
    position: relative
}

.service-arrows-desktop .service-arrow-prev svg path.service-arrow-fill {
    clip-path: circle(0% at 25% 0%)
}

.service-arrows-desktop .service-arrow-prev .service-arrow-text {
    transform: translate(10px, 15px) rotate(45deg)
}

.service-arrows-desktop .service-arrow-text {
    position: absolute;
    top: 40%;
    left: 30%;
    color: var(--blue-dark);
    font-family: var(--font-family-britanicaSEB);
    transform-origin: center center;
    font-size: 1.35rem;
    opacity: 0;
    transition: color .6s var(--transition-1), opacity .6s var(--transition-1)
}

@media (hover: hover) {
    .service-arrows-desktop a:hover svg path.service-arrow-fill {
        clip-path: circle(140% at 50% 0%)
    }

    .service-arrows-desktop a:hover .service-arrow-text {
        color: var(--white)
    }
}

@media (min-width: 992px) {
    .service-arrows-desktop {
        display: block
    }
}

@media (min-width: 992px) and (max-width: 1399px) {
    .service-arrows-desktop svg {
        width: 100px
    }
}

@media (min-width: 1400px) and (max-width: 1799px) {
    .service-arrows-desktop svg {
        width: 130px
    }
}

@media (min-width: 1800px) {
    .service-arrows-desktop svg {
        width: 180px
    }
}

.service-arrows-mobile {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px
}

.service-arrows-mobile a {
    display: block;
    position: relative;
    width: auto;
    height: auto;
    top: 0;
    left: 0;
    width: 50%
}

.service-arrows-mobile a:after {
    display: none
}

.service-arrows-mobile svg {
    width: 100%;
    position: relative
}

.service-arrows-mobile svg path {
    stroke: var(--blue-light);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    will-change: clip-path;
    transition: fill .7s var(--transition-1), clip-path .7s var(--transition-1);
    clip-path: circle(0% at 0 50%);
    fill: var(--white)
}

.service-arrows-mobile svg path.service-arrow-outline {
    fill: var(--white)
}

.service-arrows-mobile svg path.service-arrow-fill {
    fill: var(--blue-light)
}

.service-arrows-mobile .service-arrow-next .service-arrow-text {
    transform: translate(-50%, -12px)
}

.service-arrows-mobile .service-arrow-next.visible svg path {
    clip-path: circle(140% at 0 50%)
}

.service-arrows-mobile .service-arrow-prev .service-arrow-text {
    transform: translate(-50%, -12px)
}

.service-arrows-mobile .service-arrow-prev.visible svg path {
    clip-path: circle(140% at 100% 50%)
}

.service-arrows-mobile .service-arrow-text {
    position: absolute;
    top: 50%;
    left: 50%;
    color: var(--blue-dark);
    font-family: var(--font-family-britanicaSEB);
    transform-origin: center center;
    font-size: 1.2rem;
    transform: translate(-50%)
}

@media (min-width: 576px) {
    .service-arrows-mobile .service-arrow-text {
        font-size: 1.7rem
    }
}

@media (min-width: 992px) {
    .service-arrows-mobile {
        display: none
    }
}

.service-shape-desktop {
    display: none
}

.service-shape-desktop video {
    position: relative;
    top: .1%;
    left: .1%;
    width: 99.8%;
    height: 99.8%;
    object-fit: cover
}

@media (min-width: 992px) {
    .service-shape-desktop {
        display: block
    }
}

@media (min-width: 2800px) {
    .service-shape-desktop video {
        position: relative;
        left: -1px
    }
}

.service-shape-mobile {
    display: block
}

@media (min-width: 992px) {
    .service-shape-mobile {
        display: none
    }
}

.tab-item {
    position: relative;
    padding-bottom: 15px;
    margin-bottom: 15px
}

.tab-item:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--blue-light);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform .75s var(--transition-1)
}

.tab-item:nth-child(1) .tab-title,
.tab-item:nth-child(1) .tab-title span,
.tab-item:nth-child(1):after {
    transition-delay: 75ms
}

.tab-item:nth-child(2) .tab-title,
.tab-item:nth-child(2) .tab-title span,
.tab-item:nth-child(2):after {
    transition-delay: .15s
}

.tab-item:nth-child(3) .tab-title,
.tab-item:nth-child(3) .tab-title span,
.tab-item:nth-child(3):after {
    transition-delay: .225s
}

.tab-item:nth-child(4) .tab-title,
.tab-item:nth-child(4) .tab-title span,
.tab-item:nth-child(4):after {
    transition-delay: .3s
}

.tab-item:nth-child(5) .tab-title,
.tab-item:nth-child(5) .tab-title span,
.tab-item:nth-child(5):after {
    transition-delay: .375s
}

.tab-item:nth-child(6) .tab-title,
.tab-item:nth-child(6) .tab-title span,
.tab-item:nth-child(6):after {
    transition-delay: .45s
}

.tab-item:nth-child(7) .tab-title,
.tab-item:nth-child(7) .tab-title span,
.tab-item:nth-child(7):after {
    transition-delay: .525s
}

.tab-item:nth-child(8) .tab-title,
.tab-item:nth-child(8) .tab-title span,
.tab-item:nth-child(8):after {
    transition-delay: .6s
}

.tab-item:nth-child(9) .tab-title,
.tab-item:nth-child(9) .tab-title span,
.tab-item:nth-child(9):after {
    transition-delay: .675s
}

.tab-item:nth-child(10) .tab-title,
.tab-item:nth-child(10) .tab-title span,
.tab-item:nth-child(10):after {
    transition-delay: .75s
}

.tab-item.visible:after {
    transform: scaleX(1)
}

.tab-title {
    font-size: 1.125rem;
    line-height: 1;
    font-family: var(--font-family-britanicaSEB);
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    cursor: pointer;
    opacity: 0;
    transform: translateY(20px);
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1), clip-path .75s var(--transition-1)
}

.tab-title:after {
    content: attr(data-title);
    position: absolute;
    top: 0;
    left: 0;
    color: var(--blue-light);
    transition: all .5s ease;
    clip-path: circle(0% at 50% 50%);
    display: inline-block
}

.tab-title span {
    color: var(--blue-light);
    font-size: 18px;
    display: inline-block;
    transform: scale(0);
    transform-origin: center center;
    transition: transform .3s var(--transition-1)
}

.tab-title.tab-active:after,
.tab-title:hover:after {
    clip-path: circle(100% at 50% 50%)
}

.visible .tab-title {
    opacity: 1;
    transform: translateY(0);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}

.visible .tab-title span {
    transform: scale(1)
}

.tab-title.tab-active span {
    transform: rotate(-180deg)
}

@media (min-width: 768px) {
    .tab-title {
        font-size: 1.5rem
    }
}

@media (min-width: 1920px) {
    .tab-title {
        font-size: 2.75vh
    }
}

.tab-content {
    display: none;
    font-size: 1rem;
    padding-top: 15px;
    line-height: 1.2
}

@media (min-width: 1920px) {
    .tab-content {
        font-size: 1.75vh
    }
}

@media (min-width: 992px) {
    .sitemap {
        display: flex;
        flex-wrap: wrap;
        align-items: center
    }

    .sitemap>div {
        width: 50%
    }
}

@media (min-width: 992px) {
    .sitemap-column-text {
        padding-left: 6.25vw
    }
}

.sitemap-items {
    display: flex;
    align-items: center;
    margin-bottom: 60px
}

@media (min-width: 992px) {
    .sitemap-items {
        margin-bottom: 0
    }
}

.sitemap-item {
    cursor: none
}

.sitemap-item svg {
    fill: none
}

.sitemap-item svg div {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: var(--font-family-britanicaSEB);
    font-size: 1.875rem;
    line-height: 1.2;
    opacity: 0;
    transform-origin: center center
}

.sitemap-item svg path {
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: fill .7s var(--transition-1), clip-path .7s var(--transition-1)
}

.sitemap-item svg path.sitemap-item-outline {
    fill: var(--white);
    clip-path: circle(0% at 100% 0)
}

.sitemap-item svg path.sitemap-item-fill {
    clip-path: circle(0% at 25% 100%)
}

.sitemap-item.visible svg div {
    opacity: 1
}

.sitemap-item.visible svg path.sitemap-item-outline {
    clip-path: circle(135% at 100% 0%)
}

@media (min-width: 992px) {
    .sitemap-item svg div {
        transform: scale(.5);
        transition: color .5s var(--transition-1), opacity .5s var(--transition-1) .45s, transform .5s var(--transition-1) .45s
    }

    .sitemap-item.visible svg div {
        transform: scale(1)
    }
}

@media (hover: hover) {
    .sitemap-item:hover svg path.sitemap-item-fill {
        clip-path: circle(116% at 50% 100%)
    }

    .sitemap-item:hover svg div {
        color: var(--white)
    }
}

.sitemap-item-1 svg,
.sitemap-item-2 svg {
    width: 30vw;
    aspect-ratio: 295/406.24
}

.sitemap-item-1 svg path,
.sitemap-item-2 svg path {
    stroke-width: 2.11
}

@media (min-width: 992px) {

    .sitemap-item-1 svg,
    .sitemap-item-2 svg {
        width: 15.3645833333vw
    }
}

.sitemap-item-1 svg path {
    stroke: var(--purple)
}

.sitemap-item-1 svg path.sitemap-item-fill {
    fill: var(--purple)
}

.sitemap-item-2 {
    transform: translate(-6.3020833333vw)
}

.sitemap-item-2 svg path {
    stroke: rgba(1, 0, 86, .75)
}

.sitemap-item-2 svg path.sitemap-item-fill {
    fill: rgba(1, 0, 86, .75)
}

.sitemap-item-2 svg div {
    color: rgba(1, 0, 86, .75)
}

.sitemap-item-3 {
    transform: translate(-14vw)
}

.sitemap-item-3 svg {
    width: 40vw;
    aspect-ratio: 419/577
}

.sitemap-item-3 svg path {
    stroke: var(--blue-light);
    stroke-width: 3
}

.sitemap-item-3 svg path.sitemap-item-fill {
    fill: var(--blue-light)
}

.sitemap-item-3 svg div {
    color: var(--blue-light);
    font-size: 2.65rem
}

@media (min-width: 992px) {
    .sitemap-item-3 {
        transform: translate(-12.5041666667vw)
    }

    .sitemap-item-3 svg {
        width: 21.8229166667vw
    }
}

.section {
    position: relative;
    z-index: 2
}

.section-img {
    margin-bottom: 30px
}

.section-img img,
.section-img picture {
    width: 90vw;
    opacity: 0;
    transform: scale(.5) translateY(20px);
    transform-origin: center center;
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1)
}

.section-img img.visible,
.section-img picture.visible {
    opacity: 1;
    transform: scale(1) translateY(0)
}

@media (min-width: 768px) {
    .section-img {
        margin-bottom: 11.5681233933vh
    }

    .section-img img,
    .section-img picture {
        width: 20vw
    }
}

.section-img-center {
    text-align: center
}

.section-1 {
    margin-bottom: 60px
}

@media (min-width: 992px) {
    .section-1 {
        margin-bottom: 0
    }

    .section-1 .column {
        width: 38.3854166667vw
    }

    .section-1 .column p {
        width: 78%
    }
}

@media (min-width: 1400px) {
    .section-1 .column p {
        width: 83.1750339213%
    }
}

@media (min-width: 1900px) {
    .section-1 .column p {
        width: 76%
    }
}

.section-2,
.section-2 .column {
    margin-bottom: 60px
}

.section-2 .column:last-child {
    margin-bottom: 0
}

@media (min-width: 992px) {
    .section-2 {
        gap: 36.1458333333vw;
        margin-bottom: 0
    }

    .section-2 .column {
        margin-bottom: 0
    }

    .section-2 .column:nth-child(2) {
        max-width: 24.84375vw
    }

    .section-2 .column:last-child {
        max-width: 26.40625vw;
        transform-origin: top center;
        transform: translateY(20vh)
    }
}

.section-3 {
    margin-bottom: 60px
}

@media (min-width: 992px) {
    .section-3 {
        gap: 20.2604166667vw;
        margin-bottom: 0;
        position: relative;
        z-index: 2
    }

    .section-3 .column {
        margin-bottom: 0
    }

    .section-3 .column:nth-child(2) {
        width: 29.9479166667vw
    }

    .section-3 .column:last-child {
        width: 38.3333333333vw;
        transform-origin: top center
    }
}

@media (min-width: 1800px) {
    .section-3 .column:last-child .title {
        padding-left: 0
    }
}

.section-4 {
    margin-bottom: 60px
}

.section-4 .column:nth-child(2) {
    margin-bottom: 60px
}

@media (min-width: 992px) {
    .section-4 {
        gap: 12.5vw;
        margin-bottom: 0;
        position: relative;
        z-index: 1
    }

    .section-4 .column:nth-child(2) {
        max-width: 27.1354166667vw;
        margin-bottom: 0
    }

    .section-4 .column:last-child {
        max-width: 31.1458333333vw
    }
}

@media (min-width: 992px) and (max-width: 1199px) and (orientation: portrait) {
    .section-4 .column:last-child {
        max-width: unset
    }
}

.section-5 {
    margin-bottom: 60px
}

@media (min-width: 992px) {
    .section-5 {
        gap: 12.5vw;
        margin-bottom: 0;
        position: relative;
        z-index: 4
    }

    .section-5 .column:last-child {
        max-width: 38.3333333333vw
    }
}

.section-6 {
    margin-bottom: 60px;
    position: relative;
    z-index: 3
}

.section-6 .column {
    margin-bottom: 30px
}

@media (min-width: 992px) {
    .section-6 {
        margin-bottom: 0;
        gap: 12.5vw
    }

    .section-6 .column {
        margin-bottom: 0
    }

    .section-6 .column:nth-child(2) {
        max-width: 24.84375vw
    }
}

.shapes {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 1;
    display: none;
    overflow: hidden
}

@media (min-width: 992px) {
    .shapes {
        display: block
    }
}

.shape {
    position: relative
}

.shape path {
    clip-path: circle(0% at 75% 0%);
    will-change: clip-path;
    transition: clip-path 1.2s var(--transition-1)
}

.video-scrolled .shape path {
    transition-duration: .01s
}

.shape video {
    position: relative;
    width: 99.8%;
    height: 99.8%;
    top: .1%;
    left: .1%;
    object-fit: cover
}

.shape.visible svg path {
    clip-path: circle(120% at 50% 0%)
}

.scroll-show .shape svg path {
    transition: none;
    clip-path: circle(120% at 50% 0%) !important
}

.shape-1 {
    padding-left: 35.7291666667vw;
    z-index: 1
}

.shape-1 svg {
    width: 40.45625vw;
    aspect-ratio: 776.76/1006.52;
    position: relative;
    z-index: 2
}

.shape-1 svg path {
    clip-path: circle(0% at 81.9274936917% 0%)
}

.shape-1.visible svg path,
.video-scrolled .shape-1 svg path {
    clip-path: circle(150% at 81.9274936917% 0%)
}

.shape-1 .shape-1-lines {
    position: absolute;
    top: 23vh;
    right: -43px;
    width: 90vw;
    height: auto;
    z-index: 1;
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transform: rotate(-12.8deg);
    transition: clip-path 1s var(--transition-1);
    will-change: clip-path
}

.shape-1 .shape-1-lines.visible {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}

@media (min-width: 768px) {
    .shape-1 .shape-1-lines {
        top: 35vh;
        width: 85vw
    }
}

@media (min-width: 992px) {
    .shape-1 {
        transform: translateY(-1px)
    }

    .shape-1 .shape-1-lines {
        top: 40vh;
        width: 55vw;
        right: -2vw;
        transform: rotate(4deg);
        aspect-ratio: 2343/1045
    }
}

.shape-2 {
    z-index: 2;
    padding-left: 35.7161458333vw;
    transform: translateY(-6px)
}

.shape-2 svg {
    width: 27.8572916667vw;
    aspect-ratio: 534.86/764.9
}

.shape-2 svg path {
    clip-path: circle(0% at 26.9883707886% 0%)
}

.shape-2.visible svg path,
.video-scrolled .shape-2 svg path {
    clip-path: circle(150% at 26.9883707886% 0%)
}

.shape-3 {
    z-index: 3;
    padding-left: 23.1119791667vw
}

.shape-3 svg {
    width: 40.45625vw;
    aspect-ratio: 776.76/1006.52;
    position: relative;
    z-index: 2
}

.shape-3 svg path {
    clip-path: circle(0% at 62.9823550451% 0%)
}

.shape-3.visible svg path,
.video-scrolled .shape-3 svg path {
    clip-path: circle(150% at 62.9823550451% 0%)
}

.shape-3 .shape-3-lines {
    position: absolute;
    bottom: 0vh;
    left: -20.5729166667vw;
    width: 70.2604166667vw;
    height: auto;
    will-change: clip-path;
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition: clip-path 1s var(--transition-1);
    z-index: 3
}

.shape-3 .shape-3-lines.visible {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}

.shape-3 .shape-3-img {
    position: absolute;
    top: 28vh;
    right: 0;
    width: 42.2161458333vw;
    height: auto;
    z-index: 1;
    transition: clip-path 1.25s var(--transition-1);
    will-change: clip-path;
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%)
}

.shape-3 .shape-3-img.visible {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}

@media (max-width: 991px) {
    .shape-3 .shape-3-img {
        top: 12vh;
        width: 85vw;
        right: -38vw
    }
}

@media (min-width: 992px) {
    .shape-3 {
        transform: translateY(-12px)
    }

    .shape-3 .shape-3-lines {
        bottom: auto;
        top: 64.5009940358vh;
        aspect-ratio: 1349/642.79
    }

    .shape-3 .shape-3-img {
        top: 12.7932405567vh;
        width: 64.0104166667vw;
        right: -12.2916666667vw;
        aspect-ratio: 733.75/327.52
    }
}

.shape-4 {
    z-index: 4;
    padding-left: 24.6223958333vw
}

.shape-4 svg {
    width: 25.4052083333vw;
    aspect-ratio: 487.78/670.67
}

.shape-4 svg path {
    clip-path: circle(0% at 16.938285595% 0%)
}

.shape-4.visible svg path,
.video-scrolled .shape-4 svg path {
    clip-path: circle(150% at 16.938285595% 0%)
}

@media (min-width: 992px) {
    .shape-4 {
        transform: translateY(-18px)
    }
}

.shape-5 {
    z-index: 6;
    padding-left: 24.2057291667vw;
    position: relative
}

.shape-5 svg {
    width: 26.0432291667vw;
    aspect-ratio: 500.03/689.33
}

.shape-5 svg path {
    clip-path: circle(0% at 55.4233821247% 0%)
}

.shape-5.visible svg path,
.video-scrolled .shape-5 svg path {
    clip-path: circle(150% at 55.4233821247% 0%)
}

@media (min-width: 992px) {
    .shape-5 {
        transform: translateY(-26px)
    }
}

.shape-6 {
    padding-left: 22.9036458333vw;
    position: relative;
    z-index: 5
}

.shape-6 .shape-6-lines {
    position: absolute;
    aspect-ratio: 1184.5/885;
    bottom: 0;
    left: -100px;
    width: 85vw;
    opacity: .5;
    z-index: 1;
    transition: clip-path .75s var(--transition-1);
    will-change: clip-path;
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%)
}

.shape-6 .shape-6-lines.visible {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}

.shape-6 svg {
    width: 27.8572916667vw;
    aspect-ratio: 534.86/764.9;
    position: relative;
    z-index: 2
}

.shape-6 svg path {
    clip-path: circle(0% at 18.7017910838% 0%)
}

.shape-6.visible svg path,
.video-scrolled .shape-6 svg path {
    clip-path: circle(150% at 18.7017910838% 0%)
}

@media (min-width: 992px) {
    .shape-6 {
        transform: translateY(-36px)
    }

    .shape-6 .shape-6-lines {
        bottom: auto;
        top: -26.245526839vh;
        left: -19.84375vw;
        width: 61.6927083333vw
    }
}

.shape-7 {
    z-index: 7;
    padding-left: 23.39375vw
}

.shape-7 svg {
    width: 26.0432291667vw;
    aspect-ratio: 500.03/689.33
}

.shape-7 svg path {
    clip-path: circle(0% at 55.5220286365% 0%)
}

.shape-7.visible svg path,
.video-scrolled .shape-7 svg path {
    clip-path: circle(150% at 55.5220286365% 0%)
}

@media (min-width: 992px) {
    .shape-7 {
        transform: translateY(-45px)
    }
}

.shape-mobile {
    padding-left: 15%;
    padding-right: 15%;
    margin-bottom: 60px;
    position: relative;
    overflow: hidden
}

.shape-mobile svg {
    width: 100%
}

.shape-mobile path {
    transition: clip-path 1s var(--transition-1)
}

@media (min-width: 992px) {
    .shape-mobile {
        display: none
    }
}

footer {
    text-align: center;
    margin-top: 60px;
    position: relative;
    padding: 0 15px
}

@media (min-width: 992px) {
    footer {
        text-align: left;
        padding: 0
    }
}

.footer-top {
    padding: 30px 0;
    position: relative
}

.footer-top:before,
.footer-top:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: var(--blue-light);
    left: 0;
    transition: transform .75s var(--transition-1);
    transform-origin: left center;
    transform: scaleX(0)
}

.footer-top:before {
    top: -2px
}

.footer-top:after {
    bottom: -2px
}

.footer-top.visible:before,
.footer-top.visible:after {
    transform: scaleX(1)
}

@media (min-width: 992px) {
    .footer-top {
        display: flex;
        justify-content: space-between
    }
}

.footer-top--left,
.footer-top--right {
    text-align: center
}

@media (min-width: 992px) {

    .footer-top--left,
    .footer-top--right {
        text-align: left
    }
}

.footer-top--left h5,
.footer-top--right h5 {
    line-height: 3.25rem;
    margin-bottom: 5px;
    opacity: 0;
    transition: opacity .75s var(--transition-1)
}

.footer-top--left h5:nth-child(1),
.footer-top--right h5:nth-child(1) {
    transition-delay: 75ms
}

.footer-top--left h5:nth-child(2),
.footer-top--right h5:nth-child(2) {
    transition-delay: .15s
}

.footer-top--left h5:nth-child(3),
.footer-top--right h5:nth-child(3) {
    transition-delay: .225s
}

.footer-top--left h5:nth-child(4),
.footer-top--right h5:nth-child(4) {
    transition-delay: .3s
}

.footer-top--left h5:nth-child(5),
.footer-top--right h5:nth-child(5) {
    transition-delay: .375s
}

.footer-top--left h5:nth-child(6),
.footer-top--right h5:nth-child(6) {
    transition-delay: .45s
}

.footer-top--left h5:nth-child(7),
.footer-top--right h5:nth-child(7) {
    transition-delay: .525s
}

.footer-top--left h5:nth-child(8),
.footer-top--right h5:nth-child(8) {
    transition-delay: .6s
}

.footer-top--left h5:nth-child(9),
.footer-top--right h5:nth-child(9) {
    transition-delay: .675s
}

.footer-top--left h5:nth-child(10),
.footer-top--right h5:nth-child(10) {
    transition-delay: .75s
}

.visible .footer-top--left h5,
.visible .footer-top--right h5 {
    opacity: 1
}

.footer-top--left section p,
.footer-top--left section address,
.footer-top--right section p,
.footer-top--right section address {
    font-size: .875rem;
    line-height: 1.35;
    font-family: var(--font-family-britanicaLight);
    opacity: 0;
    transition: opacity .75s var(--transition-1)
}

.footer-top--left section p:nth-child(1),
.footer-top--left section address:nth-child(1),
.footer-top--right section p:nth-child(1),
.footer-top--right section address:nth-child(1) {
    transition-delay: 75ms
}

.footer-top--left section p:nth-child(2),
.footer-top--left section address:nth-child(2),
.footer-top--right section p:nth-child(2),
.footer-top--right section address:nth-child(2) {
    transition-delay: .15s
}

.footer-top--left section p:nth-child(3),
.footer-top--left section address:nth-child(3),
.footer-top--right section p:nth-child(3),
.footer-top--right section address:nth-child(3) {
    transition-delay: .225s
}

.footer-top--left section p:nth-child(4),
.footer-top--left section address:nth-child(4),
.footer-top--right section p:nth-child(4),
.footer-top--right section address:nth-child(4) {
    transition-delay: .3s
}

.footer-top--left section p:nth-child(5),
.footer-top--left section address:nth-child(5),
.footer-top--right section p:nth-child(5),
.footer-top--right section address:nth-child(5) {
    transition-delay: .375s
}

.footer-top--left section p:nth-child(6),
.footer-top--left section address:nth-child(6),
.footer-top--right section p:nth-child(6),
.footer-top--right section address:nth-child(6) {
    transition-delay: .45s
}

.footer-top--left section p:nth-child(7),
.footer-top--left section address:nth-child(7),
.footer-top--right section p:nth-child(7),
.footer-top--right section address:nth-child(7) {
    transition-delay: .525s
}

.footer-top--left section p:nth-child(8),
.footer-top--left section address:nth-child(8),
.footer-top--right section p:nth-child(8),
.footer-top--right section address:nth-child(8) {
    transition-delay: .6s
}

.footer-top--left section p:nth-child(9),
.footer-top--left section address:nth-child(9),
.footer-top--right section p:nth-child(9),
.footer-top--right section address:nth-child(9) {
    transition-delay: .675s
}

.footer-top--left section p:nth-child(10),
.footer-top--left section address:nth-child(10),
.footer-top--right section p:nth-child(10),
.footer-top--right section address:nth-child(10) {
    transition-delay: .75s
}

.visible .footer-top--left section p,
.visible .footer-top--left section address,
.visible .footer-top--right section p,
.visible .footer-top--right section address {
    opacity: 1
}

.footer-top--left section address,
.footer-top--right section address {
    margin-top: 5px;
    font-style: normal
}

.footer-top--left section address a,
.footer-top--right section address a {
    line-height: 1.5;
    transition: color .5s var(--transition-1)
}

@media (hover: hover) {

    .footer-top--left section address a,
    .footer-top--right section address a {
        position: relative
    }

    .footer-top--left section address a:after,
    .footer-top--right section address a:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: -3px;
        width: 100%;
        height: 2px;
        background-color: var(--blue-light);
        transform: scaleX(0);
        transition: transform .5s var(--transition-1);
        transform-origin: right center
    }

    .footer-top--left section address a:hover:after,
    .footer-top--right section address a:hover:after {
        transform: scale(1);
        transform-origin: left center
    }
}

@media (hover: hover) {

    .footer-top--left section address a:hover,
    .footer-top--right section address a:hover {
        color: var(--blue-light)
    }
}

@media (min-width: 992px) {

    .footer-top--left,
    .footer-top--right {
        display: flex;
        gap: 45px
    }
}

@media (min-width: 1920px) {

    .footer-top--left h5,
    .footer-top--right h5 {
        font-size: 2vh
    }

    .footer-top--left section p,
    .footer-top--left section address,
    .footer-top--right section p,
    .footer-top--right section address {
        font-size: 1.75vh
    }
}

.footer-bottom {
    font-size: 14px;
    line-height: 2;
    font-family: var(--font-family-britanicaLight);
    padding: 15px 0
}

.footer-bottom p {
    opacity: 0;
    transition: opacity .75s var(--transition-1)
}

.footer-bottom.visible p {
    opacity: 1
}

@media (min-width: 992px) {
    .footer-bottom {
        text-align: right
    }
}

@media (min-width: 1920px) {
    .footer-bottom p {
        font-size: 1.5vh
    }
}

.footer-menu {
    padding-top: 6px;
    margin-bottom: 15px
}

.footer-menu li {
    line-height: 1.875rem;
    opacity: 0;
    transition: opacity .75s var(--transition-1)
}

.footer-menu li:nth-child(1) {
    transition-delay: 75ms
}

.footer-menu li:nth-child(2) {
    transition-delay: .15s
}

.footer-menu li:nth-child(3) {
    transition-delay: .225s
}

.footer-menu li:nth-child(4) {
    transition-delay: .3s
}

.footer-menu li:nth-child(5) {
    transition-delay: .375s
}

.footer-menu li:nth-child(6) {
    transition-delay: .45s
}

.footer-menu li:nth-child(7) {
    transition-delay: .525s
}

.footer-menu li:nth-child(8) {
    transition-delay: .6s
}

.footer-menu li:nth-child(9) {
    transition-delay: .675s
}

.footer-menu li:nth-child(10) {
    transition-delay: .75s
}

.visible .footer-menu li {
    opacity: 1
}

.footer-menu li a {
    font-size: 1.075rem;
    font-family: var(--font-family-britanicaSEB);
    position: relative;
    transition: color .3s var(--transition-1)
}

.footer-menu li a span {
    margin-left: 10px;
    color: var(--blue-light);
    font-size: .825rem;
    display: inline-block;
    transition: transform .3s var(--transition-1);
    transform-origin: center center
}

.footer-menu li a strong {
    position: relative
}

@media (hover: hover) {
    .footer-menu li a strong {
        position: relative
    }

    .footer-menu li a strong:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: -5px;
        width: 100%;
        height: 2px;
        background-color: var(--blue-light);
        transform: scaleX(0);
        transition: transform .5s var(--transition-1);
        transform-origin: right center
    }

    .footer-menu li a strong:hover:after {
        transform: scale(1);
        transform-origin: left center
    }
}

@media (hover: hover) {
    .footer-menu li a:hover {
        color: var(--blue-light)
    }

    .footer-menu li a:hover span {
        transform: rotate(45deg) scale(1.3)
    }
}

@media (min-width: 768px) {
    .footer-menu {
        margin-bottom: 0
    }

    .footer-menu li {
        line-height: 2.25rem
    }
}

@media (min-width: 992px) {
    .footer-menu li a {
        font-size: 1.125rem
    }

    .footer-menu li a span {
        font-size: .9rem
    }
}

@media (min-width: 1920px) {
    .footer-menu li a {
        font-size: 2vh
    }
}

.social-media {
    font-family: var(--font-family-gellix);
    font-size: 1rem;
    margin-bottom: 30px
}

.social-media a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 12px;
    justify-content: center;
    transition: color .3s var(--transition-1);
    opacity: 0;
    transition: opacity .75s var(--transition-1)
}

.social-media a:nth-child(1) {
    transition-delay: 75ms
}

.social-media a:nth-child(2) {
    transition-delay: .15s
}

.social-media a:nth-child(3) {
    transition-delay: .225s
}

.social-media a:nth-child(4) {
    transition-delay: .3s
}

.social-media a:nth-child(5) {
    transition-delay: .375s
}

.social-media a strong {
    font-weight: 400
}

@media (hover: hover) {
    .social-media a strong {
        position: relative
    }

    .social-media a strong:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: -5px;
        width: 100%;
        height: 2px;
        background-color: var(--blue-light);
        transform: scaleX(0);
        transition: transform .3s var(--transition-1);
        transform-origin: right center
    }

    .social-media a strong:hover:after {
        transform: scale(1);
        transform-origin: left center
    }
}

.social-media a span {
    display: inline-block;
    font-size: 1.125rem;
    margin-right: 10px;
    width: 25px;
    transform: translateY(1px);
    transform-origin: center center;
    transition: transform .3s var(--transition-1)
}

.visible .social-media a {
    opacity: 1
}

@media (hover: hover) {
    .social-media a:hover {
        color: var(--blue-light)
    }

    .social-media a:hover span {
        transform: translateY(1px) scale(1.1)
    }
}

@media (min-width: 992px) {
    .social-media {
        margin-bottom: 0
    }

    .social-media li a {
        justify-content: flex-start
    }
}

@media (min-width: 1920px) {
    .social-media {
        font-size: 1.75vh
    }
}

.footer-logo {
    display: inline-block;
    margin-bottom: 30px;
    transform: scale(.85);
    opacity: 0;
    transition: transform .75s var(--transition-1), opacity .75s var(--transition-1)
}

.footer-logo img,
.footer-logo picture {
    width: 160px;
    height: auto
}

.visible .footer-logo {
    transform: scale(1);
    opacity: 1
}

@media (min-width: 992px) {

    .footer-logo img,
    .footer-logo picture {
        width: 180px;
        margin-bottom: 0
    }
}

@media (min-width: 1920px) {

    .footer-logo img,
    .footer-logo picture {
        width: 10vw
    }
}

.l-footer {
    width: 100%;
    padding: 60px 0 0;
    background-color: var(--white)
}

@media (min-width: 768px) {
    .l-footer {
        padding: 80px 0 0
    }
}

@media (min-width: 992px) {
    .l-footer {
        padding: 100px 0 0
    }
}

.l-footer-container {
    width: 100%;
    margin: 0 auto;
    padding: 0 20px
}

@media (min-width: 992px) {
    .l-footer-container {
        padding: 0;
        width: calc(100vw - 60px)
    }
}

@media (min-width: 1200px) {
    .l-footer-container {
        width: 89.1666667vw
    }
}

.l-footer-content {
    display: flex;
    flex-direction: column;
    gap: 40px;
    width: 100%;
    padding-bottom: 40px
}

@media (min-width: 768px) {
    .l-footer-content {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 40px;
        align-items: flex-start
    }
}

@media (min-width: 992px) {
    .l-footer-content {
        flex-wrap: nowrap;
        gap: 80px;
        padding-bottom: 60px;
        justify-content: space-between
    }
}

.l-footer-logo-section {
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: center;
    text-align: center;
    opacity: 0;
    transition: .3s ease
}

.visible .l-footer-logo-section {
    opacity: 1
}

@media (min-width: 768px) {
    .l-footer-logo-section {
        align-items: flex-start;
        text-align: left
    }
}

.l-footer-logo-section img {
    width: 160px;
    height: auto;
    display: block
}

@media (min-width: 992px) {
    .l-footer-logo-section img {
        width: 180px
    }
}

.l-footer-tagline {
    font-family: Gellix, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    line-height: 20px;
    color: #010056;
    margin: 0;
    max-width: 300px
}

@media (min-width: 992px) {
    .l-footer-tagline {
        max-width: 350px
    }
}

.l-footer-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
    opacity: 0;
    transition: .3s ease
}

.l-footer-column:nth-child(1) {
    transition-delay: 75ms
}

.l-footer-column:nth-child(2) {
    transition-delay: .15s
}

.l-footer-column:nth-child(3) {
    transition-delay: .225s
}

.l-footer-column:nth-child(4) {
    transition-delay: .3s
}

.l-footer-column:nth-child(5) {
    transition-delay: .375s
}

.l-footer-column:nth-child(6) {
    transition-delay: .45s
}

.l-footer-column:nth-child(7) {
    transition-delay: .525s
}

.l-footer-column:nth-child(8) {
    transition-delay: .6s
}

.l-footer-column:nth-child(9) {
    transition-delay: .675s
}

.l-footer-column:nth-child(10) {
    transition-delay: .75s
}

.visible .l-footer-column {
    opacity: 1
}

.l-footer-heading {
    font-family: var(--font-family-britanicaSEB);
    font-weight: 400;
    font-style: normal;
    line-height: 65px;
    color: #010056;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: .5px;
    font-size: 1rem
}

@media (min-width: 768px) {
    .l-footer-heading {
        font-size: 1.0625rem
    }
}

@media (min-width: 992px) {
    .l-footer-heading {
        font-size: 1.125rem
    }
}

.l-footer-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.l-footer-list a {
    font-family: Gellix, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    line-height: 20px;
    color: #010056;
    text-decoration: none;
    display: inline-block
}

@media (hover: hover) {
    .l-footer-list a:hover {
        color: #010056
    }
}

.l-footer-contact {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 0
}

.l-footer-contact p,
.l-footer-contact a {
    font-family: Gellix, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    line-height: 20px;
    color: #010056;
    margin: 0;
    text-decoration: none
}

@media (hover: hover) {
    .l-footer-contact a:hover {
        color: #010056
    }
}

.l-footer-bottom {
    width: 100%;
    padding: 30px 0;
    border-top: 1px solid rgba(30, 39, 150, .1);
    text-align: center;
    background-color: var(--white)
}

.l-footer-copyright {
    font-family: var(--font-family-britanicaSEB);
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 24px;
    color: #010056;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin: 0
}

@media (min-width: 768px) {
    .l-footer-copyright {
        font-size: 16px
    }
}

@media (min-width: 992px) {
    .l-footer-copyright {
        font-size: 16px
    }
}

.loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: calc(var(--vh, 1vh) * 100);
    background-color: var(--black);
    z-index: 10;
    will-change: clip-path;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    transition: clip-path .5s var(--transition-1)
}

.loader--active {
    clip-path: polygon(0 0, 100% 0, 100% 0, 0 0)
}

.loader--remove {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%)
}

.loader video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    object-fit: cover;
    object-position: center;
    transform: translate(-50%, -50%);
    z-index: 1;
    opacity: 0;
    transition: opacity .5s ease
}

.loader--active video {
    opacity: 1
}

.loader-counter,
.loader-logo,
.loader-text {
    position: absolute;
    z-index: 2;
    color: var(--white);
    font-family: var(--font-family-britanicaSEB);
    transform-origin: center;
    transition: clip-path .3s var(--transition-1)
}

.loader-counter:after,
.loader-logo:after,
.loader-text:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    background-color: var(--white);
    will-change: clip-path;
    clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
    transition: clip-path .3s var(--transition-1)
}

.loader-counter--visible:after,
.loader-logo--visible:after,
.loader-text--visible:after {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.loader-counter--hide:after,
.loader-logo--hide:after,
.loader-text--hide:after {
    clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
    opacity: 0
}

.loader-counter {
    bottom: 30px;
    right: 30px;
    font-size: 3rem
}

.loader-counter>div {
    opacity: 0;
    transition: opacity .4s ease
}

.loader-counter:after {
    width: 70px;
    height: 70px;
    transform: translate(-50%)
}

@media (min-width: 768px) {
    .loader-counter {
        font-size: 4rem
    }
}

@media (min-width: 992px) {
    .loader-counter {
        bottom: 60px;
        right: 60px;
        font-size: 5rem
    }

    .loader-counter:after {
        width: 100px;
        height: 100px
    }
}

.loader-logo {
    bottom: 60px;
    left: 60px;
    z-index: 3
}

.loader-logo img,
.loader-logo picture {
    width: 150px;
    height: auto;
    opacity: 0;
    transition: opacity .5s ease
}

.loader-logo:after {
    width: 100%;
    height: 70px;
    transform: translate(-50%)
}

@media (max-width: 991px) {
    .loader-logo {
        left: 50%;
        bottom: 150px;
        transform: translate(-50%)
    }
}

@media (min-width: 992px) {
    .loader-logo:after {
        height: 100px
    }
}

.loader-text {
    bottom: 60px;
    right: 0;
    text-align: center;
    z-index: 4
}

.loader-text p {
    opacity: 0;
    font-size: 16px;
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1);
    will-change: transform, opacity
}

.loader-text p>div {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1), clip-path .75s var(--transition-1);
    will-change: clip-path, transform, opacity;
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition-delay: calc(75ms * var(--order, 1))
}

.loader-text p.visible {
    opacity: 1
}

.loader-text p.visible>div {
    opacity: 1;
    transform: translateY(0);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

@media (min-width: 768px) {
    .loader-text p {
        font-size: 18px
    }
}

@media (max-width: 991px) {
    .loader-text {
        width: 100%;
        padding: 0 60px
    }

    .loader-text p br {
        display: none
    }
}

@media (max-width: 767px) {
    .loader-text {
        padding: 0 15px
    }
}

@media (min-width: 992px) {
    .loader-text {
        text-align: left;
        right: 60px
    }

    .loader-text p {
        font-size: 22px
    }
}

@media (min-width: 1920px) {
    .loader-text p {
        font-size: 2vh
    }
}

.loader-text-progress {
    position: absolute;
    bottom: -15px;
    left: 50%;
    width: 50%;
    max-width: 150px;
    height: 2px;
    border-radius: 4px;
    background-color: rgba(255, 255, 255, .1);
    z-index: 5;
    transform-origin: left center;
    transform: scaleX(0) translate(-50%);
    transition: transform .5s ease
}

.loader-text-progress>div {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--white);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform .5s ease
}

@media (min-width: 992px) {
    .loader-text-progress {
        left: 0;
        transform: scaleX(0) translate(0)
    }
}

.circle-cursor {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    pointer-events: none;
    z-index: 9999;
    transform: translate(-50%, -50%) scale(1);
    will-change: transform;
    transition: transform .3s var(--transition-1), opacity .3s var(--transition-1);
    background-color: var(--blue-light);
    border: 2px solid var(--blue-light);
    mix-blend-mode: multiply
}

.circle-cursor.hover-target {
    transform: translate(-50%, -50%) scale(2);
    opacity: .75;
    background-color: transparent
}

.circle-cursor.play-cursor {
    mix-blend-mode: normal;
    transform: translate(-50%, -50%) scale(2.25);
    opacity: 1;
    background-color: transparent
}

.circle-cursor.play-cursor:after {
    content: "PLAY";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--white);
    font-size: .5rem;
    font-family: var(--font-family-britanicaSEB)
}

.circle-cursor.play-cursor.stop-cursor {
    opacity: .65 !important;
    transform: translate(-50%, -50%) scale(1.85) !important
}

.circle-cursor.play-cursor.stop-cursor:after {
    content: "PAUSE"
}

@media (hover: hover) and (pointer: fine) {
    .circle-cursor {
        display: block
    }
}

.career {
    text-align: center;
    margin-bottom: 60px;
    padding: 10vh 15px 0
}

@media (min-width: 768px) {
    .career {
        padding: 12.85vh 15px 0;
        margin-bottom: 12.9395886889vh
    }
}

.career-text p,
.career-text .title {
    opacity: 0;
    margin: 0 auto
}

.career-text p.show,
.career-text .title.show {
    opacity: 1
}

.career-text p {
    margin-bottom: 60px
}

.career-text p>div {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1)
}

.career-text p>div:nth-child(1) {
    transition-delay: 75ms
}

.career-text p>div:nth-child(2) {
    transition-delay: .15s
}

.career-text p>div:nth-child(3) {
    transition-delay: .225s
}

.career-text p>div:nth-child(4) {
    transition-delay: .3s
}

.career-text p>div:nth-child(5) {
    transition-delay: .375s
}

.career-text p>div:nth-child(6) {
    transition-delay: .45s
}

.career-text p>div:nth-child(7) {
    transition-delay: .525s
}

.career-text p>div:nth-child(8) {
    transition-delay: .6s
}

.career-text p>div:nth-child(9) {
    transition-delay: .675s
}

.career-text p>div:nth-child(10) {
    transition-delay: .75s
}

.career-text p.visible>div {
    opacity: 1;
    transform: translateY(0)
}

.career-text .title {
    margin-bottom: 30px
}

@media (min-width: 992px) {

    .career-text p,
    .career-text .title {
        max-width: 40vw
    }
}

.career-slider {
    position: relative;
    padding: 0;
    width: 100%;
    margin-bottom: 60px
}

.career-slider .sphere-container {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(.75);
    opacity: 0;
    transition: transform .75s var(--transition-1), opacity .75s var(--transition-1);
    width: 90%;
    aspect-ratio: 1/1
}

.career-slider .sphere-container.visible {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1
}

.career-slider .sphere-container .sphere {
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    animation: rotateSphere 15s infinite linear
}

.career-slider .sphere-container .sphere div {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 4px solid var(--blue-light);
    transform-origin: center
}

.career-slider .sphere-container .sphere div.line1 {
    transform: rotateY(0)
}

.career-slider .sphere-container .sphere div.line2 {
    transform: rotateY(30deg)
}

.career-slider .sphere-container .sphere div.line3 {
    transform: rotateY(60deg)
}

.career-slider .sphere-container .sphere div.line4 {
    transform: rotateY(90deg)
}

.career-slider .sphere-container .sphere div.line5 {
    transform: rotateY(120deg)
}

.career-slider .sphere-container .sphere div.line6 {
    transform: rotateY(150deg)
}

.career-slider .sphere-container .sphere div.line7 {
    transform: rotateY(180deg)
}

@media (min-width: 992px) {
    .career-slider .sphere-container {
        width: 35vw
    }
}

@keyframes rotateSphere {
    0% {
        transform: rotateY(0)
    }

    to {
        transform: rotateY(360deg)
    }
}

.career-slider .swiper-button-prev,
.career-slider .swiper-button-next {
    font-size: 20px;
    color: var(--blue-light);
    display: none;
    opacity: 0;
    transform: scale(.5);
    transform-origin: center center;
    transition: transform .5s var(--transition-1), opacity .5s var(--transition-1)
}

.career-slider .swiper-button-prev:after,
.career-slider .swiper-button-next:after {
    content: ""
}

.career-slider .swiper-button-prev.visible,
.career-slider .swiper-button-next.visible {
    opacity: 1
}

@media (min-width: 768px) {

    .career-slider .swiper-button-prev,
    .career-slider .swiper-button-next {
        display: block
    }
}

.career-slider .swiper-button-prev.visible {
    transform: rotate(-135deg) scale(1)
}

.career-slider .swiper-button-next.visible {
    transform: rotate(45deg) scale(1)
}

@media (min-width: 768px) {
    .career-slider {
        padding: 18.89vh 0;
        margin-bottom: 30px
    }
}

.career-swiper {
    opacity: 0;
    text-align: center;
    transition: opacity .75s var(--transition-1) .3s
}

.career-swiper.visible {
    opacity: 1
}

.career-swiper .swiper-wrapper {
    align-items: center
}

.career-swiper .swiper-wrapper .swiper-slide {
    position: relative;
    border-radius: 50%;
    aspect-ratio: 1/1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 20px 45px;
    background-color: var(--blue-dark);
    transition: opacity .5s var(--transition-1), transform .5s var(--transition-1), background-color .5 var(--transition-1)
}

.career-swiper .swiper-wrapper .swiper-slide h5 {
    color: var(--white);
    font-size: 22px
}

.career-swiper .swiper-wrapper .swiper-slide>p {
    opacity: 0;
    display: none;
    margin-top: 15px;
    font-size: 14px;
    line-height: 1.2;
    transition: opacity .5s var(--transition-1)
}

.career-swiper .swiper-wrapper .swiper-slide.swiper-slide-active {
    background-color: var(--blue-light);
    opacity: 1
}

.career-swiper .swiper-wrapper .swiper-slide.swiper-slide-active h5 {
    color: var(--blue-dark)
}

.career-swiper .swiper-wrapper .swiper-slide.swiper-slide-active>p {
    opacity: 1;
    display: block
}

.career-swiper .swiper-wrapper .swiper-slide.swiper-slide-next,
.career-swiper .swiper-wrapper .swiper-slide.swiper-slide-prev {
    background-color: var(--blue)
}

.career-swiper .swiper-wrapper .swiper-slide.swiper-slide-next+.swiper-slide,
.career-swiper .swiper-wrapper .swiper-slide.swiper-slide-prev-before {
    background-color: var(--purple)
}

@media (min-width: 576px) {
    .career-swiper .swiper-slide {
        width: 38.079vw
    }

    .career-swiper .swiper-slide.swiper-slide-next,
    .career-swiper .swiper-slide.swiper-slide-prev {
        opacity: 1
    }
}

@media (min-width: 992px) {
    .career-swiper .swiper-slide {
        width: 25.079vw;
        opacity: 0
    }

    .career-swiper .swiper-slide.swiper-slide-next+.swiper-slide,
    .career-swiper .swiper-slide.swiper-slide-prev-before {
        opacity: 1
    }
}

@media (min-width: 1400px) {
    .career-swiper .swiper-slide {
        width: 19.479vw
    }
}

.career-link {
    text-align: center
}

.career-more {
    font-size: 1rem;
    font-family: var(--font-family-britanicaSEEB);
    text-transform: uppercase;
    color: var(--blue-light);
    opacity: 0;
    transition: opacity .5s var(--transition-1)
}

.career-more i {
    display: inline-block;
    transform: rotate(180deg);
    margin-left: 10px;
    transform-origin: center center;
    transition: transform .5s var(--transition-1)
}

.career-more.visible {
    opacity: 1
}

@media (hover: hover) {
    .career-more:hover i {
        transform: rotate(180deg) scale(1.5)
    }
}

.open-positions {
    padding: 60px 15px 0
}

.open-positions .title {
    text-align: center
}

@media (min-width: 768px) {
    .open-positions .title {
        text-align: left
    }
}

.table {
    width: 100%;
    max-width: 100%;
    overflow-x: scroll
}

@media (min-width: 992px) {
    .table {
        overflow: hidden
    }
}

.table-header,
.table-row {
    position: relative
}

.table-header:after,
.table-row:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--blue-light);
    transform: scaleX(0);
    transition: transform .5s var(--transition-1)
}

.table-header {
    display: none;
    grid-template-columns: repeat(6, 1fr);
    padding-top: 20px;
    padding-bottom: 20px
}

.table-header:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--blue-light);
    transform: scaleX(0);
    transition: transform .5s var(--transition-1)
}

.table-header>div {
    font-size: 1.5rem;
    opacity: 0;
    font-family: var(--font-family-britanicaSEB);
    font-family: var(--font-family-britanicaSEEB);
    transition: opacity .5s var(--transition-1) .35s
}

.table-header>div:nth-child(1) {
    transition-delay: 75ms
}

.table-header>div:nth-child(2) {
    transition-delay: .15s
}

.table-header>div:nth-child(3) {
    transition-delay: .225s
}

.table-header>div:nth-child(4) {
    transition-delay: .3s
}

.table-header>div:nth-child(5) {
    transition-delay: .375s
}

.table-header>div:nth-child(6) {
    transition-delay: .45s
}

.table-header>div:nth-child(7) {
    transition-delay: .525s
}

.table-header>div:nth-child(8) {
    transition-delay: .6s
}

.table-header>div:nth-child(9) {
    transition-delay: .675s
}

.table-header>div:nth-child(10) {
    transition-delay: .75s
}

.table-header.visible:after,
.table-header.visible:before {
    transform: scaleX(1)
}

.table-header.visible>div {
    opacity: 1
}

@media (min-width: 992px) {
    .table-header {
        display: grid
    }
}

.table-row {
    padding: 30px 0;
    font-size: 1rem;
    font-family: var(--font-family-britanicaSEEB)
}

.table-row:last-child:after {
    display: none
}

.table-row>div {
    position: relative;
    opacity: 0;
    transition: opacity .75s var(--transition-1);
    padding-top: 20px;
    margin-bottom: 15px
}

.table-row>div:nth-child(1) {
    transition-delay: 75ms
}

.table-row>div:nth-child(2) {
    transition-delay: .15s
}

.table-row>div:nth-child(3) {
    transition-delay: .225s
}

.table-row>div:nth-child(4) {
    transition-delay: .3s
}

.table-row>div:nth-child(5) {
    transition-delay: .375s
}

.table-row>div:nth-child(6) {
    transition-delay: .45s
}

.table-row>div:nth-child(7) {
    transition-delay: .525s
}

.table-row>div:nth-child(8) {
    transition-delay: .6s
}

.table-row>div:nth-child(9) {
    transition-delay: .675s
}

.table-row>div:nth-child(10) {
    transition-delay: .75s
}

.table-row>div:nth-child(2) {
    color: var(--blue-light)
}

.table-row>div:nth-child(3) {
    color: var(--purple)
}

.table-row>div:nth-child(4) {
    color: var(--gray)
}

.table-row>div:nth-child(5) {
    color: var(--gray)
}

.table-row>div:last-child {
    display: flex;
    justify-content: center
}

.table-row>div:after {
    content: attr(data-name);
    position: absolute;
    left: 0;
    top: 0
}

.table-row.visible>div {
    opacity: 1
}

.table-row.visible:after {
    transform: scaleX(1)
}

@media (min-width: 992px) {
    .table-row {
        display: grid;
        grid-template-columns: repeat(6, 1fr)
    }

    .table-row>div {
        padding-right: 15px;
        padding-top: 0;
        margin-bottom: 0
    }

    .table-row>div:after {
        display: none
    }

    .table-row>div:last-child {
        display: unset
    }
}

#main-content {
    position: relative
}

#main-content>.wrap {
    position: relative;
    z-index: 2
}

html.has-scroll-smooth {
    overflow: hidden
}

html.has-scroll-dragging {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.has-scroll-smooth body {
    overflow: hidden
}

.has-scroll-smooth [data-scroll-container] {
    min-height: 100vh
}

[data-scroll-direction=horizontal] [data-scroll-container] {
    height: 100vh;
    display: inline-block;
    white-space: nowrap
}

[data-scroll-direction=horizontal] [data-scroll-section] {
    display: inline-block;
    vertical-align: top;
    white-space: nowrap;
    height: 100%
}

.c-scrollbar {
    position: absolute;
    right: 0;
    top: 0;
    width: 11px;
    height: 100%;
    transform-origin: center right;
    transition: transform .3s, opacity .3s;
    opacity: 0;
    z-index: 5
}

.c-scrollbar:hover {
    transform: scaleX(1.45)
}

.c-scrollbar:hover,
.has-scroll-scrolling .c-scrollbar,
.has-scroll-dragging .c-scrollbar {
    opacity: 1
}

[data-scroll-direction=horizontal] .c-scrollbar {
    width: 100%;
    height: 10px;
    top: auto;
    bottom: 0;
    transform: scaleY(1)
}

[data-scroll-direction=horizontal] .c-scrollbar:hover {
    transform: scaleY(1.3)
}

.c-scrollbar_thumb {
    position: absolute;
    top: 0;
    right: 0;
    background-color: #000;
    opacity: .5;
    width: 7px;
    border-radius: 10px;
    margin: 2px;
    cursor: -webkit-grab;
    cursor: grab
}

.has-scroll-dragging .c-scrollbar_thumb {
    cursor: -webkit-grabbing;
    cursor: grabbing
}

[data-scroll-direction=horizontal] .c-scrollbar_thumb {
    right: auto;
    bottom: 0
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 5;
    display: none;
    opacity: 0;
    transition: opacity .5s ease
}

.modal:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-color: rgba(135, 135, 135, .25);
    background-image: url(/img/bg.svg);
    background-repeat: repeat;
    background-size: contain
}

.modal ul {
    font-size: 1rem;
    padding-left: 15px
}

.modal ul li {
    position: relative;
    margin-bottom: 15px;
    padding-left: 5px
}

.modal ul li:last-child {
    margin-bottom: 0
}

.modal ul li:before {
    content: "";
    position: absolute;
    top: 7px;
    left: -15px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 1px solid var(--blue-light);
    background-color: transparent;
    transform: scale(1);
    transition: transform .75s var(--transition-1)
}

.modal.show {
    display: flex;
    opacity: 1
}

.modal:focus {
    outline: none
}

@media (min-width: 1920px) {

    .modal p,
    .modal ol,
    .modal ul {
        font-size: 1.5vh
    }
}

.modal-inner {
    position: relative;
    z-index: 4;
    width: calc(100% - 30px);
    height: 85vh;
    background-color: var(--white);
    border-radius: 20px;
    box-shadow: 0 2px 56.7px -11px rgba(0, 0, 0, .25)
}

.modal-inner .modal-content {
    position: relative;
    overflow-y: auto;
    overflow-x: hidden;
    height: 100%
}

.modal-inner .modal-content::-webkit-scrollbar {
    width: 8px
}

.modal-inner .modal-content::-webkit-scrollbar-track {
    background-color: transparent;
    border-radius: 18px
}

.modal-inner .modal-content::-webkit-scrollbar-thumb {
    border-radius: 18px;
    background-color: var(--blue-dark)
}

@media (min-width: 768px) {
    .modal-inner {
        width: 75vw;
        height: 79.5228628231vh
    }
}

.modal-close {
    position: absolute;
    width: 46px;
    height: 46px;
    cursor: pointer;
    z-index: 5;
    font-size: 16px;
    background: none;
    background-color: var(--blue);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    padding: 10px;
    top: 0;
    right: 10px;
    transform: translate(50%, -50%);
    transition: transform .35s var(--transition-1);
    transform-origin: center center
}

.modal-close span {
    color: var(--white)
}

@media (hover: hover) {
    .modal-close:hover {
        transform: scale(1.2) translate(50%, -50%)
    }
}

@media (min-width: 992px) {
    .modal-close {
        right: 0
    }
}

.modal-open {
    overflow: hidden
}

.modal-services .swiper {
    width: 100%;
    position: relative
}

.modal-services .swiper .swiper-slide {
    display: flex;
    flex-wrap: wrap
}

.modal-services .swiper .slider-navigation {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 30px;
    right: 0;
    bottom: unset;
    top: calc(40vh - 30px)
}

.modal-services .swiper .slider-navigation .swiper-button-next,
.modal-services .swiper .slider-navigation .swiper-button-prev {
    position: relative;
    color: var(--white);
    font-weight: 600;
    font-size: 18px
}

.modal-services .swiper .slider-navigation .swiper-button-next:after,
.modal-services .swiper .slider-navigation .swiper-button-prev:after {
    content: ""
}

.modal-services .swiper .slider-navigation .swiper-button-next {
    transform: rotate(45deg)
}

.modal-services .swiper .slider-navigation .swiper-button-prev {
    transform: rotate(-135deg)
}

@media (min-width: 992px) {
    .modal-services .swiper .slider-navigation {
        right: calc(50% + 30px);
        bottom: 30px;
        top: unset;
        gap: 45px
    }

    .modal-services .swiper .slider-navigation .swiper-button-next,
    .modal-services .swiper .slider-navigation .swiper-button-prev {
        font-size: 25px
    }
}

@media (min-width: 992px) {
    .modal-services .swiper .swiper-slide {
        height: 100%;
        flex-direction: row
    }
}

@media (min-width: 992px) {
    .modal-services-slider {
        height: 100%
    }
}

.service-slide-img {
    position: relative;
    width: 100%;
    height: 40vh;
    background-image: url(/img/blue-bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px
}

.service-slide-img h2 {
    position: absolute;
    bottom: 0;
    left: 0;
    color: var(--white);
    padding: 45px 30px;
    width: 100%;
    font-size: 2rem;
    margin-bottom: 0
}

.service-slide-img h2 span {
    color: var(--blue-light)
}

@media (min-width: 992px) {
    .service-slide-img {
        width: 50%;
        height: 100%;
        border-top-right-radius: 0;
        border-bottom-left-radius: 20px
    }

    .service-slide-img h2 {
        font-size: 2.25rem;
        padding: 90px 30px
    }
}

@media (min-width: 1920px) {
    .service-slide-img h2 {
        font-size: 3.5rem
    }
}

.service-slide-text {
    overflow: hidden;
    border-bottom-right-radius: 20px;
    height: 100%
}

.service-slide-text div {
    padding: 30px;
    overflow-x: hidden
}

.service-slide-text h4 {
    font-size: 26px;
    margin-bottom: 30px
}

.service-slide-text h5 {
    margin-bottom: 15px
}

.service-slide-text p,
.service-slide-text ul {
    margin-bottom: 30px
}

.service-slide-text p:last-child,
.service-slide-text ul:last-child {
    margin-bottom: 0
}

.service-slide-text ul,
.service-slide-text ol {
    line-height: 1.5
}

.service-slide-text ul strong,
.service-slide-text ol strong {
    font-family: var(--font-family-britanicaSEB);
    letter-spacing: .035em;
    display: inline-block;
    position: relative
}

.service-slide-text ul strong:after,
.service-slide-text ol strong:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--blue-dark)
}

.service-slide-text ol {
    padding: 0 0 0 15px;
    margin-bottom: 30
}

.service-slide-text ol li {
    list-style-type: decimal;
    list-style-position: outside;
    margin-bottom: 15px
}

.service-slide-text ol li::marker {
    color: var(--blue-light)
}

.service-slide-text hr {
    width: 100%;
    background-color: rgba(0, 0, 0, .05);
    display: inline-block;
    margin-bottom: 30px;
    border: 0;
    height: 1px;
    margin-top: 15px
}

@media (min-width: 992px) {
    .service-slide-text {
        width: 50%
    }

    .service-slide-text div {
        overflow-x: hidden;
        overflow-y: scroll;
        height: 100%;
        padding: 60px 30px
    }

    .service-slide-text div::-webkit-scrollbar {
        width: 8px
    }

    .service-slide-text div::-webkit-scrollbar-track {
        background-color: transparent;
        border-radius: 18px
    }

    .service-slide-text div::-webkit-scrollbar-thumb {
        border-radius: 18px;
        background-color: var(--blue-dark)
    }
}

@media (min-width: 1920px) {
    .service-slide-text h4 {
        font-size: 2.5vh
    }
}

.modal-network .modal-inner .modal-content {
    border-radius: 20px
}

.modal-network .modal-inner .modal-white {
    padding: 0 15px 60px;
    display: block
}

.modal-network .modal-inner .modal-blue {
    position: relative;
    padding: 60px 15px;
    overflow: hidden;
    background-color: var(--blue-dark)
}

.modal-network .modal-inner .modal-blue>img {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .5
}

.modal-network .modal-inner .modal-blue h2 {
    color: var(--white)
}

.modal-network h2 {
    font-size: 1.5rem;
    text-align: center
}

.modal-network h5 {
    font-family: var(--font-family-britanicaSEB);
    font-size: 1.15rem;
    letter-spacing: -.02em;
    margin-bottom: 45px;
    text-align: center
}

.modal-network h5 span {
    color: var(--blue-light)
}

@media (min-width: 992px) {
    .modal-network .modal-inner .modal-white {
        padding: 0 6vw 60px
    }

    .modal-network .modal-inner .modal-blue {
        padding: 60px 6vw
    }

    .modal-network h2 {
        font-size: 2.5rem;
        text-align: left
    }

    .modal-network h5 {
        font-size: 1.563rem;
        text-align: left
    }
}

.incident-management img {
    width: 100%;
    height: auto
}

@media (min-width: 992px) {
    .incident-management {
        margin: 90px 0
    }
}

.incident-management-desktop {
    display: none
}

@media (min-width: 992px) {
    .incident-management-desktop {
        display: block;
        text-align: center
    }

    .incident-management-desktop img {
        width: 85%;
        margin: 0 auto
    }
}

.incident-management-mobile {
    display: block
}

@media (min-width: 992px) {
    .incident-management-mobile {
        display: none
    }
}

.process-management {
    margin: 60px 0
}

.process-management .title {
    margin-bottom: 60px
}

.process-management h5 {
    margin-bottom: 30px
}

.process-management .process-list {
    display: grid;
    grid-template-columns: repeat(1, 1fr)
}

.process-management .process-list .process-item {
    padding: 30px;
    color: var(--blue-dark);
    padding-inline-end: 30%;
    min-height: 150px;
    display: flex;
    align-items: center;
    line-height: 1.35
}

.process-management .process-list .process-item:nth-child(4n+1) {
    background-color: #6fe4fc
}

.process-management .process-list .process-item:nth-child(4n+2) {
    background-color: #86e8fc
}

.process-management .process-list .process-item:nth-child(4n+3) {
    background-color: #b4f1fd
}

.process-management .process-list .process-item:nth-child(4n+4) {
    background-color: #cbf5fe
}

@media (min-width: 992px) {
    .process-management {
        margin: 90px 0
    }

    .process-management .process-list {
        grid-template-columns: repeat(2, 1fr)
    }
}

.modal-problem {
    position: relative
}

.modal-problem>div {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-top: 45px
}

.modal-problem h5 span {
    color: var(--blue-light)
}

.modal-problem ul li {
    font-size: 16px
}

.modal-problem img {
    width: 20.68vw;
    height: auto;
    display: block;
    margin: 45px auto 0
}

@media (min-width: 768px) {
    .modal-problem>div {
        flex-direction: row
    }

    .modal-problem>div h5 {
        text-align: right
    }
}

@media (min-width: 992px) {
    .modal-problem>div {
        gap: 11.68vw;
        margin: 100px
    }

    .modal-problem h5 {
        width: 22.51vw
    }

    .modal-problem ul {
        width: 26.069vw
    }

    .modal-problem img {
        width: 10.68vw;
        margin: 0;
        margin-left: 24.01vw;
        position: absolute;
        top: 60%;
        transform: translateY(-50%)
    }
}

.modal-information {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 60px
}

.modal-information .title {
    display: inline-block;
    text-align: center
}

.modal-information>div {
    width: 100%;
    padding: 30px 6.25vw
}

.modal-information>div h5 {
    margin-bottom: 15px;
    font-size: 1.25rem
}

.modal-information>div ul {
    margin-bottom: 15px;
    line-height: 1.35
}

.modal-information>div:nth-of-type(1) {
    background-color: #a5effe
}

.modal-information>div:nth-of-type(1) h5 {
    text-align: center;
    margin-bottom: 0
}

.modal-information>div:nth-of-type(2) {
    background-color: #6fe4fc
}

.modal-information>div:nth-of-type(2) ul li:before {
    border: 1px solid var(--blue-dark)
}

.modal-information>div:nth-of-type(3) {
    background-color: var(--blue-dark)
}

.modal-information>div:nth-of-type(3) h5 {
    color: var(--white)
}

.modal-information>div:nth-of-type(3) ul li {
    color: var(--white)
}

.modal-information>div:nth-of-type(3) ul li:before {
    border: 1px solid var(--white)
}

@media (min-width: 992px) {
    .modal-information {
        margin-top: 120px
    }

    .modal-information>div {
        width: 50%
    }

    .modal-information>div:nth-of-type(1) {
        width: 55%
    }

    .modal-information .title:first-child {
        margin-right: 25px
    }

    .modal-information .title:nth-child(2) {
        margin-left: 25px
    }
}

.modal-contact .modal-close span {
    color: var(--purple)
}

.modal-contact .modal-inner .modal-content {
    position: relative;
    padding: 90px 15px;
    display: flex;
    align-items: center
}

.modal-contact .modal-inner .modal-content>img,
.modal-contact .modal-inner .modal-content>picture {
    position: absolute;
    bottom: 0;
    right: 8.5020833333%;
    height: 100%;
    width: auto;
    opacity: .1;
    z-index: -1
}

.modal-contact .modal-inner .modal-content .title {
    color: var(--purple);
    text-align: center
}

.modal-contact .modal-inner .modal-content::-webkit-scrollbar-thumb {
    background-color: var(--purple)
}

.modal-contact .modal-form {
    width: 100%;
    margin-top: 120px
}

.modal-contact .modal-form .more {
    opacity: 1
}

.modal-contact form {
    width: 100%;
    display: block
}

.modal-contact form .field {
    width: 100%;
    margin-bottom: 30px;
    display: flex;
    flex-direction: column-reverse
}

.modal-contact form .field.textarea {
    width: 100%
}

.modal-contact form label {
    display: block;
    font-family: var(--font-family-britanicaSEB);
    color: #858585;
    font-size: 18px
}

.modal-contact form input,
.modal-contact form textarea {
    outline: none;
    border: none;
    border-bottom: 1.7px solid #858585;
    width: 100%;
    font-family: var(--font-family-gellix);
    color: var(--purple);
    font-size: 14px;
    background-color: transparent;
    padding-bottom: 10px
}

.modal-contact form input::placeholder,
.modal-contact form textarea::placeholder {
    color: #858585
}

.modal-contact form input:focus,
.modal-contact form textarea:focus {
    border-color: var(--purple)
}

.modal-contact form input:focus::placeholder,
.modal-contact form textarea:focus::placeholder {
    color: var(--purple)
}

.modal-contact form input:focus+label,
.modal-contact form textarea:focus+label {
    color: var(--purple)
}

.modal-contact form textarea {
    resize: none;
    height: 150px
}

.modal-contact form button {
    border: none;
    outline: none;
    font-family: var(--font-family-britanicaSEB);
    color: var(--purple);
    background-color: transparent;
    cursor: none
}

.modal-contact form button i {
    transform: rotate(45deg)
}

.modal-contact .more span:after {
    background-color: var(--purple)
}

@media (hover: hover) {
    .modal-contact .more:hover span {
        color: var(--white)
    }
}

@media (min-width: 576px) {
    .modal-contact form {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap
    }

    .modal-contact form .field {
        width: calc(50% - 35px)
    }
}

@media (min-width: 768px) {
    .modal-contact form label {
        font-size: 22px
    }
}

@media (min-width: 992px) {
    .modal-contact .modal-inner .modal-content {
        padding: 45px
    }

    .modal-contact .modal-inner .modal-content .title {
        text-align: left
    }

    .modal-contact .modal-inner .modal-content>img,
    .modal-contact .modal-inner .modal-content>picture {
        opacity: 1
    }

    .modal-contact .modal-form {
        margin-top: 0;
        width: 51.7361111111%
    }

    .modal-contact form label {
        font-size: 28px
    }
}

.modal-about .wave {
    width: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    height: 350px
}

.modal-about .modal-close {
    background-color: var(--purple);
    color: var(--white)
}

.modal-about .modal-inner .modal-content {
    padding: 60px 15px 30px
}

.modal-about .modal-inner .modal-content::-webkit-scrollbar-thumb {
    background-color: var(--purple)
}

.modal-about .title {
    text-align: center;
    margin-bottom: 45px
}

.modal-about .title span {
    color: var(--purple)
}

@media (min-width: 768px) {
    .modal-about .modal-inner .modal-content {
        padding: 60px 15px
    }
}

@media (max-width: 991px) {
    .modal-about .wave {
        object-fit: cover;
        object-position: center center;
        transform: translateY(-120px)
    }
}

@media (min-width: 992px) {
    .modal-about .modal-inner .modal-content {
        padding: 13.2vh 6vw 13.2vh 6vw
    }

    .modal-about .title {
        text-align: left;
        margin-bottom: 60px
    }

    .modal-about .wave {
        height: auto
    }
}

.modal-wave,
.modal-scroll,
.modal-about-cards,
.modal-values,
.modal-managed-networks,
.modal-advantages {
    position: relative;
    z-index: 2
}

.modal-wave {
    margin-top: 45px;
    margin-bottom: 60px
}

.modal-wave .title span {
    color: var(--white)
}

.modal-wave p {
    margin-bottom: 10px
}

.modal-wave p:last-child {
    margin-bottom: 0
}

@media (min-width: 992px) {
    .modal-wave {
        padding-bottom: 10vh;
        margin-bottom: 0;
        margin-top: 0
    }

    .modal-wave p {
        margin-bottom: 0
    }
}

@media (min-width: 1600px) {
    .modal-wave {
        padding-bottom: 24vh
    }
}

.waves-text {
    margin-top: 150px
}

.waves-text p {
    font-family: var(--font-family-britanicaSEEB);
    color: var(--blue);
    font-size: 16px;
    line-height: 1.1
}

@media (min-width: 768px) {
    .waves-text p {
        font-size: 17px
    }
}

@media (min-width: 992px) {
    .waves-text p {
        font-size: 14px
    }
}

@media (min-width: 1600px) {
    .waves-text p {
        font-size: 22px
    }
}

@media (min-width: 992px) {
    .waves-text {
        gap: 4vw;
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        height: 180px;
        transform: translateY(5vw);
        margin-top: 0;
        text-align: left
    }

    .waves-text p {
        color: var(--white)
    }

    .waves-text p:nth-child(2n) {
        transform: translateY(20px);
        color: var(--blue)
    }
}

@media (min-width: 992px) and (max-width: 1599px) {
    .waves-text p:nth-child(odd) {
        transform: translateY(-60px)
    }
}

@media (min-width: 1600px) {
    .waves-text p:nth-child(2n) {
        transform: translateY(140px)
    }
}

.modal-scroll {
    margin-bottom: 60px;
    display: flex;
    align-items: center;
    flex-direction: column;
    text-align: center;
    font-size: 16px;
    font-family: var(--font-family-britanicaSEB)
}

.modal-scroll img,
.modal-scroll picture {
    width: 30vw;
    margin-bottom: 10px
}

.modal-scroll p {
    line-height: 1.2;
    color: var(--purple)
}

@media (min-width: 992px) {
    .modal-scroll {
        font-size: 12px;
        margin-bottom: 90px
    }

    .modal-scroll img,
    .modal-scroll picture {
        width: 7.1875vw;
        margin-bottom: 5px
    }
}

.modal-about-cards {
    margin-bottom: 30px
}

.modal-about-cards .cards {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.modal-about-cards .card {
    width: 100%;
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 30px;
    background-color: #f5f5f5;
    box-shadow: 0 15px 25px rgba(0, 0, 0, .15), 0 5px 10px rgba(0, 0, 0, .05)
}

.modal-about-cards .card img,
.modal-about-cards .card picture {
    aspect-ratio: 16/9;
    width: 100%;
    object-fit: cover;
    object-position: center center
}

.modal-about-cards .card .content {
    padding: 22px
}

.modal-about-cards .card .content h4 {
    font-family: var(--font-family-gellix);
    color: var(--purple);
    margin-bottom: 15px
}

.modal-about-cards .card .content p {
    font-size: 14px;
    color: var(--black);
    line-height: 1.2
}

@media (min-width: 768px) {
    .modal-about-cards {
        margin-bottom: 60px
    }
}

@media (min-width: 992px) {
    .modal-about-cards .card {
        width: calc(33% - 15px)
    }
}

@media (min-width: 1600px) {
    .modal-about-cards {
        margin-bottom: 120px
    }
}

@media (min-width: 1920px) {
    .modal-about-cards .card .content h4 {
        font-size: 1.75vh
    }

    .modal-about-cards .card .content p {
        font-size: 1.5vh
    }
}

.modal-values {
    margin-bottom: 60px;
    padding-left: 15px
}

.modal-values ul {
    width: 100%;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 25px
}

.modal-values ul li {
    font-family: var(--font-family-gellix);
    font-weight: 400
}

.modal-values ul li:before {
    border-color: var(--purple)
}

.modal-values ul li strong {
    display: block;
    margin-bottom: 15px;
    font-weight: 600;
    font-family: var(--font-family-britanicaSEB)
}

@media (min-width: 768px) {
    .modal-values ul {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (min-width: 992px) {
    .modal-values {
        padding-left: 0
    }

    .modal-values ul {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (min-width: 1600px) {
    .modal-values {
        margin-bottom: 120px
    }
}

.modal-managed-networks {
    margin-bottom: 60px
}

.modal-managed-networks img,
.modal-managed-networks picture {
    width: 100%;
    height: auto
}

@media (min-width: 1600px) {
    .modal-managed-networks {
        margin-bottom: 120px
    }
}

.modal-advantages ul {
    width: 100%;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 30px;
    list-style-type: none
}

.modal-advantages ul li {
    border-left: 4px solid var(--purple);
    font-family: var(--font-family-gellix);
    padding: 9px 12px;
    margin-bottom: 0
}

.modal-advantages ul li span {
    color: var(--purple)
}

.modal-advantages ul li:before {
    display: none
}

@media (min-width: 768px) {
    .modal-advantages ul {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (min-width: 1200px) {
    .modal-advantages ul {
        grid-template-columns: repeat(3, 1fr)
    }
}

.modal-partners {
    position: fixed !important
}

.modal-partners .modal-inner .modal-content {
    padding: 60px 0
}

.modal-partners .modal-inner .modal-content::-webkit-scrollbar-thumb {
    background-color: var(--blue-dark)
}

.modal-partners .modal-close {
    color: var(--white);
    background-color: var(--blue-dark)
}

.modal-partners .partners-text {
    padding: 0 6.927vw;
    margin-bottom: 60px
}

@media (min-width: 992px) {
    .modal-partners .partners-text {
        margin-bottom: 120px
    }
}

.modal-partners .partner-row {
    position: relative;
    width: 100%;
    height: 16.5vw;
    display: none;
    margin-bottom: 30px
}

.modal-partners .partner-row:first-child {
    margin-top: 120px
}

.modal-partners .partner-row svg {
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1
}

.modal-partners .partner-row .partners-logo {
    padding: 0 6.927vw;
    display: flex;
    flex-wrap: wrap;
    transform: translateY(-25px)
}

.modal-partners .partner-row .partners-logo a {
    display: inline-block
}

.modal-partners .partner-row .partners-logo a img,
.modal-partners .partner-row .partners-logo a picture {
    object-fit: contain;
    height: auto
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+1),
.modal-partners .partner-row .partners-logo a:nth-child(10n+2) {
    width: 50%;
    margin-bottom: 35px
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+1) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+1) picture,
.modal-partners .partner-row .partners-logo a:nth-child(10n+2) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+2) picture {
    display: block;
    margin: 0 auto
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+1) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+1) picture {
    width: 6.063vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+2) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+2) picture {
    width: 6.667vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+3),
.modal-partners .partner-row .partners-logo a:nth-child(10n+10) {
    width: 100%;
    margin-bottom: 3.079vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+3) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+3) picture,
.modal-partners .partner-row .partners-logo a:nth-child(10n+10) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+10) picture {
    display: block;
    margin: 0 auto;
    width: 6.832vw;
    transform: translateY(-1vw)
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+4) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+4) picture {
    width: 7.492vw;
    transform: translateY(-1.5vw)
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+5) {
    margin-left: 4.369vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+5) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+5) picture {
    width: 5.5vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+6) {
    margin-left: 3.009vw;
    transform: translateY(-2.5vw)
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+6) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+6) picture {
    width: 5.133vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+7) {
    margin-left: 10.027vw;
    transform: translateY(-2.5vw)
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+7) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+7) picture {
    width: 4.998vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+8) {
    margin-left: 2.398vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+8) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+8) picture {
    width: 4.771vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+9) {
    margin-left: 7.346vw
}

.modal-partners .partner-row .partners-logo a:nth-child(10n+9) img,
.modal-partners .partner-row .partners-logo a:nth-child(10n+9) picture {
    width: 5.052vw;
    transform: translateY(-1vw)
}

.modal-partners .partner-row-mobile {
    position: relative;
    width: 100%;
    height: 16.5vw;
    display: block;
    margin-bottom: 0;
    height: 100%
}

.modal-partners .partner-row-mobile svg {
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1
}

.modal-partners .partner-row-mobile svg .shape {
    transform: scaleX(0);
    transform-origin: left center;
    transition: .8s ease
}

.modal-partners .partner-row-mobile svg .shape:last-child {
    transform-origin: right center
}

.modal-partners .partner-row-mobile svg .shape.active {
    transform: scaleX(1)
}

.modal-partners .partner-row-mobile .partners-logo {
    width: 90%;
    padding: 0 6.85vw;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto
}

.modal-partners .partner-row-mobile .partners-logo a {
    width: 33.33333333%;
    display: inline-block
}

.modal-partners .partner-row-mobile .partners-logo a img,
.modal-partners .partner-row-mobile .partners-logo a picture {
    object-fit: contain;
    height: auto;
    display: block;
    margin: 0 auto
}

.modal-partners .partner-row-mobile .partners-logo a:nth-child(3n+1),
.modal-partners .partner-row-mobile .partners-logo a:nth-child(3n+3) {
    margin-top: 30px;
    margin-bottom: 30px
}

.modal-partners .partner-row-mobile .partners-logo a:nth-child(3n+1) img,
.modal-partners .partner-row-mobile .partners-logo a:nth-child(3n+1) picture {
    width: 19.683vw
}

.modal-partners .partner-row-mobile .partners-logo a:nth-child(3n+2) img,
.modal-partners .partner-row-mobile .partners-logo a:nth-child(3n+2) picture {
    width: 16.286vw
}

.modal-partners .partner-row-mobile .partners-logo a:nth-child(3n+3) img,
.modal-partners .partner-row-mobile .partners-logo a:nth-child(3n+3) picture {
    width: 19.469vw;
    margin: 0 0 0 auto
}

.modal-partners .partner-row-mobile .partners-logo a:last-child {
    margin: -15px 0 0
}

.modal-partners .partners-text p {
    font-size: 14px;
    line-height: 1.4
}

@media (min-width: 768px) {
    .modal-partners .modal-inner .modal-content {
        padding: 120px 0 0
    }

    .modal-partners .partner-row {
        display: block
    }

    .modal-partners .partner-row-mobile {
        display: none
    }

    .modal-partners .partners-text p {
        max-inline-size: 50%
    }
}

@media (min-width: 992px) {
    .modal-partners .partners-text p {
        font-size: 16px
    }
}

@media (min-width: 1920px) {
    .modal-partners .partners-text p {
        font-size: 1.5vh
    }
}

.modal-partnerships .modal-inner .modal-content::-webkit-scrollbar-thumb {
    background-color: var(--blue-dark)
}

.modal-partnerships .title {
    margin-bottom: 60px
}

.modal-partnerships-top {
    background-color: var(--blue-dark);
    padding: 9.5vh 6vw;
    color: var(--white);
    position: relative
}

.modal-partnerships-top .partnership-wave {
    position: absolute;
    top: 8.5029821074vh;
    left: 0;
    width: 100%;
    height: auto;
    opacity: .8;
    z-index: 1
}

.modal-partnerships-top ul,
.modal-partnerships-top h4,
.modal-partnerships-top .title {
    position: relative;
    z-index: 2
}

.modal-partnerships-top h4 {
    font-family: var(--font-family-gellix);
    margin-bottom: 30px
}

.modal-partnerships-top>p {
    font-size: 14px;
    line-height: 1.2;
    margin-bottom: 30px
}

.modal-partnerships-top ul {
    display: flex;
    gap: 60px
}

.modal-partnerships-top ul strong {
    font-family: var(--font-family-britanicaSEB);
    display: block;
    margin-bottom: 15px
}

@media (min-width: 1920px) {
    .modal-partnerships-top h4 {
        font-size: 3vh
    }

    .modal-partnerships-top>p {
        font-size: 1.5vh
    }
}

.partnership-wave-bottom {
    width: 100%;
    height: auto;
    display: inline-block;
    transform: translateY(-3px)
}

.modal-approach {
    padding: 60px 6vw
}

.modal-approach p {
    margin-bottom: 30px;
    font-size: 14px
}

@media (min-width: 992px) {
    .modal-approach {
        padding: 9.5vh 6vw
    }
}

@media (min-width: 1920px) {
    .modal-approach p {
        font-size: 1.5vh
    }
}

.modal-support {
    padding: 0 6vw;
    margin: 60px 0
}

@media (min-width: 992px) {
    .modal-support {
        margin: 120px 0
    }
}

.modal-advantages-partnership {
    padding: 0 6vw;
    margin-bottom: 60px
}

@media (min-width: 992px) {
    .modal-advantages-partnership {
        margin-bottom: 120px
    }
}

.modal-commitment {
    padding: 0 6vw
}

.modal-commitment .title {
    margin-bottom: 60px
}

.modal-commitment .title span {
    color: var(--purple)
}

.modal-commitment .service-item-outline {
    clip-path: circle(130% at 50% 0%) !important
}

.commitment-list {
    display: flex;
    flex-direction: column;
    margin-bottom: 0
}

@media (min-width: 992px) {
    .commitment-list {
        flex-direction: row;
        gap: 5px;
        justify-content: space-between;
        margin-bottom: 120px
    }
}

.commitment-item {
    margin: 0 auto;
    cursor: none
}

.commitment-item svg {
    fill: none;
    width: 100%;
    aspect-ratio: 472.01/675.01
}

.commitment-item svg path {
    stroke: var(--blue-light);
    stroke-width: 2.64745;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: fill .75s var(--transition-1), clip-path .75s var(--transition-1)
}

.commitment-item svg path.commitment-item-outline {
    fill: var(--white)
}

.commitment-item svg path.commitment-item-fill {
    clip-path: circle(0% at 0 100%)
}

.commitment-item svg div {
    transition: color .5s var(--transition-1)
}

.commitment-item:nth-child(1) svg path {
    stroke: var(--blue-light)
}

.commitment-item:nth-child(1) svg path.commitment-item-fill {
    fill: var(--blue-light)
}

.commitment-item:nth-child(2) svg path {
    stroke: var(--blue)
}

.commitment-item:nth-child(2) svg path.commitment-item-fill {
    fill: var(--blue)
}

.commitment-item:nth-child(2) .commitment-item-text h5 span {
    color: var(--blue)
}

.commitment-item:nth-child(3) svg path {
    stroke: var(--blue-dark)
}

.commitment-item:nth-child(3) svg path.commitment-item-fill {
    fill: var(--blue-dark)
}

.commitment-item:nth-child(3) .commitment-item-text h5 span {
    color: var(--blue-dark)
}

@media (max-width: 991px) {
    .commitment-item {
        display: inline-block
    }

    .commitment-item:nth-child(2) {
        transform: translateY(-70px)
    }

    .commitment-item:nth-child(3) {
        transform: translateY(-140px)
    }
}

@media (min-width: 992px) {
    .commitment-item {
        width: 33.33%
    }
}

@media (hover: hover) {
    .commitment-item:hover svg path.commitment-item-fill {
        clip-path: circle(116% at 50% 100%)
    }

    .commitment-item:hover svg .commitment-item-text h5,
    .commitment-item:hover svg .commitment-item-text p,
    .commitment-item:hover svg .commitment-item-text h5 span {
        color: var(--white)
    }
}

.commitment-item-text {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 0 20%;
    text-align: center
}

.commitment-item-text p,
.commitment-item-text h5 {
    transition: color .5s var(--transition-1)
}

.commitment-item-text h5 {
    font-size: 1.875rem;
    margin-bottom: 10px;
    text-align: center
}

.commitment-item-text h5 span {
    color: var(--blue-light)
}

.commitment-item-text p {
    font-size: 17px;
    line-height: 1.2
}

.block-list,
.content-list {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 30px
}

@media (min-width: 768px) {

    .block-list,
    .content-list {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (min-width: 992px) {

    .block-list,
    .content-list {
        grid-template-columns: repeat(3, 1fr)
    }

    .block-list.content-list-two,
    .content-list.content-list-two {
        grid-template-columns: repeat(2, 1fr)
    }
}

.content-list>div {
    padding-left: 30px;
    position: relative
}

.content-list>div:before {
    content: "";
    position: absolute;
    top: 6px;
    left: 2px;
    width: 8px;
    height: 8px;
    background-color: transparent;
    border-radius: 50%;
    border: 2px solid var(--blue-light);
    background-color: var(--blue-light)
}

.content-list>div p,
.content-list>div h5 {
    line-height: 1.2
}

.content-list>div h5 {
    margin-bottom: 9px;
    font-size: 16px
}

.content-list>div p {
    font-size: 14px
}

@media (min-width: 1920px) {
    .content-list>div h5 {
        font-size: 1.75vh
    }

    .content-list>div p {
        font-size: 1.5vh
    }
}

.block-list>div {
    padding-left: 15px;
    border-left: 4px solid var(--blue-light);
    margin-bottom: 15px
}

.block-list>div p {
    font-size: 16px;
    line-height: 1.2;
    margin-bottom: 0
}

.block-list>div p span {
    color: var(--blue-light)
}

.block-list.block-list--purple>div {
    border-color: var(--purple)
}

.block-list.block-list--purple>div p span {
    color: var(--purple)
}

@media (min-width: 1920px) {
    .block-list>div p {
        font-size: 1.5vh
    }
}

.notfound-content {
    padding-top: 18vh;
    padding-bottom: 18vh;
    text-align: center;
    position: relative;
    z-index: 2
}

.notfound-content p {
    font-size: 20px;
    margin-bottom: 30px;
    transition-delay: 75ms
}

.notfound-content a {
    display: block;
    font-size: 25px;
    font-family: var(--font-family-britanicaSEEB);
    transition-delay: .15s
}

.notfound-content p,
.notfound-content a,
.notfound-content .title {
    opacity: 0;
    transform: translateY(20px);
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition: opacity .75s var(--transition-1), transform .75s var(--transition-1), clip-path .75s var(--transition-1)
}

.notfound-content p.visible,
.notfound-content a.visible,
.notfound-content .title.visible {
    opacity: 1;
    transform: translateY(0);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}

.notfound-content img,
.notfound-content picture {
    width: 100%;
    height: auto;
    opacity: 0;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%)
}

.us {
    margin: 60px 0;
    text-align: center
}

.us img,
.us picture {
    transition: clip-path 1s var(--transition-1);
    clip-path: circle(0% at 50% 50%);
    width: 80%;
    height: auto
}

.us.visible img,
.us.visible picture {
    clip-path: circle(100% at 50% 50%)
}

@media (min-width: 992px) {
    .us {
        margin: 150px 0 90px
    }

    .us img,
    .us picture {
        width: 50%
    }
}

.heart-cursor {
    background-color: red;
    cursor: url("data:image/svg+xml,%3csvg%20clip-rule='evenodd'%20fill-rule='evenodd'%20stroke-linejoin='round'%20stroke-miterlimit='2'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12%205.72C9.376%201.203%202%202.522%202%208.181c0%203.725%204.345%207.727%209.303%2012.54a.996.996%200%200%200%201.394%200C17.674%2015.89%2022%2011.907%2022%208.181c0-5.678-7.396-6.944-10-2.461z'%20fill-rule='nonzero'/%3e%3c/svg%3e"), auto
}

.video-full {
    position: relative;
    margin: 60px 0;
    background-color: var(--black);
    clip-path: polygon(0 100%, 0 100%, 0 100%, 0% 100%);
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition: clip-path .75s ease;
    overflow: hidden
}

.video-full video {
    width: 100%;
    height: auto;
    position: relative;
    z-index: 1;
    aspect-ratio: 16/6.8083333333
}

.video-full.visible,
.video-full.is-inview {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}

.video-full.visible .video-full-poster,
.video-full.is-inview .video-full-poster {
    transform: scale(1)
}

.video-full.visible .video-full-us,
.video-full.is-inview .video-full-us {
    opacity: 1;
    transform: scale(1)
}

.video-full.visible .video-full-play,
.video-full.is-inview .video-full-play {
    opacity: 1
}

@media (min-width: 992px) {
    .video-full {
        margin: 120px 0
    }
}

.video-full-info {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}

.video-full-poster {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    z-index: 1;
    pointer-events: none;
    transform: scale(2);
    transform-origin: center center;
    transition: transform 1.75s ease .1s;
    aspect-ratio: 2538/1080
}

.video-full-us {
    position: relative;
    transform: scale(.5);
    z-index: 2;
    width: 65%;
    height: auto;
    opacity: 0;
    transition: opacity 1s ease .45s, transform 1s ease .45s
}

.video-full-play {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 40px;
    border: 2px solid var(--white);
    border-radius: 50%;
    color: var(--white);
    z-index: 3;
    margin-top: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 3px;
    font-size: .85rem;
    opacity: 0;
    transition: opacity 1s ease .45s
}

@media (min-width: 992px) {
    .video-full-play {
        display: none
    }
}

.video-no-transition {
    transition: none
}

#video-full-media {
    opacity: 0;
    width: 100%;
    height: auto
}

.certificates {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 0 auto 90px;
    gap: 30px;
    padding: 0 10%
}

.certificates a {
    display: block;
    opacity: 0;
    transition: .75s ease
}

.certificates a img {
    width: 100%;
    height: auto;
    object-fit: contain
}

.certificates a:nth-child(0) {
    transition-delay: 0s
}

.certificates a:nth-child(1) {
    transition-delay: 75ms
}

.certificates a:nth-child(2) {
    transition-delay: .15s
}

.certificates a:nth-child(3) {
    transition-delay: .225s
}

.certificates a:nth-child(4) {
    transition-delay: .3s
}

.certificates.visible a {
    opacity: 1
}

@media (min-width: 768px) {
    .certificates {
        width: 50%;
        padding: 0;
        grid-template-columns: repeat(4, 1fr)
    }
}

.l-buttons {
    display: flex;
    flex-direction: column;
    gap: 20px
}

@media (min-width: 768px) {
    .l-buttons {
        flex-direction: row;
        gap: 25px
    }
}

.l-btn {
    padding: 14px 19px;
    font-family: var(--font-family-britanicaSEB);
    font-size: 18px;
    text-decoration: none;
    border-radius: 10px;
    cursor: pointer;
    border: none;
    position: relative;
    overflow: hidden;
    font-weight: 400;
    transform-origin: center center;
    transition: all .3s var(--transition-1)
}

.l-btn span {
    position: relative;
    z-index: 2
}

@media (hover: hover) {
    .l-btn:hover {
        transform: scale(1.015) translateY(-2px);
        background-color: var(--blue);
        color: var(--white)
    }
}

@media (min-width: 768px) {
    .l-btn {
        padding: 14px 30px
    }
}

.l-btn-primary {
    background-color: var(--blue-light);
    color: var(--blue-dark)
}

.l-btn-secondary {
    background-color: var(--white);
    color: var(--blue-dark)
}

.l-btn-dark {
    background-color: var(--blue-dark);
    color: var(--white)
}

.l-btn-dark svg {
    color: var(--white)
}

.split {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 60px
}

.split__box {
    position: relative;
    aspect-ratio: 2/1;
    display: flex;
    align-items: center;
    justify-content: center
}

.split__box img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1
}

.split__box .split__title {
    color: var(--white);
    text-transform: uppercase;
    font-size: clamp(2rem, 6vw, 60px);
    letter-spacing: .03em
}

@media (min-width: 768px) {
    .split__box {
        width: 50%
    }
}

.boxes__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 30px
}

.boxes__grid div h3 {
    color: var(--blue-dark);
    margin-bottom: 0;
    text-align: center
}

.boxes__grid div h3 span {
    color: var(--blue-light)
}

.boxes__grid div p {
    font-size: 12px;
    color: var(--blue-dark);
    text-align: center
}

.job {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid rgb(224, 222, 222);
    transition: .3s ease;
    opacity: 0
}

.job.visible {
    opacity: 1
}

.job:last-child {
    margin-bottom: 30px
}

.job i {
    transform: rotate(0);
    display: inline-block;
    scale: 1;
    transition: .3s ease
}

.job>div {
    display: flex;
    align-items: center;
    gap: 15px
}

.job .badges {
    display: flex;
    gap: 15px
}

.job .badges .badge {
    display: inline-block;
    background-color: #f5f5f5;
    border-radius: 30px;
    font-size: 12px;
    padding: 3px 9px
}

@media (hover: hover) {
    .job:hover {
        border-bottom: 1px solid var(--blue-light)
    }

    .job:hover i {
        transform: rotate(45deg);
        scale: 1.15
    }
}

:root {
    --f-button-width: 40px;
    --f-button-height: 40px;
    --f-button-border: 0;
    --f-button-border-radius: 0;
    --f-button-color: #374151;
    --f-button-bg: #f8f8f8;
    --f-button-shadow: none;
    --f-button-transition: all .15s ease;
    --f-button-transform: none;
    --f-button-outline-width: 1px;
    --f-button-outline-color: rgba(0, 0, 0, .7);
    --f-button-svg-width: 20px;
    --f-button-svg-height: 20px;
    --f-button-svg-stroke-width: 1.5;
    --f-button-svg-fill: none;
    --f-button-svg-filter: none;
    --f-button-svg-opacity: 1;
    --f-button-svg-disabled-opacity: .5;
    --f-button-svg-transition: opacity .15s ease;
    --f-button-svg-transform: none
}

.f-button {
    width: var(--f-button-width);
    height: var(--f-button-height);
    border: var(--f-button-border);
    border-radius: var(--f-button-border-radius);
    color: var(--f-button-color);
    background: var(--f-button-bg);
    box-shadow: var(--f-button-shadow);
    transform: var(--f-button-transform);
    transition: var(--f-button-transition);
    backdrop-filter: var(--f-button-backdrop-filter);
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: content-box;
    position: relative;
    margin: 0;
    padding: 0;
    pointer-events: all;
    cursor: pointer;
    overflow: hidden
}

@media (hover:hover) {
    .f-button:hover:not([aria-disabled]) {
        color: var(--f-button-hover-color, var(--f-button-color));
        background-color: var(--f-button-hover-bg, var(--f-button-bg))
    }
}

.f-button:active:not([aria-disabled]) {
    color: var(--f-button-active-color, var(--f-button-hover-color, var(--f-button-color)));
    background-color: var(--f-button-active-bg, var(--f-button-hover-bg, var(--f-button-bg)))
}

.f-button:focus {
    outline: none
}

.f-button:focus-visible {
    outline: var(--f-button-outline-width) solid var(--f-button-outline-color);
    outline-offset: var(--f-button-outline-offset)
}

.f-button svg {
    width: var(--f-button-svg-width);
    height: var(--f-button-svg-height);
    transform: var(--f-button-svg-transform);
    fill: var(--f-button-svg-fill);
    filter: var(--f-button-svg-filter);
    opacity: var(--f-button-svg-opacity, 1);
    transition: var(--f-button-svg-transition);
    stroke: currentColor;
    stroke-width: var(--f-button-svg-stroke-width);
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none
}

.f-button[aria-disabled] {
    cursor: default
}

.f-button[aria-disabled] svg {
    opacity: var(--f-button-svg-disabled-opacity)
}

[data-panzoom-action=toggleFS] g:first-child {
    display: flex
}

[data-panzoom-action=toggleFS] g:last-child {
    display: none
}

.in-fullscreen [data-panzoom-action=toggleFS] g:first-child {
    display: none
}

.in-fullscreen [data-panzoom-action=toggleFS] g:last-child {
    display: flex
}

[data-autoplay-action=toggle] svg g:first-child {
    display: flex
}

[data-autoplay-action=toggle] svg g:last-child {
    display: none
}

.has-autoplay [data-autoplay-action=toggle] svg g:first-child {
    display: none
}

.has-autoplay [data-autoplay-action=toggle] svg g:last-child {
    display: flex
}

:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child {
    display: none
}

:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child {
    display: flex
}

:root {
    --f-spinner-color-1: rgba(0, 0, 0, .1);
    --f-spinner-color-2: rgba(17, 24, 28, .8);
    --f-spinner-width: 50px;
    --f-spinner-height: 50px;
    --f-spinner-border-radius: 50%;
    --f-spinner-border-width: 4px
}

.f-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: 0;
    padding: 0;
    width: var(--f-spinner-width);
    height: var(--f-spinner-height);
    translate: -50% -50%;
    border: var(--f-spinner-border-width) solid var(--f-spinner-color-1);
    border-top-color: var(--f-spinner-color-2);
    border-radius: var(--f-spinner-border-radius);
    animation: f-spinner .75s linear infinite, f-fadeIn .2s ease .2s both
}

@keyframes f-spinner {
    to {
        rotate: 360deg
    }
}

.f-panzoom,
.f-zoomable {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    flex-direction: column
}

.f-panzoom:before,
.f-panzoom:after,
.f-zoomable:before,
.f-zoomable:after {
    display: block;
    content: ""
}

.f-panzoom:not(.has-controls):before,
.f-zoomable:not(.has-controls):before {
    margin-bottom: auto
}

.f-panzoom:after,
.f-zoomable:after {
    margin-top: auto
}

.f-panzoom.in-fullscreen,
.f-zoomable.in-fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    margin: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    aspect-ratio: unset !important;
    z-index: 9999
}

.f-panzoom__wrapper {
    position: relative;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
    max-height: 100%
}

.f-panzoom__wrapper.will-zoom-out {
    cursor: zoom-out
}

.f-panzoom__wrapper.can-drag {
    cursor: move;
    cursor: grab
}

.f-panzoom__wrapper.will-zoom-in {
    cursor: zoom-in
}

.f-panzoom__wrapper.is-dragging {
    cursor: move;
    cursor: grabbing
}

.f-panzoom__wrapper.has-error {
    display: none
}

.f-panzoom__content {
    display: block;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
    max-height: 100%
}

.f-panzoom__content.is-lazyloading,
.f-panzoom__content.has-lazyerror {
    visibility: hidden
}

img.f-panzoom__content {
    width: auto;
    height: auto;
    vertical-align: top;
    object-fit: contain;
    transition: none;
    user-select: none
}

.f-panzoom__wrapper>.f-panzoom__content {
    visibility: hidden
}

.f-panzoom__viewport {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10
}

.f-panzoom__viewport>.f-panzoom__content {
    width: 100%;
    height: 100%;
    object-fit: fill
}

picture.f-panzoom__content img {
    vertical-align: top;
    width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: contain;
    transition: none;
    user-select: none
}

.f-panzoom__protected {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    user-select: none
}

html.with-panzoom-in-fullscreen {
    overflow: hidden
}

.f-fadeIn {
    animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
    z-index: 2
}

.f-fadeOut {
    animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
    z-index: 1
}

@keyframes f-fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes f-fadeOut {
    to {
        opacity: 0
    }
}

.f-crossfadeIn {
    animation: var(--f-transition-duration, .2s) ease both f-crossfadeIn;
    z-index: 2
}

.f-crossfadeOut {
    animation: calc(var(--f-transition-duration, .2s) * .2) ease calc(var(--f-transition-duration, .2s) * .8) both f-crossfadeOut;
    z-index: 1
}

@keyframes f-crossfadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes f-crossfadeOut {
    to {
        opacity: 0
    }
}

.is-horizontal .f-slideIn.from-next {
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNextX
}

.is-horizontal .f-slideIn.from-prev {
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrevX
}

.is-horizontal .f-slideOut.to-next {
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNextX
}

.is-horizontal .f-slideOut.to-prev {
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrevX
}

@keyframes f-slideInPrevX {
    0% {
        transform: translate(calc(100% + var(--f-carousel-gap, 0)))
    }

    to {
        transform: translateZ(0)
    }
}

@keyframes f-slideInNextX {
    0% {
        transform: translate(calc(-100% - var(--f-carousel-gap, 0)))
    }

    to {
        transform: translateZ(0)
    }
}

@keyframes f-slideOutNextX {
    to {
        transform: translate(calc(-100% - var(--f-carousel-gap, 0)))
    }
}

@keyframes f-slideOutPrevX {
    to {
        transform: translate(calc(100% + var(--f-carousel-gap, 0)))
    }
}

.is-vertical .f-slideIn.from-next {
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNextY
}

.is-vertical .f-slideIn.from-prev {
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrevY
}

.is-vertical .f-slideOut.to-next {
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNextY
}

.is-vertical .f-slideOut.to-prev {
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrevY
}

@keyframes f-slideInPrevY {
    0% {
        transform: translateY(calc(100% + var(--f-carousel-gap, 0)))
    }

    to {
        transform: translateZ(0)
    }
}

@keyframes f-slideInNextY {
    0% {
        transform: translateY(calc(-100% - var(--f-carousel-gap, 0)))
    }

    to {
        transform: translateZ(0)
    }
}

@keyframes f-slideOutNextY {
    to {
        transform: translateY(calc(-100% - var(--f-carousel-gap, 0)))
    }
}

@keyframes f-slideOutPrevY {
    to {
        transform: translateY(calc(100% + var(--f-carousel-gap, 0)))
    }
}

.f-zoomInUp {
    animation: var(--f-transition-duration, .3s) ease both f-zoomInUp
}

.f-zoomOutDown {
    animation: var(--f-transition-duration, .3s) ease both f-zoomOutDown
}

@keyframes f-zoomInUp {
    0% {
        transform: scale(var(--f-zoomInUp-scale, .975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
        opacity: var(--f-zoomInUp-opacity, 0)
    }

    to {
        transform: scale(1) translateZ(0);
        opacity: 1
    }
}

@keyframes f-zoomOutDown {
    to {
        transform: scale(var(--f-zoomOutDown-scale, .975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
        opacity: 0
    }
}

.f-throwOutUp {
    animation: var(--f-throwOutUp-duration, .2s) ease-out both f-throwOutUp
}

.f-throwOutDown {
    animation: var(--f-throwOutDown-duration, .2s) ease-out both f-throwOutDown
}

@keyframes f-throwOutUp {
    to {
        transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
        opacity: 0
    }
}

@keyframes f-throwOutDown {
    to {
        transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
        opacity: 0
    }
}

.has-iframe .f-html,
.has-pdf .f-html,
.has-gmap .f-html {
    width: 100%;
    height: 100%;
    min-height: 1px;
    overflow: visible
}

.has-pdf .f-html,
.has-gmap .f-html {
    padding: 0
}

.f-html {
    position: relative;
    box-sizing: border-box;
    margin: var(--f-html-margin, 0);
    padding: var(--f-html-padding, 2rem);
    color: var(--f-html-color, currentColor);
    background: var(--f-html-bg)
}

.is-loading>.f-html {
    opacity: 0
}

.f-html.is-error {
    text-align: center
}

.f-iframe {
    display: block;
    margin: 0;
    border: 0;
    height: 100%;
    width: 100%
}

.f-caption {
    align-self: center;
    flex-shrink: 0;
    margin: var(--f-caption-margin);
    padding: var(--f-caption-padding, 16px 8px);
    max-width: 100%;
    max-height: calc(80vh - 100px);
    overflow: auto;
    overflow-wrap: anywhere;
    line-height: var(--f-caption-line-height);
    color: var(--f-caption-color);
    background: var(--f-caption-bg);
    font: var(--f-caption-font)
}

.has-html5video .f-html,
.has-youtube .f-html,
.has-vimeo .f-html {
    padding: 0;
    width: 100%;
    height: 100%;
    min-height: 1px;
    overflow: visible;
    max-width: var(--f-video-width, 960px);
    max-height: var(--f-video-height, 540px);
    aspect-ratio: var(--f-video-aspect-ratio);
    background: var(--f-video-bg, rgba(0, 0, 0, .9))
}

.f-html5video {
    border: 0;
    display: block;
    height: 100%;
    width: 100%;
    background: transparent
}

.f-button.is-arrow {
    --f-button-width: var(--f-arrow-width, 46px);
    --f-button-height: var(--f-arrow-height, 46px);
    --f-button-svg-width: var(--f-arrow-svg-width, 24px);
    --f-button-svg-height: var(--f-arrow-svg-height, 24px);
    --f-button-svg-stroke-width: var(--f-arrow-svg-stroke-width, 1.75);
    --f-button-border-radius: var(--f-arrow-border-radius, unset);
    --f-button-bg: var(--f-arrow-bg, transparent);
    --f-button-hover-bg: var(--f-arrow-hover-bg, var(--f-arrow-bg));
    --f-button-active-bg: var(--f-arrow-active-bg, var(--f-arrow-hover-bg));
    --f-button-shadow: var(--f-arrow-shadow);
    --f-button-color: var(--f-arrow-color);
    --f-button-hover-color: var(--f-arrow-hover-color, var(--f-arrow-color));
    --f-button-active-color: var(--f-arrow-active-color, var(--f-arrow-hover-color));
    overflow: visible
}

.f-button.is-arrow.is-prev,
.f-button.is-arrow.is-next {
    position: absolute;
    transform: translate(0);
    z-index: 20
}

.is-horizontal .f-button.is-arrow.is-prev,
.is-horizontal .f-button.is-arrow.is-next {
    inset: 50% auto auto;
    transform: translateY(-50%)
}

.is-horizontal.is-ltr .f-button.is-arrow.is-prev {
    left: var(--f-arrow-pos, 0)
}

.is-horizontal.is-ltr .f-button.is-arrow.is-next {
    right: var(--f-arrow-pos, 0)
}

.is-horizontal.is-rtl .f-button.is-arrow.is-prev {
    right: var(--f-arrow-pos, 0);
    transform: translateY(-50%) rotateY(180deg)
}

.is-horizontal.is-rtl .f-button.is-arrow.is-next {
    left: var(--f-arrow-pos, 0);
    transform: translateY(-50%) rotateY(180deg)
}

.is-vertical.is-ltr .f-button.is-arrow.is-prev,
.is-vertical.is-rtl .f-button.is-arrow.is-prev {
    top: var(--f-arrow-pos, 0);
    right: auto;
    bottom: auto;
    left: 50%;
    transform: translate(-50%)
}

.is-vertical.is-ltr .f-button.is-arrow.is-next,
.is-vertical.is-rtl .f-button.is-arrow.is-next {
    top: auto;
    right: auto;
    bottom: var(--f-arrow-pos, 0);
    left: 50%;
    transform: translate(-50%)
}

.is-vertical .f-button.is-arrow.is-prev svg,
.is-vertical .f-button.is-arrow.is-next svg {
    transform: rotate(90deg)
}

.f-carousel__toolbar {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    margin: var(--f-toolbar-margin, 0);
    padding: var(--f-toolbar-padding, 8px);
    line-height: var(--f-toolbar-line-height);
    background: var(--f-toolbar-bg, none);
    box-shadow: var(--f-toolbar-shadow, none);
    backdrop-filter: var(--f-toolbar-backdrop-filter);
    position: relative;
    z-index: 20;
    color: var(--f-toolbar-color, currentColor);
    font-size: var(--f-toolbar-font-size, 17px);
    font-weight: var(--f-toolbar-font-weight, inherit);
    font-family: var(--f-toolbar-font, -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif);
    text-shadow: var(--f-toolbar-text-shadow);
    text-align: center;
    font-variant-numeric: tabular-nums;
    -webkit-font-smoothing: subpixel-antialiased;
    white-space: nowrap;
    pointer-events: none
}

.f-carousel__toolbar.is-absolute {
    position: absolute;
    top: 0;
    left: 0;
    right: 0
}

.f-carousel__toolbar .f-button:focus-visible {
    position: relative;
    z-index: 1
}

.f-carousel__toolbar__column {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    gap: var(--f-toolbar-gap, 0)
}

.f-carousel__toolbar__column.is-left {
    display: flex;
    justify-self: flex-start;
    justify-content: flex-start
}

.f-carousel__toolbar__column.is-middle {
    display: flex;
    justify-content: center
}

.f-carousel__toolbar__column.is-right {
    display: flex;
    justify-self: flex-end;
    justify-content: flex-end;
    flex-flow: nowrap
}

.f-carousel__toolbar__column {
    pointer-events: none
}

.f-carousel__toolbar__column>* {
    pointer-events: all
}

.f-counter {
    position: relative;
    display: flex;
    flex-direction: row;
    cursor: default;
    user-select: none;
    margin: var(--f-counter-margin, 0);
    padding: var(--f-counter-padding, 4px);
    line-height: var(--f-counter-line-height);
    background: var(--f-counter-bg);
    border-radius: var(--f-counter-border-radius)
}

.f-counter span {
    padding: 0 var(--f-counter-gap, 4px)
}

:root {
    --f-thumbs-gap: 8px;
    --f-thumbs-margin: 0;
    --f-thumbs-padding-x: 8px;
    --f-thumbs-padding-y: 8px;
    --f-thumbs-bg: transparent;
    --f-thumbs-transition: max-height .3s ease, max-width .3s ease, padding .3s ease;
    --f-thumbs-z-index: 1;
    --f-thumbs-viewport-padding-x: 0px;
    --f-thumbs-viewport-padding-y: 0px;
    --f-thumb-width: 94px;
    --f-thumb-height: 76px;
    --f-thumb-clip-width: 46px;
    --f-thumb-extra-gap: 16px;
    --f-thumb-opacity: 1;
    --f-thumb-transition: opacity .3s ease, transform .15s ease;
    --f-thumb-border: none;
    --f-thumb-border-radius: 4px;
    --f-thumb-shadow: none;
    --f-thumb-bg: linear-gradient(rgba(0, 0, 0, .1), rgba(0, 0, 0, .05));
    --f-thumb-focus-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;
    --f-thumb-selected-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;
    --f-thumb-border-transition: all .1s ease;
    --f-thumb-img-width: 100%;
    --f-thumb-img-height: 100%;
    --f-thumb-img-fit: cover;
    --f-thumb-img-position: 50% 20%
}

.f-thumbs {
    --f-carousel-slide-width: var(--f-thumb-width);
    --f-carousel-slide-height: var(--f-thumb-height);
    --f-carousel-gap: var(--f-thumbs-gap);
    position: relative;
    box-sizing: border-box;
    flex-shrink: 0;
    margin: var(--f-thumbs-margin);
    padding: var(--f-thumbs-padding-y) var(--f-thumbs-padding-x);
    overflow: hidden;
    background: var(--f-thumbs-bg);
    -webkit-tap-highlight-color: transparent;
    user-select: none;
    transition: var(--f-thumbs-transition);
    z-index: var(--f-thumbs-z-index)
}

.f-thumbs.is-horizontal {
    max-height: calc(var(--f-carousel-slide-height) + var(--f-thumbs-padding-y) * 2)
}

.f-thumbs.is-horizontal.is-hidden {
    max-height: 0;
    --f-thumbs-padding-y: 0
}

.f-thumbs.is-vertical {
    max-width: calc(var(--f-carousel-slide-width) + var(--f-thumbs-padding-x) * 2)
}

.f-thumbs.is-vertical.is-hidden {
    max-width: 0;
    --f-thumbs-padding-x: 0
}

.f-thumbs.is-scrollable.is-hidden {
    max-height: 0;
    --f-thumbs-padding-y: 0
}

.f-thumbs.is-ltr {
    direction: ltr
}

.f-thumbs.is-rtl {
    direction: rtl
}

.f-thumbs img {
    display: block;
    width: var(--f-thumb-img-width);
    height: var(--f-thumb-img-height);
    object-fit: var(--f-thumb-img-fit);
    object-position: var(--f-thumb-img-position);
    pointer-events: none;
    border-radius: inherit;
    color: transparent
}

.f-thumbs img[data-lazy-src] {
    visibility: hidden
}

.f-thumbs img.has-lazyerror {
    display: none
}

.f-thumbs__viewport {
    box-sizing: border-box;
    height: 100%;
    padding: var(--f-thumbs-viewport-padding-y) var(--f-thumbs-viewport-padding-x);
    overflow: visible;
    display: grid
}

.f-thumbs__slide {
    position: relative;
    box-sizing: border-box;
    grid-area: 1/1;
    width: var(--f-carousel-slide-width);
    height: var(--f-carousel-slide-height);
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    flex-direction: column;
    cursor: pointer;
    overflow: visible
}

.f-thumbs__slide:hover button {
    opacity: var(--f-thumb-hover-opacity, 1);
    transform: var(--f-thumb-hover-transform, none)
}

.f-thumbs__slide:hover button:after {
    border: var(--f-thumb-hover-border, none);
    box-shadow: var(--f-thumb-hover-shadow, var(--f-thumb-shadow))
}

.f-thumbs__slide button {
    all: unset;
    display: block;
    margin: auto;
    padding: 0;
    position: relative;
    overflow: visible;
    width: 100%;
    height: 100%;
    outline: none;
    transition: var(--f-thumb-transition);
    border-radius: var(--f-thumb-border-radius);
    opacity: var(--f-thumb-opacity);
    transform: var(--f-thumb-transform);
    background: var(--f-thumb-bg)
}

.f-thumbs__slide button:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    transition: var(--f-thumb-border-transition);
    border-radius: inherit;
    border: var(--f-thumb-border);
    box-shadow: var(--f-thumb-shadow)
}

.f-thumbs__slide button:focus-within {
    opacity: var(--f-thumb-focus-opacity, 1);
    transform: var(--f-thumb-focus-transform, none)
}

.f-thumbs__slide button:focus-within:after {
    border: var(--f-thumb-focus-border, none);
    box-shadow: var(--f-thumb-focus-shadow, var(--f-thumb-shadow))
}

.f-thumbs__slide:active {
    opacity: var(--f-thumb-active-opacity, 1);
    transform: var(--f-thumb-active-transform, none)
}

.f-thumbs__slide:active:after {
    border: var(--f-thumb-active-border, none);
    box-shadow: var(--f-thumb-active-shadow, var(--f-thumb-shadow))
}

.f-thumbs__slide.is-selected {
    z-index: 2
}

.f-thumbs__slide.is-selected button {
    opacity: var(--f-thumb-selected-opacity, 1);
    transform: var(--f-thumb-selected-transform, none)
}

.f-thumbs__slide.is-selected button:after {
    border: var(--f-thumb-selected-border, none);
    box-shadow: var(--f-thumb-selected-shadow, var(--f-thumb-shadow))
}

.f-thumbs.is-modern {
    --f-carousel-slide-width: calc(var(--f-thumb-clip-width) + var(--f-thumbs-gap));
    --f-carousel-slide-height: var(--f-thumb-height);
    --f-carousel-gap: 0;
    --width-diff: calc((var(--f-thumb-width) - var(--f-thumb-clip-width)))
}

.f-thumbs.is-modern .f-thumbs__viewport {
    width: calc(100% + var(--f-carousel-slide-width) * 2 + var(--f-thumbs-padding-x));
    margin-inline: calc((var(--f-carousel-slide-width) + var(--f-thumbs-padding-x)) * -1)
}

.f-thumbs.is-modern .f-thumbs__slide {
    --clip-shift: calc((var(--width-diff) * .5) * var(--progress));
    --clip-path: inset(0 var(--clip-shift) round var(--f-thumb-border-radius, 0));
    padding: 0;
    overflow: visible;
    left: var(--shift, 0);
    will-change: left;
    transition: left var(--f-transition-duration) var(--f-transition-easing)
}

.f-thumbs.is-modern .f-thumbs__slide button {
    display: block;
    margin-inline: 50%;
    width: var(--f-thumb-width);
    clip-path: var(--clip-path);
    border: none;
    box-shadow: none;
    transition: clip-path var(--f-transition-duration) var(--f-transition-easing), opacity var(--f-thumb-transition-duration, .2s) var(--f-thumb-transition-easing, ease)
}

.f-thumbs.is-modern .f-thumbs__slide button:after {
    display: none
}

.f-thumbs.is-modern .f-thumbs__slide:focus:not(:focus-visible) {
    outline: none
}

.f-thumbs.is-modern .f-thumbs__slide:focus-within:not(.is-selected) button:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: var(--clip-shift);
    bottom: 0;
    right: var(--clip-shift);
    transition: border var(--f-transition-duration) var(--f-transition-easing), box-shadow var(--f-transition-duration) var(--f-transition-easing);
    border-radius: inherit;
    border: var(--f-thumb-focus-border, none);
    box-shadow: var(--f-thumb-focus-shadow, none)
}

.f-thumbs.is-modern {
    --f-transition-duration: .25s;
    --f-transition-easing: ease-out
}

.f-thumbs.is-modern.is-syncing {
    --f-transition-duration: 0s
}

.f-thumbs.is-scrollable .f-thumbs__viewport {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(var(--f-thumb-width), 1fr));
    grid-auto-rows: var(--f-thumb-height);
    gap: var(--f-thumbs-gap);
    overflow: auto;
    overscroll-behavior: contain;
    user-select: none
}

.f-thumbs.is-scrollable .f-thumbs__viewport .f-thumbs__slide {
    grid-area: auto;
    display: block;
    position: relative;
    max-width: 100%;
    width: var(--f-thumb-width);
    height: var(--f-thumb-height);
    cursor: pointer;
    outline: none
}

:root {
    --f-progressbar-height: 3px;
    --f-progressbar-color: var(--f-carousel-theme-color, #575ad6);
    --f-progressbar-opacity: 1;
    --f-progressbar-z-index: 30
}

.f-progressbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: var(--f-progressbar-z-index);
    height: var(--f-progressbar-height);
    transform: scaleX(0);
    transform-origin: 0;
    opacity: var(--f-progressbar-opacity);
    background: var(--f-progressbar-color);
    user-select: none;
    pointer-events: none;
    animation-name: f-progressbar;
    animation-play-state: running;
    animation-timing-function: linear
}

.f-progressbar:empty {
    display: block
}

button>.f-progressbar {
    --f-progressbar-height: 100%;
    --f-progressbar-opacity: .2
}

@keyframes f-progressbar {
    0% {
        transform: scaleX(0)
    }

    to {
        transform: scaleX(1)
    }
}

[data-fullscreen-action=toggle] svg g:first-child {
    display: flex
}

[data-fullscreen-action=toggle] svg g:last-child {
    display: none
}

:fullscreen [data-fullscreen-action=toggle] svg g:first-child {
    display: none
}

:fullscreen [data-fullscreen-action=toggle] svg g:last-child {
    display: flex
}

.in-fullscreen-mode>.f-carousel {
    flex: 1;
    min-width: 0 !important;
    min-height: 0 !important
}

html.with-fancybox {
    width: auto;
    overflow: visible;
    scroll-behavior: auto
}

html.with-fancybox body.hide-scrollbar {
    width: auto;
    margin-right: calc(var(--f-body-margin, 0px) + var(--f-scrollbar-compensate, 0px));
    overflow: hidden !important;
    overscroll-behavior-y: none
}

.fancybox__dialog {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    width: 100%;
    height: 100vh;
    max-height: unset;
    max-width: unset;
    padding: 0;
    margin: 0;
    border: 0;
    overflow: hidden;
    background: transparent;
    touch-action: none;
    overscroll-behavior: contain
}

.fancybox__dialog:focus {
    outline: none
}

.fancybox__dialog::backdrop {
    opacity: 0
}

@supports (height: 100dvh) {
    .fancybox__dialog {
        height: 100dvh
    }
}

.fancybox__dialog *:empty {
    display: block
}

.fancybox__container {
    --fancybox-color: #dbdbdb;
    --fancybox-backdrop-bg: rgba(24, 24, 27, .95);
    --f-toolbar-margin: 0;
    --f-toolbar-padding: 8px;
    --f-toolbar-gap: 0;
    --f-toolbar-color: #ddd;
    --f-toolbar-font-size: 16px;
    --f-toolbar-font-weight: 500;
    --f-toolbar-font: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;
    --f-toolbar-line-height: var(--f-button-height);
    --f-toolbar-text-shadow: 1px 1px 1px rgba(0, 0, 0, .75);
    --f-toolbar-shadow: none;
    --f-toolbar-bg: none;
    --f-counter-margin: 0;
    --f-counter-padding: 0px 10px;
    --f-counter-gap: 4px;
    --f-counter-line-height: var(--f-button-height);
    --f-carousel-gap: 17px;
    --f-carousel-slide-width: 100%;
    --f-carousel-slide-height: 100%;
    --f-carousel-slide-padding: 0;
    --f-carousel-slide-bg: unset;
    --f-html-color: #222;
    --f-html-bg: #fff;
    --f-error-color: #fff;
    --f-error-bg: #333;
    --f-caption-margin: 0;
    --f-caption-padding: 16px 8px;
    --f-caption-color: var(--fancybox-color, #dbdbdb);
    --f-caption-bg: transparent;
    --f-caption-font: inherit;
    --f-caption-line-height: 1.375;
    --f-spinner-color-1: rgba(255, 255, 255, .2);
    --f-spinner-color-2: rgba(255, 255, 255, .8);
    --f-spinner-width: 50px;
    --f-spinner-height: 50px;
    --f-spinner-border-radius: 50%;
    --f-spinner-border-width: 4px;
    --f-progressbar-color: rgba(255, 255, 255);
    --f-button-width: 46px;
    --f-button-height: 46px;
    --f-button-color: #ddd;
    --f-button-hover-color: #fff;
    --f-button-outline-width: 1px;
    --f-button-outline-color: rgba(255, 255, 255, .75);
    --f-button-outline-offset: 0px;
    --f-button-bg: rgba(54, 54, 54, .75);
    --f-button-border: 0;
    --f-button-border-radius: 0;
    --f-button-shadow: none;
    --f-button-transition: all .2s ease;
    --f-button-transform: none;
    --f-button-svg-width: 24px;
    --f-button-svg-height: 24px;
    --f-button-svg-stroke-width: 1.75;
    --f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, .01)), drop-shadow(1px 2px 1px rgba(24, 24, 27, .05));
    --f-button-svg-fill: none;
    --f-button-svg-disabled-opacity: .5;
    --f-arrow-pos: 32px;
    --f-arrow-width: 50px;
    --f-arrow-height: 50px;
    --f-arrow-svg-width: 24px;
    --f-arrow-svg-height: 24px;
    --f-arrow-svg-stroke-width: 2.5;
    --f-arrow-border-radius: 50%;
    --f-arrow-bg: rgba(54, 54, 54, .65);
    --f-arrow-color: #ddd;
    --f-arrow-hover-color: #fff;
    --f-close-button-width: 30px;
    --f-close-button-height: 30px;
    --f-close-button-svg-width: 24px;
    --f-close-button-svg-height: 24px;
    --f-close-button-svg-stroke-width: 1.75;
    --f-close-border-radius: 4px;
    --f-close-button-color: #fff;
    --f-close-button-hover-color: #fff;
    --f-close-button-bg: transparent;
    --f-close-button-hover-bg: transparent;
    --f-close-button-active-bg: transparent;
    --f-thumbs-margin: 0px;
    --f-thumbs-padding-x: 8px;
    --f-thumbs-padding-y: 8px;
    --f-thumbs-bg: none;
    --f-thumb-transition: all .2s ease;
    --f-thumb-width: 94px;
    --f-thumb-height: 76px;
    --f-thumb-opacity: 1;
    --f-thumb-border: none;
    --f-thumb-shadow: none;
    --f-thumb-transform: none;
    --f-thumb-focus-opacity: 1;
    --f-thumb-focus-border: none;
    --f-thumb-focus-shadow: inset 0 0 0 2px rgba(255, 255, 255, .65);
    --f-thumb-focus-transform: none;
    --f-thumb-hover-opacity: 1;
    --f-thumb-hover-border: none;
    --f-thumb-hover-transform: none;
    --f-thumb-active-opacity: var(--f-thumb-hover-opacity);
    --f-thumb-active-border: var(--f-thumb-hover-border);
    --f-thumb-active-transform: var(--f-thumb-hover-transform);
    --f-thumb-selected-opacity: 1;
    --f-thumb-selected-border: none;
    --f-thumb-selected-shadow: inset 0 0 0 2px #fff;
    --f-thumb-selected-transform: none;
    --f-scrollbar-width: 7px;
    --f-scrollbar-track-bg: #444;
    --f-scrollbar-track-border-radius: 10px;
    --f-scrollbar-track-shadow: inset 0 0 6px rgba(0, 0, 0, .2);
    --f-scrollbar-thumb-bg: #ddd;
    --f-scrollbar-thumb-border-radius: 10px
}

.fancybox__container[theme=light] {
    --fancybox-color: #222;
    --fancybox-backdrop-bg: rgba(255, 255, 255, .97);
    --f-toolbar-color: var(--fancybox-color, #222);
    --f-toolbar-text-shadow: none;
    --f-toolbar-font-weight: 400;
    --f-html-color: var(--fancybox-color, #222);
    --f-html-bg: #fff;
    --f-error-color: #555;
    --f-error-bg: #fff;
    --f-video-bg: #fff;
    --f-caption-color: #333;
    --f-spinner-color-1: rgba(0, 0, 0, .2);
    --f-spinner-color-2: rgba(0, 0, 0, .8);
    --f-spinner-border-width: 3.5px;
    --f-progressbar-color: rgba(111, 111, 116);
    --f-button-color: #333;
    --f-button-hover-color: #000;
    --f-button-outline-color: rgba(0, 0, 0, .85);
    --f-button-bg: rgba(255, 255, 255, .85);
    --f-button-svg-stroke-width: 1.3;
    --f-button-svg-filter: none;
    --f-arrow-bg: rgba(255, 255, 255, .85);
    --f-arrow-color: #333;
    --f-arrow-hover-color: #000;
    --f-arrow-svg-stroke-width: 1.3;
    --f-close-button-color: #555;
    --f-close-button-hover-color: #000;
    --f-thumb-bg: linear-gradient(#ebeff2, #e2e8f0);
    --f-thumb-focus-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #888;
    --f-thumb-selected-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #000;
    --f-scrollbar-track-bg: #ddd;
    --f-scrollbar-thumb-bg: #444
}

.fancybox__container {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column
}

.fancybox__container:focus {
    outline: none
}

.fancybox__container.has-vertical-thumbs {
    flex-direction: row-reverse
}

.fancybox__container.has-vertical-thumbs:not(.is-closing) .fancybox__viewport {
    overflow-x: clip;
    overflow-y: visible
}

.fancybox__container>*:not(.fancybox__carousel),
.fancybox__container .fancybox__carousel>*:not(.fancybox__grid, .fancybox__viewport),
.fancybox__container .fancybox__column>*:not(.fancybox__viewport),
.fancybox__container .fancybox__slide:not(.is-selected),
.fancybox__container .fancybox__slide.is-selected>*:not(.f-html, .f-panzoom__wrapper, .f-spinner) {
    opacity: var(--f-drag-opacity, 1)
}

.fancybox__container:not(.is-ready, .is-hiding) {
    visibility: hidden
}

.fancybox__container.is-revealing>*:not(.fancybox__carousel),
.fancybox__container.is-revealing .fancybox__carousel>*:not(.fancybox__grid, .fancybox__viewport),
.fancybox__container.is-revealing .fancybox__column>*:not(.fancybox__viewport),
.fancybox__container.is-revealing .fancybox__slide:not(.is-selected),
.fancybox__container.is-revealing .fancybox__slide.is-selected>*:not(.f-html, .f-panzoom__wrapper) {
    animation: var(--f-interface-enter-duration, .35s) ease none f-fadeIn
}

.fancybox__container.is-hiding>*:not(.fancybox__carousel),
.fancybox__container.is-hiding .fancybox__carousel>*:not(.fancybox__grid, .fancybox__viewport),
.fancybox__container.is-hiding .fancybox__column>*:not(.fancybox__viewport),
.fancybox__container.is-hiding .fancybox__slide.is-selected>*:not(.f-html, .f-panzoom__wrapper) {
    animation: var(--f-interface-exit-duration, .35s) ease forwards f-fadeOut
}

.fancybox__container.is-hiding .fancybox__carousel .fancybox__slide:not(.is-selected) {
    opacity: 0
}

.fancybox__container.is-hiding {
    pointer-events: none
}

.fancybox__container.is-idle .f-carousel__toolbar {
    pointer-events: none;
    opacity: 0
}

.fancybox__container.is-idle .f-button.is-arrow {
    opacity: 0
}

.fancybox__container.is-idle.is-ready .f-carousel__toolbar {
    pointer-events: none;
    animation: .15s ease-out both f-fadeOut
}

.fancybox__container.is-idle.is-ready .f-button.is-arrow {
    animation: .15s ease-out both f-fadeOut
}

.fancybox__backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background: var(--fancybox-backdrop-bg)
}

.fancybox__carousel {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    min-width: 0;
    position: relative;
    z-index: 10;
    overflow-y: visible;
    overflow-x: clip
}

.fancybox__carousel.is-vertical {
    --f-carousel-slide-height: 100%
}

.fancybox__carousel.is-ltr {
    direction: ltr
}

.fancybox__carousel.is-rtl {
    direction: rtl
}

.fancybox__carousel>.f-button.is-arrow:before {
    position: absolute;
    content: "";
    top: -30px;
    right: -30px;
    bottom: -30px;
    left: -30px;
    z-index: 1
}

.fancybox__viewport {
    display: grid;
    flex: 1;
    min-height: 0;
    min-width: 0;
    position: relative;
    overflow: visible;
    transform: translate3d(0, var(--f-drag-offset, 0), 0)
}

.fancybox__viewport.is-draggable {
    cursor: move;
    cursor: grab
}

.fancybox__viewport.is-dragging {
    cursor: move;
    cursor: grabbing
}

.fancybox__viewport [data-selectable],
.fancybox__viewport [contenteditable] {
    cursor: auto
}

.fancybox__slide {
    box-sizing: border-box;
    position: relative;
    grid-area: 1/1;
    display: flex;
    align-items: center;
    flex-direction: column;
    width: var(--f-carousel-slide-width);
    height: var(--f-carousel-slide-height);
    min-width: 0;
    min-height: 0;
    max-width: 100%;
    margin: 0;
    padding: var(--f-carousel-slide-padding);
    background: var(--f-carousel-slide-bg);
    backface-visibility: hidden;
    transform: translateZ(0);
    will-change: transform
}

.fancybox__slide:before,
.fancybox__slide:after {
    display: block;
    content: ""
}

.fancybox__slide:before {
    margin-bottom: auto
}

.fancybox__slide:after {
    margin-top: auto
}

.fancybox__slide.is-selected {
    z-index: 1
}

.fancybox__slide.f-zoomable {
    overflow: visible
}

.fancybox__slide.has-error {
    --f-html-color: var(--f-error-color, --f-html-color);
    --f-html-bg: var(--f-error-bg, --f-html-bg)
}

.fancybox__slide.has-html {
    overflow: auto;
    padding: 8px
}

.fancybox__slide.has-iframe {
    overflow: hidden;
    padding: 8px 0
}

.fancybox__slide.has-close-btn {
    padding-top: 34px
}

.fancybox__slide.has-controls:before {
    margin: 0
}

.fancybox__slide .f-spinner {
    cursor: pointer
}

.fancybox__container.is-closing .f-caption,
.fancybox__slide.is-loading .f-caption {
    visibility: hidden
}

.fancybox__container.is-closing .fancybox__carousel,
.fancybox__container.is-closing .fancybox__viewport,
.fancybox__container.is-closing .fancybox__slide.is-selected {
    overflow: visible
}

.f-button.is-close-button {
    --f-button-width: var(--f-close-button-width);
    --f-button-height: var(--f-close-button-height);
    --f-button-border-radius: var(--f-close-border-radius);
    --f-button-color: var(--f-close-button-color);
    --f-button-hover-color: var(--f-close-button-hover-color);
    --f-button-bg: var(--f-close-button-bg);
    --f-button-hover-bg: var(--f-close-button-hover-bg);
    --f-button-active-bg: var(--f-close-button-active-bg);
    --f-button-svg-width: var(--f-close-button-svg-width);
    --f-button-svg-height: var(--f-close-button-svg-height);
    --f-button-svg-stroke-width: var(--f-close-button-svg-stroke-width);
    position: absolute;
    top: calc((var(--f-button-height) + 2px) * -1);
    right: 0;
    z-index: 10
}

.is-loading .f-button.is-close-button {
    visibility: hidden
}

.fancybox__thumbs {
    flex: 0 1 100%
}

.fancybox__thumbs.is-scrollable {
    --f-thumbs-cols: 1;
    --f-thumbs-gap: 8px;
    --f-thumbs-transition: none;
    --f-thumbs-padding-x: 4px;
    --f-thumbs-padding-y: 8px;
    --f-thumbs-viewport-padding-x: 4px;
    --f-thumbs-viewport-padding-y: 0px;
    max-width: calc(var(--f-thumb-width) * var(--f-thumbs-cols) + var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1) + var(--f-thumbs-padding-x) * 2 + var(--f-thumbs-viewport-padding-x) * 2)
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar {
    width: var(--f-scrollbar-width)
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-track {
    background: var(--f-scrollbar-track-bg);
    border-radius: var(--f-scrollbar-track-border-radius);
    box-shadow: var(--f-scrollbar-track-shadow)
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-thumb {
    background: var(--f-scrollbar-thumb-bg);
    border-radius: var(--f-scrollbar-thumb-border-radius)
}

.fancybox__thumbs.is-scrollable.is-hidden {
    max-width: 0;
    --f-thumbs-padding-x: 0;
    max-height: unset;
    --f-thumbs-padding-y: unset
}

.fancybox__thumbs.is-scrollable .f-thumbs__viewport {
    overflow-x: hidden !important;
    grid-template-columns: repeat(auto-fill, calc((100% - var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1)) / var(--f-thumbs-cols))) !important
}