
.card-holder {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    border-radius: .417vw;
    display: block;
    height: 20vw;
    padding: 2.5vw;
    position: relative;
    transition: background-color .4s cubic-bezier(.16, 1, .3, 1);
    transition: background-color .4s var(--expoOut);
    width: 32.5vw
}

@media (max-width:1100px) {
    .card-holder {
        border-radius: min(1.667vw, 6.615px);
        height: min(33.333vw, 132.3px);
        width: 100%
    }
}

.card-holder .title {
    width: 20vw
}

@media (max-width:1100px) {
    .card-holder .title {
        width: min(67.5vw, 267.9075px)
    }
}

.card-holder .icon {
    bottom: 1.25vw;
    pointer-events: none;
    position: absolute;
    right: 1.25vw;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut)
}

@media (max-width:1100px) {
    .card-holder .icon {
        bottom: min(2.5vw, 9.9225px);
        right: min(2.5vw, 9.9225px)
    }
}

@media (min-width:1101px) {
    .card-holder:hover {
        background-color: #fff;
        background-color: var(--white)
    }

    .card-holder:hover .icon {
        background: rgba(43, 43, 43, .039);
        border: 1px solid transparent
    }
}

.card-download {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    border-radius: .417vw;
    display: block;
    height: 20vw;
    padding: 2.083vw 2.5vw;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut);
    width: 29.792vw
}

@media (max-width:1100px) {
    .card-download {
        height: min(21.667vw, 85.995px);
        padding: min(5vw, 19.845px);
        width: 100%
    }
}

.card-download .content {
    padding-right: 4.792vw
}

@media (max-width:1100px) {
    .card-download .content {
        padding-right: min(25vw, 1.03359375in)
    }
}

.card-download .content .link {
    bottom: 2.083vw;
    position: absolute;
    right: 2.5vw
}

@media (max-width:1100px) {
    .card-download .content .link {
        right: min(5vw, 19.845px);
        top: 50%;
        transform: translateY(-50%)
    }
}

@media (max-width:1100px) {
    .card-download .content .link .text {
        display: none
    }
}

@media (min-width:1101px) {
    .card-download:hover {
        background-color: #fff;
        background-color: var(--white)
    }
}

.card-media {
    background-color: transparent;
    border: 1px solid #e5e5e5;
    border: 1px solid var(--light);
    cursor: pointer;
    display: block;
    height: 22.5vw;
    padding: 2.083vw 1.667vw 1.667vw;
    position: relative;
    transition: background-color .4s cubic-bezier(.5, 1, .89, 1);
    transition: background-color .4s var(--p2Out);
    width: 24.25vw
}

@media (max-width:1100px) {
    .card-media {
        height: min(55.556vw, 220.5px);
        padding: min(5vw, 19.845px);
        width: min(59.167vw, 234.8325px)
    }
}

.card-media.--large {
    height: 22.5vw;
    width: 25vw
}

@media (max-width:1100px) {
    .card-media.--large {
        border: none;
        height: min(50vw, 2.0671875in);
        width: 100%
    }
}

.card-media .top {
    width: 17.5vw
}

@media (max-width:1100px) {
    .card-media .top {
        width: 100%
    }
}

.card-media .top .wysiwyg {
    margin-top: 1.25vw
}

@media (max-width:1100px) {
    .card-media .top .wysiwyg {
        -webkit-line-clamp: 5;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        margin-top: min(2.5vw, 9.9225px);
        overflow: hidden
    }
}

.card-media .bottom {
    align-items: center;
    bottom: 1.667vw;
    display: flex;
    gap: .833vw;
    left: 1.667vw;
    position: absolute
}

@media (max-width:1100px) {
    .card-media .bottom {
        bottom: min(5vw, 19.845px);
        gap: min(2.5vw, 9.9225px);
        left: min(5vw, 19.845px)
    }
}

.card-media .bottom .duration {
    color: #aaa;
    color: var(--dark);
    font-weight: 500;
    transition: color .4s cubic-bezier(.5, 1, .89, 1);
    transition: color .4s var(--p2Out)
}

@media (min-width:1101px) {
    .card-media:hover {
        background-blend-mode: multiply;
        background-color: rgba(43, 43, 43, .031);
        border: 1px solid transparent
    }

    .card-media:hover .bottom .tag {
        background-color: rgba(43, 43, 43, .078)
    }

    .card-media:hover .bottom .duration {
        color: #2b2b2b;
        color: var(--darkest)
    }
}

.card-podcast {
    cursor: pointer;
    display: block;
    position: relative;
    width: 24.25vw
}

@media (max-width:1100px) {
    .card-podcast {
        width: 100%
    }
}

.card-podcast .image,
.card-podcast .video {
    height: 20vw;
    transition: all .4s cubic-bezier(.5, 1, .89, 1);
    transition: all .4s var(--p2Out)
}

@media (max-width:1100px) {

    .card-podcast .image,
    .card-podcast .video {
        position: relative !important
    }

    .card-podcast .image,
    .card-podcast .video {
        height: min(61.111vw, 242.55px)
    }
}

.card-podcast .image img,
.card-podcast .video img {
    transform: scale(1);
    transition: all 4s cubic-bezier(.16, 1, .3, 1);
    transition: all 4s var(--expoOut)
}

.card-podcast .group {
    margin-top: .833vw
}

@media (max-width:1100px) {
    .card-podcast .group {
        margin-top: min(2.5vw, 9.9225px)
    }
}

.card-podcast .group .flex {
    gap: .833vw
}

.card-podcast .group .flex .duration {
    color: #aaa;
    color: var(--dark);
    font-weight: 500;
    transition: color .4s cubic-bezier(.5, 1, .89, 1);
    transition: color .4s var(--p2Out)
}

.card-podcast .group .title {
    margin-top: 1.25vw;
    width: 22.167vw
}

@media (max-width:1100px) {
    .card-podcast .group .title {
        margin-bottom: 0;
        margin-top: min(2.5vw, 9.9225px);
        padding-right: min(10vw, 39.69px);
        width: 100%
    }
}

@media (min-width:1101px) {

    .card-podcast:hover .image,
    .card-podcast:hover .video {
        filter: grayscale(0)
    }

    .card-podcast:hover .image img,
    .card-podcast:hover .video img {
        transform: scale(1.1)
    }

    .card-podcast:hover .group .flex .tag {
        background-color: rgba(43, 43, 43, .078)
    }

    .card-podcast:hover .group .flex .duration {
        color: #2b2b2b;
        color: var(--darkest)
    }
}

.card-podcast.--xlarge {
    height: 37.083vw;
    width: 48.958vw
}

@media (max-width:1100px) {
    .card-podcast.--xlarge {
        height: min(94.444vw, 374.85px);
        width: 100%
    }
}

.card-podcast.--xlarge .image img {
    transform: scale(1);
    transition: all 4s cubic-bezier(.16, 1, .3, 1);
    transition: all 4s var(--expoOut)
}

.card-podcast.--xlarge .group {
    bottom: 2.083vw;
    color: #fff;
    color: var(--white);
    left: 1.667vw;
    position: absolute;
    width: 30vw
}

@media (max-width:1100px) {
    .card-podcast.--xlarge .group {
        bottom: min(5vw, 19.845px);
        left: min(5vw, 19.845px);
        margin-top: 0;
        width: min(70vw, 277.83px)
    }
}

.card-podcast.--xlarge .group .title {
    color: #fff;
    color: var(--white);
    margin-bottom: 0;
    margin-top: 1.667vw
}

@media (max-width:1100px) {
    .card-podcast.--xlarge .group .title {
        margin-top: min(5vw, 19.845px);
        padding: 0;
        width: 100%
    }
}

.card-podcast.--xlarge .group .flex {
    gap: .833vw
}

@media (max-width:1100px) {
    .card-podcast.--xlarge .group .flex {
        gap: min(2.5vw, 9.9225px)
    }
}

.card-podcast.--xlarge .group .flex .duration {
    color: #fff;
    color: var(--white);
    font-weight: 500;
    opacity: .5;
    transition: all .4s cubic-bezier(.5, 1, .89, 1);
    transition: all .4s var(--p2Out)
}

@media (min-width:1101px) {

    .card-podcast.--xlarge:hover .image,
    .card-podcast.--xlarge:hover .video {
        filter: grayscale(0)
    }

    .card-podcast.--xlarge:hover .image img,
    .card-podcast.--xlarge:hover .video img {
        transform: scale(1.1)
    }

    .card-podcast.--xlarge:hover .group .flex .tag.--white {
        background-color: hsla(0, 0%, 100%, .2)
    }

    .card-podcast.--xlarge:hover .group .flex .duration {
        opacity: 1
    }
}

.card-podcast.--large {
    width: 48.958vw
}

@media (max-width:1100px) {
    .card-podcast.--large {
        width: 100%
    }
}

.card-podcast.--large .image,
.card-podcast.--large .video {
    height: 28.333vw;
    position: relative
}

@media (max-width:1100px) {

    .card-podcast.--large .image,
    .card-podcast.--large .video {
        height: min(88.889vw, 352.8px);
        width: min(80vw, 317.52px)
    }
}

.card-podcast.--large .title {
    margin-top: 1.667vw;
    width: 43.958vw
}

@media (max-width:1100px) {
    .card-podcast.--large .title {
        margin-top: min(5vw, 19.845px);
        padding-right: min(12.5vw, .516796875in);
        width: 100%
    }
}

.card-podcast.--medium .image,
.card-podcast.--medium .video {
    height: 28.333vw
}

@media (max-width:1100px) {

    .card-podcast.--medium .image,
    .card-podcast.--medium .video {
        height: min(61.111vw, 242.55px)
    }
}

.card-podcast.--audio {
    display: flex;
    gap: .833vw;
    height: 10vw;
    width: 35.833vw
}

@media (max-width:1100px) {
    .card-podcast.--audio {
        gap: min(5vw, 19.845px);
        height: auto;
        width: min(79.167vw, 314.21250000000003px)
    }
}

.card-podcast.--audio .image {
    height: 10vw;
    width: 10vw
}

@media (max-width:1100px) {
    .card-podcast.--audio .image {
        height: min(20vw, 79.38px);
        min-width: min(20vw, 79.38px);
        width: min(20vw, 79.38px)
    }
}

.card-podcast.--audio .group {
    margin-top: 0;
    width: auto
}

@media (max-width:1100px) {
    .card-podcast.--audio .group .title {
        margin-bottom: 0 !important
    }
}

.card-portfolio {
    border: 1px solid #e5e5e5;
    border: 1px solid var(--light);
    display: block;
    height: 18.333vw;
    overflow: hidden;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut);
    width: 19.333vw
}

@media (max-width:1100px) {
    .card-portfolio {
        height: min(39.722vw, 157.6575px);
        width: min(39.722vw, 157.6575px)
    }
}

.card-portfolio .logo {
    height: 12.5vw;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut);
    width: 12.5vw
}

@media (max-width:1100px) {
    .card-portfolio .logo {
        height: min(33.333vw, 132.3px);
        width: min(33.333vw, 132.3px)
    }
}

@media (max-width:1100px) {
    .card-portfolio .label {
        color: #aaa !important;
        color: var(--dark) !important
    }

    .card-portfolio .label {
        bottom: min(5vw, 19.845px);
        left: 50%;
        margin-bottom: 0;
        position: absolute;
        text-decoration: underline;
        transform: translateX(-50%)
    }
}

.card-portfolio .bg-image img {
    opacity: .0001;
    transform: scale(1.1);
    transition: all 1.8s cubic-bezier(.16, 1, .3, 1);
    transition: all 1.8s var(--expoOut)
}

.card-portfolio.--large {
    height: 23.333vw;
    width: 25vw
}

@media (max-width:1100px) {
    .card-portfolio.--large {
        aspect-ratio: 1;
        height: auto;
        width: 100%
    }
}

.card-portfolio.--large .logo {
    height: 15vw;
    width: 15vw;

}

@media (max-width:1100px) {
    .card-portfolio.--large .logo {
        height: min(33.333vw, 132.3px);
        width: min(33.333vw, 132.3px)
    }
}

@media (max-width:1100px) {
    .card-portfolio.--large .label {
        bottom: min(10vw, 39.69px);
        margin-bottom: 0
    }
}

@media (min-width:1101px) {
    .card-portfolio:hover {
        border: none
    }

    .card-portfolio:hover .logo {
        opacity: .0001
    }

    .card-portfolio:hover .bg-image img {
        opacity: 1;
        transform: scale(1)
    }
}

.card-press {
    cursor: pointer;
    display: block;
    position: relative;
    width: 24.25vw
}

@media (max-width:1100px) {
    .card-press {
        width: 100%
    }
}

.card-press .image {
    height: 20vw;
    transition: all .4s cubic-bezier(.5, 1, .89, 1);
    transition: all .4s var(--p2Out)
}

@media (max-width:1100px) {
    .card-press .image {
        height: min(66.667vw, 264.6px)
    }
}

.card-press .image img {
    transform: scale(1);
    transition: all 4s cubic-bezier(.16, 1, .3, 1);
    transition: all 4s var(--expoOut)
}

.card-press .group {
    margin-top: .833vw
}

@media (max-width:1100px) {
    .card-press .group {
        margin-top: min(2.5vw, 9.9225px)
    }
}

.card-press .group .flex {
    gap: .833vw
}

@media (max-width:1100px) {
    .card-press .group .flex {
        gap: min(2.5vw, 9.9225px)
    }
}

.card-press .group .flex .duration {
    color: #aaa;
    color: var(--dark);
    font-weight: 500;
    transition: all .4s cubic-bezier(.5, 1, .89, 1);
    transition: all .4s var(--p2Out)
}

.card-press .group .title {
    margin-top: 1.25vw;
    width: 22.167vw
}

@media (max-width:1100px) {
    .card-press .group .title {
        margin-bottom: 0 !important;
        width: min(70vw, 277.83px) !important
    }

    .card-press .group .title {
        margin-top: min(2.5vw, 9.9225px)
    }
}

.card-press.--medium .image {
    height: 28.333vw
}

@media (max-width:1100px) {
    .card-press.--medium .image {
        height: min(94.444vw, 374.85px)
    }
}

.card-press.--large {
    width: 48.958vw
}

@media (max-width:1100px) {
    .card-press.--large {
        width: 100%
    }
}

.card-press.--large .image {
    height: 28.333vw
}

@media (max-width:1100px) {
    .card-press.--large .image {
        height: min(88.889vw, 352.8px)
    }
}

.card-press.--large .title {
    margin-top: 1.667vw;
    width: 43.958vw
}

@media (max-width:1100px) {
    .card-press.--large .title {
        width: 100% !important
    }

    .card-press.--large .title {
        margin-top: min(5vw, 19.845px);
        padding-right: min(12.5vw, .516796875in)
    }
}

@media (min-width:1101px) {
    .card-press:hover .image {
        filter: grayscale(0)
    }

    .card-press:hover .image img {
        transform: scale(1.1)
    }

    .card-press:hover .group .flex .tag {
        background-color: rgba(43, 43, 43, .078)
    }

    .card-press:hover .group .flex .duration {
        color: #2b2b2b;
        color: var(--darkest)
    }
}

.card-team {
    display: block;
    height: 33.333vw;
    position: relative;
    width: 23.542vw;
    z-index: 1080
}

@media (max-width:1100px) {
    .card-team {
        height: auto;
        width: 100%
    }
}

.card-team.nolink {
    pointer-events: none
}

.card-team .image-group {
    height: 28.917vw;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .card-team .image-group {
        aspect-ratio: .84;
        background-color: #f2f2f2;
        background-color: var(--lighter);
        height: auto
    }
}

.card-team .image-group .overlay {
    opacity: .0001;
    pointer-events: initial;
    transition: all 1.2s cubic-bezier(.16, 1, .3, 1);
    transition: all 1.2s var(--expoOut)
}

.card-team .image-group .link {
    cursor: pointer;
    opacity: .0001;
    pointer-events: none;
    top: 52%;
    transition: all 1.2s cubic-bezier(.16, 1, .3, 1);
    transition: all 1.2s var(--expoOut)
}

.card-team .image {
    background-color: #f2f2f2;
    background-color: var(--lighter);
    height: 28.917vw
}

@media (max-width:1100px) {
    .card-team .image {
        background-color: transparent;
        height: 100%
    }
}

.card-team .image img {
    bottom: -6%;
    height: 95%;
    left: 50%;
    -o-object-fit: contain;
    object-fit: contain;
    top: auto;
    transform: translateX(-50%);
    width: 95%
}

@media (max-width:1100px) {
    .card-team .image img {
        bottom: 0;
        height: min(52.778vw, 209.475px);
        width: auto
    }
}

.card-team .image.placeholder img {
    height: 10vw;
    left: 50%;
    -o-object-fit: cover;
    object-fit: cover;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 13.333vw
}

@media (max-width:1100px) {
    .card-team .image.placeholder img {
        height: min(22.5vw, 66.976875pt);
        width: min(30vw, 89.30250000000001pt)
    }
}

.card-team .group {
    margin-top: .833vw
}

@media (max-width:1100px) {
    .card-team .group {
        margin-top: min(2.5vw, 9.9225px)
    }
}

.card-team .group .wysiwyg {
    margin-top: .417vw
}

.card-team .group .wysiwyg.--grey {
    color: #aaa;
    color: var(--dark)
}

@media (min-width:1101px) {
    .card-team:hover .overlay {
        opacity: .6
    }

    .card-team:hover .link {
        opacity: 1;
        pointer-events: initial;
        top: 50%
    }
}

.card-team.--large {
    height: auto;
    width: 23vw
}

@media (max-width:1100px) {
    .card-team.--large {
        height: min(111.111vw, 441px);
        width: min(77.5vw, 307.5975px)
    }
}

.card-team.--large .image {
    background-color: transparent;
    height: 25vw
}

@media (max-width:1100px) {
    .card-team.--large .image {
        bottom: 0;
        height: min(80vw, 317.52px);
        position: absolute;
        top: auto
    }
}

.card-team.--large .image img {
    height: 100%;
    width: 100%
}

@media (max-width:1100px) {
    .card-team.--large .image img {
        bottom: 0;
        top: auto
    }
}

.card-team.--large .image.placeholder img {
    height: 10vw;
    left: 50%;
    -o-object-fit: cover;
    object-fit: cover;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 13.333vw
}

@media (max-width:1100px) {
    .card-team.--large .image.placeholder img {
        height: min(22.5vw, 66.976875pt);
        width: min(30vw, 89.30250000000001pt)
    }
}

.card-team.--large .gradient {
    background: linear-gradient(-90deg, #eee, #efefef);
    background: -webkit-linear-gradient(-90deg, #eee, #efefef);
    opacity: 1;
    transition: all .4s cubic-bezier(.5, 1, .89, 1);
    transition: all .4s var(--p2Out)
}

.card-team.--large .gradient.--hover {
    background: linear-gradient(-90deg, #dedede, #f3f3f3);
    background: -webkit-linear-gradient(-90deg, #dedede, #f3f3f3);
    opacity: .0001;
    transition: all .4s cubic-bezier(.5, 1, .89, 1);
    transition: all .4s var(--p2Out)
}

.card-team.--large .group {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 13.917vw;
    justify-content: flex-end;
    margin-top: 0;
    opacity: .0001;
    padding: 2.5vw;
    text-align: center;
    transition: all .4s cubic-bezier(.5, 1, .89, 1);
    transition: all .4s var(--p2Out)
}

@media (max-width:1100px) {
    .card-team.--large .group {
        gap: min(2.5vw, 9.9225px);
        height: auto;
        opacity: 1;
        padding: min(12.5vw, .516796875in) min(4.722vw, 18.7425px)
    }
}

.card-team.--large .group .title {
    margin-top: .625vw;
    top: 10%;
    transition: all 1.2s cubic-bezier(.16, 1, .3, 1);
    transition: all 1.2s var(--expoOut)
}

@media (max-width:1100px) {
    .card-team.--large .group .title {
        margin-top: 0;
        top: 0
    }
}

.card-team.--large .group .wysiwyg {
    margin-top: 0
}

@media (min-width:1101px) {
    .card-team.--large:hover .gradient {
        opacity: 0
    }

    .card-team.--large:hover .--hover {
        opacity: 1
    }

    .card-team.--large:hover .group {
        opacity: 1
    }

    .card-team.--large:hover .group .title {
        top: 0
    }
}


@media (max-width:1100px) {

    .form,
    .wpcf7 {
        margin-top: min(11.111vw, 44.1px)
    }
}

.form .form-group,
.wpcf7 .form-group {
    margin-bottom: 2.5vw;
    position: relative
}

@media (max-width:1100px) {

    .form .form-group,
    .wpcf7 .form-group {
        margin-bottom: min(4.167vw, 16.5375px)
    }
}

.form .form-group .input,
.wpcf7 .form-group .input {
    margin-top: 1.667vw
}

.form .form-group .title,
.wpcf7 .form-group .title {
    margin-bottom: 1.667vw;
    text-align: left
}

@media (max-width:1100px) {

    .form .form-group .title,
    .wpcf7 .form-group .title {
        font-size: min(5vw, 19.845px);
        line-height: 1.15;
        margin-bottom: min(5.556vw, 22.05px)
    }
}

.form .form-group.--radio input[type=radio],
.wpcf7 .form-group.--radio input[type=radio] {
    cursor: pointer;
    height: 100%;
    opacity: .0001;
    position: absolute;
    width: 100%;
    z-index: 1
}

.form .form-group.--radio .wpcf7-list-item,
.wpcf7 .form-group.--radio .wpcf7-list-item {
    margin: 0;
    position: relative;
    white-space: wrap
}

.form .form-group.--radio .wpcf7-radio,
.wpcf7 .form-group.--radio .wpcf7-radio {
    display: flex;
    flex-wrap: wrap;
    gap: .833vw
}

@media (max-width:1100px) {

    .form .form-group.--radio .wpcf7-radio,
    .wpcf7 .form-group.--radio .wpcf7-radio {
        gap: min(2.778vw, 11.025px)
    }
}

.form .form-group.--radio .wpcf7-list-item-label,
.wpcf7 .form-group.--radio .wpcf7-list-item-label {
    border: 1px solid var(--grey);
    border-radius: .208vw;
    border-radius: var(--fradius);
    color: var(--grey);
    cursor: pointer;
    display: inline-flex;
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-size: .875vw;
    font-weight: 400;
    height: 2.5vw;
    height: var(--fheight);
    letter-spacing: .5px;
    line-height: 2.5vw;
    line-height: var(--fheight);
    padding: 0 .833vw;
    position: relative;
    transition: border-color .3s
}

@media (max-width:1100px) {

    .form .form-group.--radio .wpcf7-list-item-label,
    .wpcf7 .form-group.--radio .wpcf7-list-item-label {
        border-radius: min(1.389vw, 5.5125px);
        font-size: min(3.056vw, .126328125in);
        padding: 0 min(2.5vw, 9.9225px);
        white-space: break-spaces
    }
}

.form .form-group.--radio input[type=radio]:checked+.wpcf7-list-item-label,
.wpcf7 .form-group.--radio input[type=radio]:checked+.wpcf7-list-item-label {
    background-color: #000;
    background-color: var(--black);
    border: 1px solid #000;
    border: 1px solid var(--black);
    color: #fff;
    color: var(--white)
}

.form .form-group.--name select,
.wpcf7 .form-group.--name select {
    background-position: 82%;
    margin-bottom: .833vw;
    width: 6.208vw
}

@media (max-width:1100px) {

    .form .form-group.--name select,
    .wpcf7 .form-group.--name select {
        background-position: 82%;
        margin-bottom: min(2.778vw, 11.025px);
        width: min(21.389vw, 84.8925px)
    }
}

.form .form-group.--date input,
.wpcf7 .form-group.--date input {
    width: 9vw
}

@media (max-width:1100px) {

    .form .form-group.--date input,
    .wpcf7 .form-group.--date input {
        width: 100%
    }
}

.form .form-group.--checkbox input[type=checkbox],
.wpcf7 .form-group.--checkbox input[type=checkbox] {
    cursor: pointer;
    height: 100%;
    opacity: .0001;
    position: absolute;
    width: 100%;
    z-index: 1
}

.form .form-group.--checkbox .wpcf7-list-item,
.wpcf7 .form-group.--checkbox .wpcf7-list-item {
    margin: 0;
    position: relative
}

.form .form-group.--checkbox .wpcf7-list-item-label,
.wpcf7 .form-group.--checkbox .wpcf7-list-item-label {
    border: 1px solid var(--grey);
    border-radius: .208vw;
    border-radius: var(--fradius);
    color: var(--grey);
    cursor: pointer;
    display: inline-flex;
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-size: .875vw;
    font-weight: 400;
    height: 2.5vw;
    height: var(--fheight);
    letter-spacing: .5px;
    line-height: 2.5vw;
    line-height: var(--fheight);
    padding: 0 .833vw;
    position: relative;
    transition: border-color .3s
}

@media (max-width:1100px) {

    .form .form-group.--checkbox .wpcf7-list-item-label,
    .wpcf7 .form-group.--checkbox .wpcf7-list-item-label {
        border-radius: min(1.389vw, 5.5125px);
        font-size: min(3.056vw, .126328125in);
        padding: 0 min(2.5vw, 9.9225px)
    }
}

.form .form-group.--checkbox input[type=checkbox]:checked+.wpcf7-list-item-label,
.wpcf7 .form-group.--checkbox input[type=checkbox]:checked+.wpcf7-list-item-label {
    background-color: #000;
    background-color: var(--black);
    border: 1px solid #000;
    border: 1px solid var(--black);
    color: #fff;
    color: var(--white)
}

.form .form-group.--checkbox input[type=text],
.wpcf7 .form-group.--checkbox input[type=text] {
    margin-top: .833vw;
    width: auto
}

.form .form-group.--checkbox input[type=text].hide,
.wpcf7 .form-group.--checkbox input[type=text].hide {
    height: 0;
    margin-bottom: 0;
    opacity: .0001;
    pointer-events: none
}

.form .form-group.--number input,
.wpcf7 .form-group.--number input {
    width: 15vw
}

@media (max-width:1100px) {

    .form .form-group.--number input,
    .wpcf7 .form-group.--number input {
        width: 50%
    }
}

.form .form-group.--hide,
.wpcf7 .form-group.--hide {
    height: 0;
    margin-bottom: 0;
    opacity: .0001;
    pointer-events: none
}

.form .form-group.--legal,
.wpcf7 .form-group.--legal {
    margin-bottom: 1.25vw
}

.form .form-group.--legal .wpcf7-list-item,
.wpcf7 .form-group.--legal .wpcf7-list-item {
    margin: 0;
    position: relative
}

.form .form-group.--legal .wpcf7-list-item label,
.wpcf7 .form-group.--legal .wpcf7-list-item label {
    align-items: center;
    display: flex;
    gap: .333vw
}

@media (max-width:1100px) {

    .form .form-group.--legal .wpcf7-list-item label,
    .wpcf7 .form-group.--legal .wpcf7-list-item label {
        gap: min(1.667vw, 6.615px)
    }
}

.form .form-group.--legal .wpcf7-list-item label span,
.wpcf7 .form-group.--legal .wpcf7-list-item label span {
    /* font-family: "PP Fragment Serif", Time New Roman, serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-size: .875vw
}

@media (max-width:1100px) {

    .form .form-group.--legal .wpcf7-list-item label span,
    .wpcf7 .form-group.--legal .wpcf7-list-item label span {
        font-size: min(3.056vw, .126328125in);
        line-height: 1.6
    }
}

.form .form-group.--legal .wpcf7-list-item label span a,
.wpcf7 .form-group.--legal .wpcf7-list-item label span a {
    text-decoration: underline
}

.form .flex,
.wpcf7 .flex {
    flex-wrap: wrap;
    gap: .833vw;
    justify-content: flex-start
}

@media (max-width:1100px) {

    .form .flex,
    .wpcf7 .flex {
        gap: min(2.778vw, 11.025px)
    }
}

@media (max-width:1100px) {

    .form .flex.--2,
    .wpcf7 .flex.--2 {
        flex-direction: column
    }
}

.form .flex.--2 .text-group,
.form .flex.--2 .wpcf7-form-control-wrap,
.wpcf7 .flex.--2 .text-group,
.wpcf7 .flex.--2 .wpcf7-form-control-wrap {
    width: 48.8%
}

@media (max-width:1100px) {

    .form .flex.--2 .text-group,
    .form .flex.--2 .wpcf7-form-control-wrap,
    .wpcf7 .flex.--2 .text-group,
    .wpcf7 .flex.--2 .wpcf7-form-control-wrap {
        width: 100%
    }
}

.form .flex.--3 .wpcf7-form-control-wrap,
.wpcf7 .flex.--3 .wpcf7-form-control-wrap {
    width: 33%
}

.form .flex.--4 .wpcf7-form-control-wrap,
.wpcf7 .flex.--4 .wpcf7-form-control-wrap {
    width: 25%
}

.form .text-group,
.wpcf7 .text-group {
    margin-bottom: 1.667vw
}

@media (max-width:1100px) {

    .form .text-group,
    .wpcf7 .text-group {
        margin-bottom: min(5.556vw, 22.05px)
    }
}

.form .text-group .title,
.wpcf7 .text-group .title {
    margin-bottom: 0
}

.form .text-group .wysiwyg,
.wpcf7 .text-group .wysiwyg {
    margin-top: .417vw
}

@media (max-width:1100px) {

    .form .text-group .wysiwyg,
    .wpcf7 .text-group .wysiwyg {
        margin-top: min(2.5vw, 9.9225px)
    }
}

.form input[type=date],
.form input[type=email],
.form input[type=number],
.form input[type=tel],
.form input[type=text],
.form select,
.wpcf7 input[type=date],
.wpcf7 input[type=email],
.wpcf7 input[type=number],
.wpcf7 input[type=tel],
.wpcf7 input[type=text],
.wpcf7 select {
    background-color: #fff;
    background-color: var(--white);
    border: 1px solid var(--grey);
    border-radius: .208vw;
    border-radius: var(--fradius);
    color: #e41613;
    color: var(--main);
    display: block;
    /* font-family: "PP Fragment Serif", Time New Roman, serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-size: .875vw;
    font-weight: 400;
    height: 2.5vw;
    height: var(--fheight);
    line-height: 2.5vw;
    line-height: var(--fheight);
    padding: 0 .833vw;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {

    .form input[type=date],
    .form input[type=email],
    .form input[type=number],
    .form input[type=tel],
    .form input[type=text],
    .form select,
    .wpcf7 input[type=date],
    .wpcf7 input[type=email],
    .wpcf7 input[type=number],
    .wpcf7 input[type=tel],
    .wpcf7 input[type=text],
    .wpcf7 select {
        border-radius: min(1.389vw, 5.5125px);
        font-size: min(3.056vw, .126328125in);
        padding: 0 min(2.5vw, 9.9225px)
    }
}

.form input[type=date]::-webkit-input-placeholder,
.form input[type=email]::-webkit-input-placeholder,
.form input[type=number]::-webkit-input-placeholder,
.form input[type=tel]::-webkit-input-placeholder,
.form input[type=text]::-webkit-input-placeholder,
.form select::-webkit-input-placeholder,
.wpcf7 input[type=date]::-webkit-input-placeholder,
.wpcf7 input[type=email]::-webkit-input-placeholder,
.wpcf7 input[type=number]::-webkit-input-placeholder,
.wpcf7 input[type=tel]::-webkit-input-placeholder,
.wpcf7 input[type=text]::-webkit-input-placeholder,
.wpcf7 select::-webkit-input-placeholder {
    color: var(--grey);
    font-size: .875vw;
    font-weight: 400
}

@media (max-width:1100px) {

    .form input[type=date]::-webkit-input-placeholder,
    .form input[type=email]::-webkit-input-placeholder,
    .form input[type=number]::-webkit-input-placeholder,
    .form input[type=tel]::-webkit-input-placeholder,
    .form input[type=text]::-webkit-input-placeholder,
    .form select::-webkit-input-placeholder,
    .wpcf7 input[type=date]::-webkit-input-placeholder,
    .wpcf7 input[type=email]::-webkit-input-placeholder,
    .wpcf7 input[type=number]::-webkit-input-placeholder,
    .wpcf7 input[type=tel]::-webkit-input-placeholder,
    .wpcf7 input[type=text]::-webkit-input-placeholder,
    .wpcf7 select::-webkit-input-placeholder {
        font-size: min(3.056vw, .126328125in)
    }
}

.form input[type=date]::-moz-placeholder,
.form input[type=email]::-moz-placeholder,
.form input[type=number]::-moz-placeholder,
.form input[type=tel]::-moz-placeholder,
.form input[type=text]::-moz-placeholder,
.form select::-moz-placeholder,
.wpcf7 input[type=date]::-moz-placeholder,
.wpcf7 input[type=email]::-moz-placeholder,
.wpcf7 input[type=number]::-moz-placeholder,
.wpcf7 input[type=tel]::-moz-placeholder,
.wpcf7 input[type=text]::-moz-placeholder,
.wpcf7 select::-moz-placeholder {
    color: var(--grey);
    font-size: .875vw;
    font-weight: 400
}

@media (max-width:1100px) {

    .form input[type=date]::-moz-placeholder,
    .form input[type=email]::-moz-placeholder,
    .form input[type=number]::-moz-placeholder,
    .form input[type=tel]::-moz-placeholder,
    .form input[type=text]::-moz-placeholder,
    .form select::-moz-placeholder,
    .wpcf7 input[type=date]::-moz-placeholder,
    .wpcf7 input[type=email]::-moz-placeholder,
    .wpcf7 input[type=number]::-moz-placeholder,
    .wpcf7 input[type=tel]::-moz-placeholder,
    .wpcf7 input[type=text]::-moz-placeholder,
    .wpcf7 select::-moz-placeholder {
        font-size: min(3.056vw, .126328125in)
    }
}

.form input[type=date]:-ms-input-placeholder,
.form input[type=email]:-ms-input-placeholder,
.form input[type=number]:-ms-input-placeholder,
.form input[type=tel]:-ms-input-placeholder,
.form input[type=text]:-ms-input-placeholder,
.form select:-ms-input-placeholder,
.wpcf7 input[type=date]:-ms-input-placeholder,
.wpcf7 input[type=email]:-ms-input-placeholder,
.wpcf7 input[type=number]:-ms-input-placeholder,
.wpcf7 input[type=tel]:-ms-input-placeholder,
.wpcf7 input[type=text]:-ms-input-placeholder,
.wpcf7 select:-ms-input-placeholder {
    color: var(--grey);
    font-size: .875vw;
    font-weight: 400
}

@media (max-width:1100px) {

    .form input[type=date]:-ms-input-placeholder,
    .form input[type=email]:-ms-input-placeholder,
    .form input[type=number]:-ms-input-placeholder,
    .form input[type=tel]:-ms-input-placeholder,
    .form input[type=text]:-ms-input-placeholder,
    .form select:-ms-input-placeholder,
    .wpcf7 input[type=date]:-ms-input-placeholder,
    .wpcf7 input[type=email]:-ms-input-placeholder,
    .wpcf7 input[type=number]:-ms-input-placeholder,
    .wpcf7 input[type=tel]:-ms-input-placeholder,
    .wpcf7 input[type=text]:-ms-input-placeholder,
    .wpcf7 select:-ms-input-placeholder {
        font-size: min(3.056vw, .126328125in)
    }
}

.form input[type=date]:-moz-placeholder,
.form input[type=email]:-moz-placeholder,
.form input[type=number]:-moz-placeholder,
.form input[type=tel]:-moz-placeholder,
.form input[type=text]:-moz-placeholder,
.form select:-moz-placeholder,
.wpcf7 input[type=date]:-moz-placeholder,
.wpcf7 input[type=email]:-moz-placeholder,
.wpcf7 input[type=number]:-moz-placeholder,
.wpcf7 input[type=tel]:-moz-placeholder,
.wpcf7 input[type=text]:-moz-placeholder,
.wpcf7 select:-moz-placeholder {
    color: var(--grey);
    font-size: .875vw;
    font-weight: 400
}

@media (max-width:1100px) {

    .form input[type=date]:-moz-placeholder,
    .form input[type=email]:-moz-placeholder,
    .form input[type=number]:-moz-placeholder,
    .form input[type=tel]:-moz-placeholder,
    .form input[type=text]:-moz-placeholder,
    .form select:-moz-placeholder,
    .wpcf7 input[type=date]:-moz-placeholder,
    .wpcf7 input[type=email]:-moz-placeholder,
    .wpcf7 input[type=number]:-moz-placeholder,
    .wpcf7 input[type=tel]:-moz-placeholder,
    .wpcf7 input[type=text]:-moz-placeholder,
    .wpcf7 select:-moz-placeholder {
        font-size: min(3.056vw, .126328125in)
    }
}

.form input[type=date]:focus,
.form input[type=email]:focus,
.form input[type=number]:focus,
.form input[type=tel]:focus,
.form input[type=text]:focus,
.form select:focus,
.wpcf7 input[type=date]:focus,
.wpcf7 input[type=email]:focus,
.wpcf7 input[type=number]:focus,
.wpcf7 input[type=tel]:focus,
.wpcf7 input[type=text]:focus,
.wpcf7 select:focus {
    box-shadow: 0;
    outline: 0
}

.form input[type=date][aria-invalid=true],
.form input[type=email][aria-invalid=true],
.form input[type=number][aria-invalid=true],
.form input[type=tel][aria-invalid=true],
.form input[type=text][aria-invalid=true],
.form select[aria-invalid=true],
.wpcf7 input[type=date][aria-invalid=true],
.wpcf7 input[type=email][aria-invalid=true],
.wpcf7 input[type=number][aria-invalid=true],
.wpcf7 input[type=tel][aria-invalid=true],
.wpcf7 input[type=text][aria-invalid=true],
.wpcf7 select[aria-invalid=true] {
    border: 1px solid #d30000;
    border: 1px solid var(--error);
    color: #d30000;
    color: var(--error)
}

.form select,
.wpcf7 select {
    background: url(../images/content_img/dropdown-grey.svg) no-repeat transparent;
    background-position: 93%;
    background-size: .833vw;
    color: var(--grey)
}

@media (max-width:1100px) {

    .form select,
    .wpcf7 select {
        background-position: 95%;
        background-size: min(3.889vw, 15.435px)
    }
}

.form input[type=date],
.wpcf7 input[type=date] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(../images/content_img/date-grey.svg) no-repeat transparent;
    background-position: 93%;
    background-size: 1.667vw;
    color: var(--grey)
}

@media (max-width:1100px) {

    .form input[type=date],
    .wpcf7 input[type=date] {
        background-position: 95%;
        background-size: min(6.944vw, 27.5625px)
    }
}

.form input[type=date]::-webkit-calendar-picker-indicator,
.wpcf7 input[type=date]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    opacity: .0001
}

.form input[type=date]::-moz-focus-inner,
.wpcf7 input[type=date]::-moz-focus-inner {
    border: 0
}

.form textarea,
.wpcf7 textarea {
    background-color: #fff;
    background-color: var(--white);
    border: 1px solid var(--grey);
    border-radius: .208vw;
    border-radius: var(--fradius);
    color: #e41613;
    color: var(--main);
    display: block;
    /* font-family: "PP Fragment Serif", Time New Roman, serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-size: .875vw;
    font-weight: 400;
    height: 7.5vw;
    margin-bottom: 1.25vw;
    padding: .833vw;
    position: relative;
    resize: none;
    width: 100%
}

@media (max-width:1100px) {

    .form textarea,
    .wpcf7 textarea {
        border-radius: min(1.389vw, 5.5125px);
        font-size: min(3.056vw, .126328125in);
        height: min(33.333vw, 132.3px);
        padding: min(2.5vw, 9.9225px)
    }
}

.form textarea::-webkit-input-placeholder,
.wpcf7 textarea::-webkit-input-placeholder {
    color: var(--grey);
    font-size: .875vw;
    font-weight: 400
}

@media (max-width:1100px) {

    .form textarea::-webkit-input-placeholder,
    .wpcf7 textarea::-webkit-input-placeholder {
        font-size: min(3.056vw, .126328125in)
    }
}

.form textarea::-moz-placeholder,
.wpcf7 textarea::-moz-placeholder {
    color: var(--grey);
    font-size: .875vw;
    font-weight: 400
}

@media (max-width:1100px) {

    .form textarea::-moz-placeholder,
    .wpcf7 textarea::-moz-placeholder {
        font-size: min(3.056vw, .126328125in)
    }
}

.form textarea:-ms-input-placeholder,
.wpcf7 textarea:-ms-input-placeholder {
    color: var(--grey);
    font-size: .875vw;
    font-weight: 400
}

@media (max-width:1100px) {

    .form textarea:-ms-input-placeholder,
    .wpcf7 textarea:-ms-input-placeholder {
        font-size: min(3.056vw, .126328125in)
    }
}

.form textarea:-moz-placeholder,
.wpcf7 textarea:-moz-placeholder {
    color: var(--grey);
    font-size: .875vw;
    font-weight: 400
}

@media (max-width:1100px) {

    .form textarea:-moz-placeholder,
    .wpcf7 textarea:-moz-placeholder {
        font-size: min(3.056vw, .126328125in)
    }
}

.form textarea:focus,
.wpcf7 textarea:focus {
    box-shadow: 0;
    outline: 0
}

.form textarea[aria-invalid=true],
.wpcf7 textarea[aria-invalid=true] {
    border: 1px solid #d30000;
    border: 1px solid var(--error);
    color: #d30000;
    color: var(--error)
}

.form input[type=submit],
.wpcf7 input[type=submit] {
    background: none;
    background-color: #000;
    background-color: var(--black);
    border: none;
    border-radius: .208vw;
    border-radius: var(--fradius);
    color: #fff;
    color: var(--white);
    cursor: pointer;
    display: block;
    /* font-family: "PP Fragment Serif", Time New Roman, serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-size: 1vw;
    font-weight: 385;
    height: 3.208vw;
    line-height: 3.208vw;
    margin: auto;
    padding: 0 2.083vw;
    position: relative;
    text-align: center;
    width: auto
}

@media (max-width:1100px) {

    .form input[type=submit],
    .wpcf7 input[type=submit] {
        border-radius: min(1.389vw, 5.5125px);
        font-size: min(3.056vw, .126328125in);
        margin-top: min(4.167vw, 16.5375px);
        padding: 0 min(5vw, 19.845px);
        width: auto
    }
}

.form .wpcf7-spinner,
.wpcf7 .wpcf7-spinner {
    bottom: 0;
    left: 1.667vw;
    position: absolute
}

@media (max-width:1100px) {

    .form .wpcf7-spinner,
    .wpcf7 .wpcf7-spinner {
        left: min(11.111vw, 44.1px)
    }
}

.form div.wpcf7-response-output,
.wpcf7 div.wpcf7-response-output {
    padding: 1.25vw !important
}

.form div.wpcf7-response-output,
.wpcf7 div.wpcf7-response-output {
    background-color: transparent;
    border: 0;
    border-radius: .208vw;
    border-radius: var(--fradius);
    color: inherit;
    display: block;
    font-family: "PP Fragment Serif", Time New Roman, serif;


    font-family: var(--font-primary);
    font-size: .875vw;
    font-weight: 400;
    line-height: 1.3;
    margin: 0 0 1.25vw;
    text-align: center
}

@media (max-width:1100px) {

    .form div.wpcf7-response-output,
    .wpcf7 div.wpcf7-response-output {
        padding: min(5vw, 19.845px) !important
    }

    .form div.wpcf7-response-output,
    .wpcf7 div.wpcf7-response-output {
        border-radius: min(1.389vw, 5.5125px);
        font-size: min(3.611vw, 14.3325px);
        height: auto;
        line-height: 1.2;
        width: auto
    }
}

.form .wpcf7-not-valid-tip,
.wpcf7 .wpcf7-not-valid-tip {
    display: none
}

.wpcf7 form.sent .wpcf7-response-output {
    border: 1px solid #2e8d24 !important
}

.wpcf7 form.sent .wpcf7-response-output {
    color: #2e8d24
}

.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
    border: 1px solid #dc3232 !important
}

.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
    color: #dc3232
}

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
.clientlogo,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
    border: 0;
    font-size: 100%;
    font: inherit;
    margin: 0;
    padding: 0;
    vertical-align: baseline
}

* {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

@media (min-width:1025px) and (orientation:landscape) {
    * {
        -webkit-user-drag: none
    }
}

*,
:after,
:before {
    box-sizing: border-box
}

article,
aside,
details,
figcaption,
figure,
.clientlogo,
header,
hgroup,
menu,
nav,
section {
    display: block
}

body {
    line-height: 1
}

ol,
ul {
    list-style: none;
    list-style-type: none
}

blockquote,
q {
    quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: "";
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
    margin: 0
}

a {
    color: inherit;
    font-weight: 400;
    outline: 0;
    text-decoration: none
}

figure {
    margin: 0;
    padding: 0
}

input:focus,
select:focus,
textarea:focus {
    outline: none !important
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100'><polygon points='0,0 100,0 50,50'/></svg>") no-repeat;
    background-position: calc(100% - 20px);
    background-repeat: no-repeat;
    background-size: 9pt;
    outline: none
}

:root {
    /* --font-primary: "PP Fragment Serif", "Time New Roman", serif;
    --font-secondary: "PP Neue Montreal", "Helvetica", "Arial", sans-serif; */

    --font-primary: "Roboto", sans-serif;
    --font-secondary: "Roboto", sans-serif;
    --font-size: 0.667vw;
    --bg: #fff;
    --main: #e41613;
    --white: #fff;
    --lightest: #f7f7f7;
    --lighter: #f2f2f2;
    --light: #e5e5e5;
    --medium: #d5d5d5;
    --dark: #aaa;
    --darkest: #2b2b2b;
    --black: #000;
    --fheight: 2.500vw;
    --fradius: 0.208vw;
    --error: #d30000;
    --success: #10bb52;
    --alert: #ffd702;
    --overlay: #18181a;
    --hint: rgba(44, 42, 43, .5);
    --border: rgba(44, 42, 43, .4);
    --border2: hsla(40, 39%, 95%, .4);
    --space: 0.833vw;
    --space-half: 0.417vw;
    --swiper-navigation-size: 0.917vw;
    --swiper-navigation-color: #2c2a2b;
    --swiper-theme-color: #2c2a2b
}

@media (max-width:1100px) {
    :root {
        --space: min(2.778vw, 11.025px);
        --space-half: min(1.389vw, 5.5125px);
        --fheight: min(10.556vw, 41.895px);
        --fradius: min(1.389vw, 5.5125px)
    }
}

:root {
    --shadow: 0px 10px 10px 0px rgba(0, 0, 0, .2);
    --radius: 0.417vw;
    --radius2: 0.625vw;
    --expoInOut: cubic-bezier(0.895, 0.000, 0.180, 1.000);
    --ease-out: cubic-bezier(0.050, 0.760, 0.380, 1.015);
    --p2In: cubic-bezier(0.11, 0, 0.5, 0);
    --p2Out: cubic-bezier(0.5, 1, 0.89, 1);
    --p2InOut: cubic-bezier(0.45, 0, 0.55, 1);
    --expoIn: cubic-bezier(0.7, 0, 0.84, 0);
    --expoOut: cubic-bezier(0.16, 1, 0.3, 1);
    --expoInOut: cubic-bezier(0.87, 0, 0.13, 1)
}

@keyframes gradient {
    0% {
        background-position: 0 50%
    }

    to {
        background-position: 200% 50%
    }
}

html {
    margin-top: 0 !important
}

html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #2b2b2b;
    color: var(--darkest);
    display: block;
    font-family: PP Neue Montreal, Helvetica, Arial, sans-serif;
    font-family: var(--font-secondary);
    font-size: .667vw;
    font-size: var(--font-size);
    font-weight: 400;
    height: auto;
    letter-spacing: -.01em;
    line-height: 1.6;
    min-height: 100%;
    overflow-x: hidden;
    overscroll-behavior: contain;
    text-rendering: optimizeLegibility;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100%
}

@media (max-width:1100px) {
    html {
        font-size: .667vw;
        font-size: var(--font-size);
        height: auto;
        overflow: visible;
        overflow: initial;
        position: relative
    }
}

html ::-moz-selection {
    background: rgba(0, 0, 0, .25)
}

html ::selection {
    background: rgba(0, 0, 0, .25)
}

html.loading {
    cursor: progress !important
}

html.loading {
    pointer-events: none
}

html.loading * {
    cursor: progress !important
}

html.loading * {
    pointer-events: none
}

.lenis.lenis-smooth {
    scroll-behavior: auto
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain
}

.lenis.lenis-stopped {
    height: 100vh;
    overflow: hidden
}

.lenis.lenis-wheeling {
    pointer-events: none
}

#html {
    margin-top: 0 !important
}

#wpadminbar {
    top: 0 !important
}

body {
    -ms-overflow-style: none;
    display: block;
    height: auto;
    min-height: 100%;
    scrollbar-width: none;
    width: 100%
}

body::-webkit-scrollbar {
    display: none
}

.hidden,
.hidden * {
    visibility: hidden !important
}

.debugger,
.todo {
    display: none
}

.debug .component,
.debug .clientlogo {
    outline: 2px solid #e41613
}

@media (max-width:1100px) {

    .debug .component,
    .debug .clientlogo {
        outline: 1px solid #e41613
    }
}

.debug .todo {
    background-color: #e41613;
    border-radius: 10px;
    color: #000;
    color: var(--black);
    display: block;
    font-size: .833vw;
    font-weight: 800;
    line-height: 1.33;
    margin-bottom: 1vw;
    margin-top: 2vw;
    padding: 5px 10px
}

.debug .debugger {
    background-color: #e41613;
    border-radius: 0;
    color: #000;
    color: var(--black);
    display: block;
    font-size: .833vw;
    font-weight: 500;
    left: 0;
    line-height: 1;
    padding: 8px 20px;
    position: absolute;
    top: 0;
    z-index: 1
}

@media (max-width:1100px) {
    .debug .debugger {
        font-size: 3vw
    }
}

@media (min-width:1023px) and (orientation:landscape) {
    [data-mobile] {
        display: none !important
    }
}

@media (max-width:1100px) {
    [data-desktop] {
        display: none !important
    }
}

#app {
    background-color: #000;
    background-color: var(--black);
    display: block;
    height: auto;
    opacity: .0001;
    position: relative;
    width: 100%;
    will-change: opacity;
    z-index: 10
}

#app>div {
    background-color: #fff;
    background-color: var(--bg);
    display: block;
    height: auto;
    min-height: auto;
    position: relative;
    width: 100vw
}

@media (max-width:1100px) {
    #app>div {
        min-height: 0;
        min-height: initial
    }
}

.container {
    margin: auto;
    max-width: 100%;
    position: relative;
    width: 96.667vw
}

@media (max-width:1100px) {
    .container {
        width: calc(100% - min(5vw, 19.845px))
    }
}

.container.--wide {
    width: 100%
}

.container.--full {
    height: 100%;
    width: 100%
}

.container.--xlarge {
    width: 99.167vw
}

@media (max-width:1100px) {
    .container.--xlarge {
        width: calc(100% - min(1.667vw, 6.615px))
    }
}

.container.--large {
    width: 98.333vw
}

@media (max-width:1100px) {
    .container.--large {
        width: calc(100% - min(5vw, 19.845px))
    }
}

.container.--slarge {
    width: 96.667vw
}

@media (max-width:1100px) {
    .container.--slarge {
        width: calc(100% - min(5vw, 19.845px))
    }
}

.container.--medium {
    width: 90vw
}

@media (max-width:1100px) {
    .container.--medium {
        width: calc(100% - min(10vw, 39.69px))
    }
}

.container.--small {
    width: 80vw
}

@media (max-width:1100px) {
    .container.--small {
        width: calc(100% - min(15vw, .6201562500000001in))
    }
}

.container.--xsmall {
    width: 70vw
}

@media (max-width:1100px) {
    .container.--xsmall {
        width: calc(100% - min(20vw, 79.38px))
    }
}

.container.--xxsmall {
    width: 60vw
}

@media (max-width:1100px) {
    .container.--xxsmall {
        width: calc(100% - min(20vw, 79.38px))
    }
}

.component {
    padding: 10vw 0;
    position: relative
}

@media (max-width:1100px) {
    .component {
        overflow: hidden
    }
}

.columns {
    display: flex;
    justify-content: space-between;
    position: relative;
    width: 100%
}

.columns.--center {
    align-items: center
}

.columns.--stretch {
    justify-content: stretch
}

.columns.--start {
    justify-content: flex-start
}

.columns.--end {
    justify-content: flex-end
}

.columns.--reverse {
    flex-direction: row-reverse
}

@media (max-width:1100px) {
    .columns.--reverse {
        flex-direction: row
    }
}

.columns .item {
    flex-basis: calc(100% / var(--cols) - var(--gap) / var(--cols) * (var(--cols) - 1));
    position: relative
}

@media (max-width:1100px) {
    .columns .item {
        padding-left: 0;
        padding-right: 0
    }
}

.columns .item.--stretch {
    display: flex;
    justify-content: stretch
}

.columns .item.--start {
    display: flex;
    justify-content: flex-start
}

.columns .item.--end {
    display: flex;
    justify-content: flex-end
}

.columns.--gap {
    --gap: 0.667vw;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--gap);
    justify-content: flex-start
}

@media (max-width:1100px) {
    .columns.--gap {
        margin-left: 0;
        margin-right: 0
    }
}

.columns.--nogutter {
    -moz-column-gap: 0;
    column-gap: 0
}

.columns.--2.--gap {
    --cols: 2;
    --gap: 0.500vw
}

.columns.--2 {
    flex-wrap: wrap
}

.columns.--2 .item {
    width: 50%
}

.columns.--3.--gap {
    --cols: 3;
    --gap: 0.500vw
}

.columns.--3 {
    flex-wrap: wrap
}

.columns.--3 .item {
    width: 33.33%
}

.columns.--4.--gap {
    --cols: 4;
    --gap: 0.500vw
}

.columns.--4 {
    flex-wrap: wrap
}

.columns.--4 .item {
    width: 25%
}

.columns.--5.--gap {
    --cols: 5;
    --gap: 0.500vw
}

.columns.--5 {
    flex-wrap: wrap
}

.columns.--5 .item {
    width: 20%
}

.columns.--6 {
    flex-wrap: wrap
}

.columns.--6 .item {
    width: 16.66%
}

#guides {
    bottom: 0;
    display: block;
    height: 100%;
    left: 0;
    opacity: 1;
    pointer-events: none;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1000000
}

#guides .guides__switcher {
    background-color: red;
    bottom: 0;
    cursor: pointer;
    display: block;
    height: 30px;
    left: 0;
    opacity: .6;
    overflow: hidden;
    pointer-events: all;
    position: absolute;
    width: auto;
    width: 40px;
    will-change: transform
}

#guides .guides__switcher2 {
    background-color: aqua;
    bottom: 0;
    cursor: pointer;
    display: block;
    height: 30px;
    left: 50px;
    opacity: .6;
    overflow: hidden;
    pointer-events: all;
    position: absolute;
    width: auto;
    width: 40px;
    will-change: transform
}

#guides .guides__horizontal {
    display: none;
    height: 100%;
    left: 50%;
    margin: auto;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: 100%;
    z-index: 1000000
}

#guides .guides__horizontal .guide {
    border-left: 1px solid skyblue;
    border-right: 1px solid skyblue;
    float: left;
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    opacity: 1;
    position: relative;
    width: 5vw
}

@media (max-width:1100px) {
    #guides .guides__horizontal .guide {
        width: 10vw
    }
}

#guides .guides__horizontal2 {
    display: none;
    height: 100%;
    left: 0;
    margin: auto;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 100000
}

#guides .guides__horizontal2 .guide {
    border-right: 1px solid #d6d6d6;
    float: left;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    height: 100vh;
    opacity: .5;
    position: relative;
    width: .417vw
}

@media (max-width:1100px) {
    #guides .guides__horizontal2 .guide {
        width: .833vw
    }
}

#guides .guides__vertical {
    display: none;
    height: 100%;
    left: 50%;
    margin: auto;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: 100%;
    z-index: 1000000
}

#guides .guides__vertical .guide {
    border-bottom: 1px solid skyblue;
    border-left: 1px solid skyblue;
    border-right: 1px solid skyblue;
    height: 5vw;
    opacity: 1;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    #guides .guides__vertical .guide {
        height: 10vw
    }
}

#guides .guides__vertical2 {
    display: none;
    height: 100%;
    left: 50%;
    margin: auto;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: 100%;
    z-index: 100000
}

#guides .guides__vertical2 .guide {
    border-bottom: 1px solid #d6d6d6;
    height: .417vw;
    opacity: .5;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    #guides .guides__vertical2 .guide {
        height: .833vw
    }
}

.otgs-development-site-front-end {
    display: none !important
}

.image {
    display: block;
    filter: grayscale(.95);
    overflow: hidden;
    position: relative;
    width: 100%
}

.image:hover {

    filter: grayscale(0);
   
}

.image img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 1;
    position: absolute;
    top: 0;
    transition: filter .8s cubic-bezier(.16, 1, .3, 1);
    transition: filter .8s var(--expoOut);
    vertical-align: middle;
    width: 100%
}

.image img[src*="-200x"] {
    filter: blur(.833vw)
}

.image.--cover {
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.image.--contain img {
    -o-object-fit: contain;
    object-fit: contain
}

.image.--color {
    filter: grayscale(0)
}

.video {
    filter: grayscale(.95);
    height: auto;
    overflow: hidden;
    position: relative;
    width: 100%
}

.video iframe,
.video video {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: relative;
    width: 100%
}

.video.--cover {
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.video.--cover iframe,
.video.--cover video {
    height: 100%;
    left: 50%;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 0
}

.video.--cover iframe::-webkit-media-controls,
.video.--cover video::-webkit-media-controls {
    display: none !important
}

.video.--cover iframe[controls],
.video.--cover video[controls] {
    pointer-events: all
}

.video.--cover iframe[controls]::-webkit-media-controls,
.video.--cover video[controls]::-webkit-media-controls {
    display: flex !important
}

.video.--color {
    filter: grayscale(0)
}

.label {
    color: red;
    /* color: var(--dark); */
    font-size: 1.8vw;
    font-weight: 500;
    letter-spacing: -.02em;
    line-height: 1.2;
    position: relative
}

@media (max-width:1100px) {
    .label {
        font-size: min(3.889vw, 15.435px)
    }
}

.label.--small {
    color: #2b2b2b;
    color: var(--darkest);
    font-size: .75vw
}

@media (max-width:1100px) {
    .label.--small {
        font-size: min(3.056vw, .126328125in)
    }
}

.label.--bold {
    font-weight: 700
}

.label.--uppercase {
    text-transform: uppercase
}

@media (max-width:1100px) {
    .label.--uppercase {
        font-size: min(3.056vw, .126328125in)
    }
}

.label.--white {
    color: #fff;
    color: var(--white)
}

.display {
    line-height: 1.1;
    position: relative
}

@media (max-width:1100px) {
    .display .word {
        white-space: nowrap
    }
}

.display.--5xlarge {
    /* font-family: "PP Fragment Serif", Time New Roman, serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-size: 37.5vw;
    font-weight: 400;
    line-height: 1.01
}

@media (max-width:1100px) {
    .display.--5xlarge {
        font-size: min(38.889vw, 154.35px)
    }
}

.display.--4xlarge {
    /* font-family: "PP Fragment Serif", Time New Roman, serif; */
    font-family: "Roboto", sans-serif;
    font-family: var(--font-primary);
    font-size: 16.667vw;
    font-weight: 400;
    letter-spacing: 20%;
    line-height: 1.2
}

@media (max-width:1100px) {
    .display.--4xlarge {
        font-size: min(38.889vw, 154.35px)
    }
}

.display.--3xlarge {
    /* font-family: PP Neue Montreal, Helvetica, Arial, sans-serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-secondary);
    font-size: 11.667vw;
    font-weight: 500;
    letter-spacing: -.04em;
    line-height: .7
}

.display.--3xlarge b,
.display.--3xlarge strong {
    color: #e41613;
    color: var(--main)
}

@media (max-width:1100px) {
    .display.--3xlarge {
        font-size: min(20vw, 79.38px)
    }
}

.display.--2xlarge {
    /* font-family: PP Neue Montreal, Helvetica, Arial, sans-serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-secondary);
    font-size: 7.5vw;
    font-weight: 500;
    letter-spacing: -.06em;
    line-height: .85
}

.display.--2xlarge b,
.display.--2xlarge strong {
    color: #e41613;
    color: var(--main)
}

@media (max-width:1100px) {
    .display.--2xlarge {
        font-size: min(15.556vw, 61.74px)
    }
}

.display.--xlarge {
    font-family: PP Neue Montreal, Helvetica, Arial, sans-serif;
    font-family: var(--font-secondary);
    font-size: 5vw;
    font-weight: 500;
    letter-spacing: -.04em;
    line-height: .95
}

.display.--xlarge b,
.display.--xlarge strong {
    color: #e41613;
    color: var(--main)
}

.display.--xlarge.--serif {
    /* font-family: "PP Fragment Serif", Time New Roman, serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-weight: 400;
    letter-spacing: -.05em
}

@media (max-width:1100px) {
    .display.--xlarge {
        font-size: min(12.222vw, .5053125in)
    }
}

.display.--large {
    font-family: PP Neue Montreal, Helvetica, Arial, sans-serif;
    font-family: var(--font-secondary);
    font-size: 3.75vw;
    font-weight: 500;
    letter-spacing: -.04em;
    line-height: .95
}

@media (max-width:1100px) {
    .display.--large {
        font-size: min(8.889vw, 35.28px)
    }
}

.display.--medium {
    font-family: PP Neue Montreal, Helvetica, Arial, sans-serif;
    font-family: var(--font-secondary);
    font-size: 3.333vw;
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: .95
}

@media (max-width:1100px) {
    .display.--medium {
        font-size: min(7.778vw, 30.87px)
    }
}

.display.--small {
    font-family: PP Neue Montreal, Helvetica, Arial, sans-serif;
    font-family: var(--font-secondary);
    font-size: 2.5vw;
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1
}

.display.--small.--bold {
    font-weight: 500
}

@media (max-width:1100px) {
    .display.--small {
        font-size: min(6.667vw, 26.46px);
        line-height: 1.2
    }
}

.display.--xsmall {
    font-family: PP Neue Montreal, Helvetica, Arial, sans-serif;
    font-family: var(--font-secondary);
    font-size: 2.083vw;
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1
}

@media (max-width:1100px) {
    .display.--xsmall {
        font-size: min(5.556vw, 22.05px)
    }
}

.text {
    font-family: PP Neue Montreal, Helvetica, Arial, sans-serif;
    font-family: var(--font-secondary);
    font-weight: 400;
    letter-spacing: -.02em;
    position: relative
}

.text.--xlarge {
    font-size: 1.667vw;
    line-height: 1.2
}

@media (max-width:1100px) {
    .text.--xlarge {
        font-size: min(5vw, 19.845px)
    }
}

.text.--large {
    font-size: 1.25vw;
    line-height: 1.25
}

.text.--large.--serif {
    font-family: "PP Fragment Serif", Time New Roman, serif;
    font-family: "Roboto", sans-serif;
    font-family: var(--font-primary);
    font-size: 1.167vw
}

@media (max-width:1100px) {
    .text.--large {
        font-size: min(3.889vw, 15.435px)
    }
}

.text.--medium {
    font-size: 1vw;
    line-height: 1.2
}

.text.--medium.--uppercase {
    font-weight: 700;
    text-transform: uppercase
}

@media (max-width:1100px) {
    .text.--medium {
        font-size: min(3.889vw, 15.435px);
        letter-spacing: .02em
    }
}

.text.--small {
    font-size: .917vw;
    font-weight: 500;
    line-height: 1
}

@media (max-width:1100px) {
    .text.--small {
        font-size: min(3.333vw, 13.23px)
    }
}

.text.--xsmall {
    font-size: .75vw;
    /* font-size: 1.2vw; */
    line-height: 1.2
}

.text.--project {
   
    font-size: 1vw;
    line-height: 1.2
}

.text.--xsmall.--uppercase {
    font-weight: 700;
    text-transform: uppercase
}

@media (max-width:1100px) {
    .text.--xsmall {
        font-size: min(3.056vw, .126328125in)
    }
}

.text.--bold {
    font-weight: 500
}

.text.--bold a {
    font-weight: 500
}

.text b,
.text strong {
    font-weight: 500
}

.text em,
.text i {
    font-style: italic
}

.text p {
    margin-bottom: 1.25vw
}

@media (max-width:1100px) {
    .text p {
        margin-bottom: min(8.333vw, 33.075px)
    }
}

.text p:last-child {
    margin-bottom: 0
}

@media (max-width:1100px) {
    .text p[\:has\(\%3E\%20a\)] {
        margin-bottom: min(1.389vw, 5.5125px)
    }
}

.text p[\:has\(\%3E\%20a\)] {
    margin-bottom: .208vw
}

.text p:has(>a) {
    margin-bottom: .208vw
}

@media (max-width:1100px) {
    .text p[\:has\(\%3E\%20a\)] {
        margin-bottom: min(1.389vw, 5.5125px)
    }

    .text p:has(>a) {
        margin-bottom: min(1.389vw, 5.5125px)
    }
}

.text h1,
.text h2,
.text h3,
.text h4,
.text h5,
.text h6 {
    font-weight: 500;
    line-height: 1;
    margin-bottom: 1rem;
    margin-top: 4.167vw
}

.text h1 {
    font-size: 4vw
}

@media (max-width:1100px) {
    .text h1 {
        font-size: min(26.667vw, 6.615pc)
    }
}

.text h2 {
    font-size: 2.667vw
}

@media (max-width:1100px) {
    .text h2 {
        font-size: min(6.944vw, 27.5625px);
        margin-top: min(11.111vw, 44.1px)
    }
}

.text h3 {
    font-size: 1.667vw;
    margin-top: 1.667vw
}

@media (max-width:1100px) {
    .text h3 {
        font-size: min(6.111vw, .25265625in);
        margin-bottom: min(4.444vw, 17.64px);
        margin-top: min(8.889vw, 35.28px)
    }
}

.text h4 {
    font-size: 1.667vw
}

@media (max-width:1100px) {
    .text h4 {
        font-size: min(11.111vw, 44.1px)
    }
}

.text h5 {
    font-size: 1.167vw
}

@media (max-width:1100px) {
    .text h5 {
        font-size: min(7.778vw, 30.87px)
    }
}

.text h6 {
    font-size: .5vw;
    letter-spacing: -.01em
}

@media (max-width:1100px) {
    .text h6 {
        font-size: min(4.444vw, 17.64px)
    }
}

.text .image {
    height: auto;
    margin-bottom: 1rem;
    width: 100%
}

.text .image img {
    vertical-align: middle
}

.text img,
.text p>img,
.text>img {
    height: auto;
    margin-bottom: 1rem;
    vertical-align: middle;
    width: 100%
}

.text ol,
.text ul {
    display: flex;
    flex-direction: column;
    gap: .833vw;
    margin-top: 1.042vw;
    padding-left: 1.042vw
}

>.text ol:first-child,
>.text ul:first-child {
    margin-top: 0
}

.text ol li,
.text ul li {
    margin-bottom: .5rem
}

.text ol li::marker,
.text ul li::marker {
    color: #e41613;
    color: var(--main)
}

@media (max-width:1100px) {

    .text ol li::marker,
    .text ul li::marker {
        font-size: min(4.444vw, 17.64px)
    }
}

.text ol li ul,
.text ul li ul {
    list-style: circle;
    margin-top: .625vw
}

.text ul {
    list-style: disc
}

.text ol {
    list-style: decimal
}

.text a {
    word-wrap: break-word;
    color: #aaa;
    color: var(--dark);
    display: inline;
    font-weight: 400;
    hyphens: auto;
    opacity: 1;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut)
}

@media (max-width:1100px) {
    .text a {
        font-size: min(3.889vw, 15.435px);
        line-height: .77
    }
}

@media (min-width:1101px) {
    .text a:hover {
        opacity: .6
    }
}

.text .button {
    display: inline-flex;
    text-decoration: none;
    width: auto
}

.text .button .text {
    text-decoration: none
}

.text blockquote {
    font-size: 2vw;
    font-weight: 500;
    letter-spacing: -.02em;
    line-height: 1.16;
    margin-top: 5vw
}

@media (max-width:1100px) {
    .text blockquote {
        font-size: min(6.667vw, 26.46px);
        line-height: 1.16
    }
}

.text table {
    border: 1px solid;
    margin-bottom: 1rem;
    width: 100%
}

.text table td,
.text table th {
    border-bottom: 1px solid;
    font-size: 80%;
    padding: .833vw
}

@media (max-width:1100px) {

    .text table td,
    .text table th {
        padding: min(5.556vw, 22.05px)
    }
}

.link {
    align-items: center;
    cursor: pointer;
    display: inline-flex;
    opacity: 1;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut)
}

.link .text {
    font-size: 1vw;
    font-weight: 500;
    line-height: 1.2;
    overflow: hidden;
    padding-bottom: .25vw
}

@media (max-width:1100px) {
    .link .text {
        font-size: min(3.889vw, 15.435px)
    }
}

.link .underline {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    bottom: .083vw;
    height: 2px;
    left: 0;
    position: absolute;
    transform-origin: left;
    width: 100%
}

@media (max-width:1100px) {
    .link .underline {
        height: 1px;
        transform: none
    }
}

.link.--white {
    color: #fff;
    color: var(--white)
}

.link.--white .underline {
    background-color: #fff;
    background-color: var(--white)
}

.link.--grey {
    color: #aaa;
    color: var(--dark)
}

.link.--grey .underline {
    background-color: #aaa;
    background-color: var(--dark)
}

.link.--small .text {
    font-size: .75vw;
    padding-bottom: .167vw
}

@media (max-width:1100px) {
    .link.--small .text {
        font-size: min(3.056vw, .126328125in)
    }
}

.link.--small .underline {
    height: 1px
}

.link.--small.--white {
    color: #fff;
    color: var(--white)
}

.link.--small.--white .underline {
    background-color: #fff;
    background-color: var(--white)
}

.link.--small.--grey {
    color: #aaa;
    color: var(--dark)
}

.link.--small.--grey .underline {
    background-color: #aaa;
    background-color: var(--dark)
}

.link.--icon .icon.--large {
    margin-left: 1vw
}

@media (max-width:1100px) {
    .link.--icon .icon.--large {
        margin-left: min(2.5vw, 9.9225px)
    }
}

.link.--icon .icon.--medium {
    margin-left: .833vw
}

@media (max-width:1100px) {
    .link.--icon .icon.--medium {
        margin-left: min(2.5vw, 9.9225px)
    }
}

.link.--icon .icon.--small {
    margin-left: .417vw
}

@media (max-width:1100px) {
    .link.--icon .icon.--small {
        margin-left: min(2.5vw, 9.9225px)
    }
}

@media (min-width:1101px) {

    .link.--icon:hover .icon.--large,
    .link.--icon:hover .icon.--medium {
        background-blend-mode: multiply;
        background-color: rgba(43, 43, 43, .039);
        border: 1px solid transparent
    }
}

.link.--icon.--white .icon span {
    background: #fff;
    background: var(--white)
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .link.--icon.--white .icon span {
        background: #fff;
        background: var(--white)
    }
}

@media (min-width:1101px) {

    .link.--icon.--white:hover .icon.--large,
    .link.--icon.--white:hover .icon.--medium {
        background-color: hsla(0, 0%, 100%, .102)
    }
}

.link.--icon.--grey .icon span {
    background: var(--grey)
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .link.--icon.--grey .icon span {
        background: var(--grey)
    }
}

@media (min-width:1101px) {

    .link.--icon.--grey:hover .icon.--large,
    .link.--icon.--grey:hover .icon.--medium {
        background-color: hsla(0, 0%, 100%, .102)
    }
}

.link.--disabled {
    cursor: not-allowed;
    opacity: .3;
    pointer-events: none
}

.button {
    align-items: center;
    cursor: pointer;
    display: inline-flex;
    font-size: .917vw;
    font-weight: 500;
    height: 5vw;
    justify-content: center;
    line-height: 5vw;
    min-width: 15vw;
    padding: 0 .833vw;
    position: relative;
    text-align: center;
    transition: all .8s cubic-bezier(.16, 1, .3, 1);
    transition: all .8s var(--expoOut);
    width: auto
}

@media (max-width:1100px) {
    .button {
        font-size: min(3.889vw, 15.435px) !important
    }

    .button {
        height: min(11.111vw, 44.1px);
        line-height: min(11.111vw, 44.1px);
        padding: min(4.167vw, 16.5375px) min(7.5vw, 29.767500000000002px)
    }
}

.button.--primary {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    color: #fff;
    color: var(--white);
    font-size: .917vw
}

@media (min-width:1101px) {
    .button.--primary:hover {
        background-color: rgba(43, 43, 43, .95)
    }
}

.button.--disabled {
    background-blend-mode: darken;
    background-color: rgba(43, 43, 43, .3);
    pointer-events: none
}

.button-text {
    white-space: nowrap
}

.actions {
    align-items: center;
    display: flex;
    gap: 1vw
}

@media (max-width:1100px) {
    .actions {
        gap: min(3.333vw, 13.23px)
    }
}

.tag {
    align-items: center;
    background-blend-mode: multiply;
    background-color: rgba(43, 43, 43, .039);
    display: inline-flex;
    font-size: .917vw;
    font-weight: 500;
    gap: .333vw;
    height: 2.333vw;
    justify-content: center;
    line-height: 2.333vw;
    padding: 0 .833vw 0 .625vw;
    position: relative;
    transition: all .3s cubic-bezier(.16, 1, .3, 1);
    transition: all .3s var(--expoOut)
}

@media (max-width:1100px) {
    .tag {
        font-size: min(3.056vw, .126328125in);
        gap: min(1.389vw, 5.5125px);
        height: min(7.5vw, 29.767500000000002px);
        line-height: min(7.5vw, 29.767500000000002px);
        padding: 0 min(2.5vw, 9.9225px)
    }
}

.tag span {
    height: 1vw;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut);
    width: 1vw
}

@media (max-width:1100px) {
    .tag span {
        height: min(4.444vw, 17.64px);
        width: min(4.444vw, 17.64px)
    }
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .tag span {
        background: #2b2b2b;
        background: var(--darkest);
        -webkit-mask-size: contain;
        mask-size: contain
    }
}

.tag.--press span {
    -webkit-mask-image: url(../images/content_img/press.svg);
    mask-image: url(../images/content_img/press.svg)
}

.tag.--podcast span {
    -webkit-mask-image: url(../images/content_img/podcast.svg);
    mask-image: url(../images/content_img/podcast.svg)
}

.tag.--media span {
    -webkit-mask-image: url(../images/content_img/media.svg);
    mask-image: url(../images/content_img/media.svg)
}

.tag.--white {
    background-color: hsla(0, 0%, 100%, .1);
    color: #fff;
    color: var(--white)
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .tag.--white span {
        background: #fff;
        background: var(--white)
    }
}

.icon {
    background-color: transparent;
    cursor: pointer;
    display: block;
    height: 2.5vw;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut);
    width: 2.5vw
}

@media (max-width:1100px) {
    .icon {
        font-size: min(4.444vw, 17.64px);
        height: min(10vw, 39.69px);
        width: min(10vw, 39.69px)
    }
}

.icon.--large {
    border: 1px solid #d5d5d5;
    border: 1px solid var(--medium);
    height: 2.5vw;
    width: 2.5vw
}

@media (max-width:1100px) {
    .icon.--large {
        height: min(10vw, 39.69px);
        width: min(10vw, 39.69px)
    }
}

.icon.--medium {
    border: 1px solid #e5e5e5;
    border: 1px solid var(--light);
    height: 2.083vw;
    width: 2.083vw
}

@media (max-width:1100px) {
    .icon.--medium {
        height: min(7.5vw, 29.767500000000002px);
        width: min(7.5vw, 29.767500000000002px)
    }
}

@media (min-width:1101px) {
    .icon:hover {
        background-color: rgba(43, 43, 43, .039);
        border: 1px solid transparent
    }
}

.icon.--small {
    border: 0;
    height: 1vw;
    width: 1vw
}

@media (max-width:1100px) {
    .icon.--small {
        height: 2.5vw;
        width: 2.5vw
    }
}

.icon.--disabled {
    cursor: not-allowed;
    opacity: .4;
    pointer-events: none
}

.icon span {
    height: .917vw;
    left: 50%;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    vertical-align: middle;
    width: .917vw
}

@media (max-width:1100px) {
    .icon span {
        height: min(4.444vw, 17.64px);
        width: min(4.444vw, 17.64px)
    }
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .icon span {
        background: #2b2b2b;
        background: var(--darkest);
        -webkit-mask-size: contain;
        mask-size: contain
    }
}

.icon.--arrow-down span {
    height: .583vw;
    -webkit-mask-image: url(../images/content_img/arrow-down.svg);
    mask-image: url(../images/content_img/arrow-down.svg);
    width: .583vw
}

@media (max-width:1100px) {
    .icon.--arrow-down span {
        height: min(3.333vw, 13.23px);
        width: min(3.333vw, 13.23px)
    }
}

.icon.--arrow-right span {
    -webkit-mask-image: url(../images/content_img/arrow-right.svg);
    mask-image: url(../images/content_img/arrow-right.svg)
}

.icon.--arrow-left span {
    -webkit-mask-image: url(../images/content_img/arrow-left.svg);
    mask-image: url(../images/content_img/arrow-left.svg)
}

.icon.--download span {
    height: .667vw;
    -webkit-mask-image: url(../images/content_img/arrow-download.svg);
    mask-image: url(../images/content_img/arrow-download.svg);
    width: .667vw
}

@media (max-width:1100px) {
    .icon.--download span {
        height: min(3.333vw, 13.23px);
        width: min(3.333vw, 13.23px)
    }
}

.icon.--closer span {
    height: .667vw;
    -webkit-mask-image: url(../images/content_img/closer.svg);
    mask-image: url(../images/content_img/closer.svg);
    width: .667vw
}

@media (max-width:1100px) {
    .icon.--closer span {
        height: min(3.333vw, 13.23px);
        width: min(3.333vw, 13.23px)
    }
}

.icon.--play span {
    height: 1.042vw;
    -webkit-mask-image: url(../images/content_img/play.svg);
    mask-image: url(../images/content_img/play.svg);
    width: 1.042vw
}

@media (max-width:1100px) {
    .icon.--play span {
        height: min(6.667vw, 26.46px);
        width: min(6.667vw, 26.46px)
    }
}

.icon.--pause span {
    height: 1vw;
    -webkit-mask-image: url(../images/content_img/pause.svg);
    mask-image: url(../images/content_img/pause.svg);
    width: 1vw
}

@media (max-width:1100px) {
    .icon.--pause span {
        height: min(6.667vw, 26.46px);
        width: min(6.667vw, 26.46px)
    }
}

.icon.--soundon span {
    height: .75vw;
    -webkit-mask-image: url(../images/content_img/soundon.svg);
    mask-image: url(../images/content_img/soundon.svg);
    width: .75vw
}

@media (max-width:1100px) {
    .icon.--soundon span {
        height: min(4.444vw, 17.64px);
        width: min(4.444vw, 17.64px)
    }
}

.icon.--soundoff span {
    height: .75vw;
    -webkit-mask-image: url(../images/content_img/soundoff.svg);
    mask-image: url(../images/content_img/soundoff.svg);
    width: .75vw
}

@media (max-width:1100px) {
    .icon.--soundoff span {
        height: min(4.444vw, 17.64px);
        width: min(4.444vw, 17.64px)
    }
}

.icon.--white {
    border: 1px solid hsla(0, 0%, 100%, .502)
}

.icon.--white span {
    background: #fff;
    background: var(--white)
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .icon.--white span {
        background: #fff;
        background: var(--white)
    }
}

@media (min-width:1101px) {
    .icon.--white:hover {
        background-color: hsla(0, 0%, 100%, .102);
        border: 1px solid transparent
    }

    .icon.--white:hover span {
        background: #fff;
        background: var(--white)
    }

    @supports ((-webkit-mask:url(./)) or (mask:url(""))) {
        .icon.--white:hover span {
            background: #fff;
            background: var(--white)
        }
    }
}

.share {
    align-items: center;
    display: flex;
    position: relative
}

.share .share-item {
    align-items: center;
    background-color: #fff;
    background-color: var(--white);
    border: 1px solid #d5d5d5;
    border: 1px solid var(--medium);
    display: block;
    display: flex;
    font-size: .833vw;
    height: 2.5vw;
    justify-content: center;
    width: 2.5vw
}

@media (max-width:1100px) {
    .share .share-item {
        font-size: min(4.444vw, 17.64px);
        height: min(10vw, 39.69px);
        width: min(10vw, 39.69px)
    }
}

@media (min-width:1101px) {
    .share .share-item:hover {
        background-blend-mode: multiply;
        background-color: rgba(43, 43, 43, .039)
    }
}

.flex {
    align-items: center;
    display: flex
}

.flex.--end {
    justify-content: flex-end
}

.flex.--center {
    justify-content: center
}

.flex.--between {
    justify-content: space-between
}

.gradient,
.overlay {
    background-color: #000;
    background-color: var(--black);
    height: 100%;
    left: 0;
    opacity: 1;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%
}

.gradient.--5,
.overlay.--5 {
    opacity: .05
}

.gradient.--10,
.overlay.--10 {
    opacity: .1
}

.gradient.--20,
.overlay.--20 {
    opacity: .2
}

.gradient.--30,
.overlay.--30 {
    opacity: .3
}

.gradient.--40,
.overlay.--40 {
    opacity: .3
}

.gradient.--50,
.overlay.--50 {
    opacity: .5
}

.gradient.--60,
.overlay.--60 {
    opacity: .6
}

.gradient.--70,
.overlay.--70 {
    opacity: .7
}

.gradient.--80,
.overlay.--80 {
    opacity: .8
}

.gradient.--90,
.overlay.--90 {
    opacity: .9
}

.gradient {
    background: #000;
    background: var(--black);
    background: linear-gradient(180deg, transparent, #000);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000", endColorstr="#000", GradientType=0)
}

.modal {
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 3080
}

.modal .closer {
    cursor: pointer;
    position: absolute;
    right: 2.5vw;
    top: 2.5vw
}

.mask {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    cursor: pointer;
    height: 100%;
    left: 0;
    opacity: .95;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%
}

.group {
    position: relative;
    width: 100%
}

.canvas {
    bottom: 0;
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    left: 0;
    pointer-events: none;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    will-change: transform
}

.text-block-center {
    margin: 0 auto;
    position: relative;
    text-align: center;
    width: 60vw
}

@media (max-width:1100px) {
    .text-block-center {
        width: min(75vw, 297.675px)
    }
}

.text-block-center .label {
    margin-bottom: 2.5vw
}

@media (max-width:1100px) {
    .text-block-center .label {
        margin-bottom: min(10vw, 39.69px)
    }
}

.text-block-center .wysiwyg {
    margin-bottom: 2.5vw
}

@media (max-width:1100px) {
    .text-block-center .wysiwyg {
        margin-bottom: min(4.167vw, 16.5375px)
    }
}

.text-block-center .actions {
    margin-bottom: 2.5vw
}

@media (max-width:1100px) {
    .text-block-center .actions {
        margin-bottom: min(4.167vw, 16.5375px)
    }
}

.text-block-center.--white .label,
.text-block-center.--white .link,
.text-block-center.--white .title,
.text-block-center.--white .wysiwyg {
    color: #fff;
    color: var(--white)
}

.text-block-center.--medium {
    width: 50vw
}

.text-block-left {
    position: relative;
    width: 45vw
}

@media (max-width:1100px) {
    .text-block-left {
        padding: 0 min(10vw, 39.69px);
        width: 100%
    }
}

.text-block-left .label {
    margin-bottom: 2.5vw
}

@media (max-width:1100px) {
    .text-block-left .label {
        margin-bottom: min(4.167vw, 16.5375px)
    }
}

.text-block-left .actions,
.text-block-left .wysiwyg {
    margin-top: 2.5vw
}

@media (max-width:1100px) {

    .text-block-left .actions,
    .text-block-left .wysiwyg {
        margin-top: min(5.556vw, 22.05px)
    }
}

.text-block-left .actions {
    justify-content: flex-start
}

.text-block-left.--medium {
    width: 36.667vw
}

@media (max-width:1100px) {
    .text-block-left.--medium {
        width: 100%
    }
}

.text-block-left.--medium .actions,
.text-block-left.--medium .wysiwyg {
    margin-top: 2.5vw
}

@media (max-width:1100px) {

    .text-block-left.--medium .actions,
    .text-block-left.--medium .wysiwyg {
        margin-top: min(5.556vw, 22.05px)
    }
}

.text-block-left.--small {
    width: 20vw
}

@media (max-width:1100px) {
    .text-block-left.--small {
        width: 100%
    }
}

.text-block-left.--small .label {
    margin-bottom: 1.667vw
}

@media (max-width:1100px) {
    .text-block-left.--small .label {
        margin-bottom: min(5vw, 19.845px)
    }
}

.text-block-left.--small .wysiwyg {
    margin-top: 0
}

.text-block-left.--small .actions {
    margin-top: 1.667vw
}

@media (max-width:1100px) {
    .text-block-left.--small .actions {
        margin-top: min(7.5vw, 29.767500000000002px)
    }
}

.text-block-left.--xsmall {
    width: 10vw
}

@media (max-width:1100px) {
    .text-block-left.--xsmall {
        width: 100%
    }
}

.text-block-left.--xsmall .label {
    margin-bottom: 1.25vw
}

@media (max-width:1100px) {
    .text-block-left.--xsmall .label {
        margin-bottom: min(5vw, 19.845px)
    }
}

.text-block-left.--xsmall .wysiwyg {
    margin-top: 0
}

.text-block-left.--xsmall .actions {
    margin-top: 1.25vw
}

@media (max-width:1100px) {
    .text-block-left.--xsmall .actions {
        margin-top: min(4.167vw, 16.5375px)
    }
}

.text-block-left.--white .label,
.text-block-left.--white .link,
.text-block-left.--white .title,
.text-block-left.--white .wysiwyg {
    color: #fff;
    color: var(--white)
}

.text-block-left.--white .button.--primary {
    background-color: #fff;
    background-color: var(--white);
    border: 1px solid #fff;
    border: 1px solid var(--white);
    color: #e41613;
    color: var(--main)
}

.text-block-left.--white .button.--secondary {
    border: 1px solid #fff;
    border: 1px solid var(--white);
    color: #fff;
    color: var(--white)
}

.table {
    margin-top: 7.5vw
}

@media (max-width:1100px) {
    .table {
        margin-top: min(20vw, 79.38px)
    }
}

.table .head {
    padding-bottom: .5vw
}

@media (max-width:1100px) {
    .table .head {
        display: none
    }
}

.table .body .row {
    border-top: 1px solid rgba(0, 0, 0, .2);
    padding: 2.5vw 0 6.667vw
}

@media (max-width:1100px) {
    .table .body .row {
        flex-wrap: wrap;
        justify-content: space-between;
        padding: min(5vw, 19.845px) 0 min(20vw, 79.38px)
    }
}

.table .body .row .text p {
    margin-bottom: 2.5vw
}

@media (max-width:1100px) {
    .table .body .row .text p {
        margin-bottom: min(5vw, 19.845px)
    }
}

.table .body .row .text p:last-child {
    margin-bottom: 0
}

.table .row {
    display: flex
}

@media (max-width:1100px) {
    .table .row .cell .label {
        padding-bottom: min(5vw, 19.845px)
    }
}

.table .row .cell:first-child {
    width: 25vw
}

@media (max-width:1100px) {
    .table .row .cell:first-child {
        margin-bottom: min(25vw, 1.03359375in);
        width: min(55.556vw, 220.5px)
    }
}

.table .row .cell:last-child,
.table .row .cell:nth-child(2) {
    width: 12.5vw
}

@media (max-width:1100px) {

    .table .row .cell:last-child,
    .table .row .cell:nth-child(2) {
        width: min(40vw, 158.76px)
    }
}

.table .row .cell:nth-child(2) {
    margin-left: 20vw
}

@media (max-width:1100px) {
    .table .row .cell:nth-child(2) {
        margin-left: 0;
        width: min(40vw, 158.76px)
    }
}

.table .row .cell:last-child {
    margin-left: 17.5vw
}

@media (max-width:1100px) {
    .table .row .cell:last-child {
        margin-left: 0
    }
}

.dots {
    align-items: center;
    display: flex;
    gap: .75vw;
    justify-content: center;
    position: relative
}

@media (max-width:1100px) {
    .dots {
        gap: min(5vw, 19.845px)
    }
}

.dots .dot {
    background-color: #d9d9d9;
    border-radius: 50%;
    cursor: pointer;
    height: .333vw;
    position: relative;
    width: .333vw
}

@media (max-width:1100px) {
    .dots .dot {
        height: min(1.667vw, 6.615px);
        width: min(1.667vw, 6.615px)
    }
}

.dots .dot.--active {
    background-color: #e41613;
    background-color: var(--main)
}

.filter {
    align-items: center;
    display: flex;
    gap: 2.667vw;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .filter {
        flex-direction: column;
        gap: min(2.5vw, 9.9225px)
    }
}

.filter .filter-item {
    background: url(../images/content_img/arrow-filter.svg) no-repeat transparent;
    background-position: 100%;
    background-size: .833vw;
    border: 0;
    border-bottom: 2px solid #e5e5e5;
    border-bottom: 2px solid var(--light);
    color: #aaa;
    color: var(--dark);
    font-size: .917vw;
    font-weight: 500;
    height: 2.667vw;
    letter-spacing: -.02em;
    line-height: 2.667vw;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut);
    width: 14.167vw
}

.filter .filter-item.is-empty {
    color: #2b2b2b;
    color: var(--darkest);
    font-size: 1.667vw
}

@media (max-width:1100px) {
    .filter .filter-item.is-empty {
        font-size: min(5vw, 19.845px)
    }
}

@media (max-width:1100px) {
    .filter .filter-item {
        background-size: min(3.056vw, .126328125in);
        border-bottom: 1px solid #e5e5e5;
        border-bottom: 1px solid var(--light);
        font-size: min(5vw, 19.845px);
        height: min(10vw, 39.69px);
        line-height: min(10vw, 39.69px);
        width: 100%
    }
}

@media (min-width:1101px) {
    .filter .filter-item:hover {
        border-bottom: 2px solid #2b2b2b;
        border-bottom: 2px solid var(--darkest)
    }
}

.filter .reset {
    left: -1.25vw;
    opacity: .0001;
    pointer-events: none;
    top: .917vw
}

@media (max-width:1100px) {
    .filter .reset {
        left: auto;
        margin-top: min(2.5vw, 9.9225px);
        top: auto
    }
}

.pagination {
    align-items: center;
    display: flex;
    gap: 1.667vw;
    justify-content: center;
    margin: 5vw auto 0;
    position: relative
}

@media (max-width:1100px) {
    .pagination {
        gap: min(4.444vw, 17.64px);
        margin: min(10vw, 39.69px) auto 0
    }
}

.pagination .page-numbers {
    color: #aaa;
    color: var(--dark);
    display: block;
    font-size: .917vw;
    font-weight: 500;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut)
}

@media (max-width:1100px) {
    .pagination .page-numbers {
        font-size: min(3.333vw, 13.23px)
    }
}

@media (min-width:1101px) {
    .pagination .page-numbers:hover {
        color: #2b2b2b;
        color: var(--darkest)
    }
}

.pagination .page-numbers.current {
    color: #2b2b2b;
    color: var(--darkest)
}

.floating.--center {
    left: 50%;
    position: absolute;
    text-align: center;
    top: 50%;
    transform: translateX(-50%) translateY(-50%)
}

.floating.--left {
    left: 2.917vw;
    position: absolute;
    text-align: left;
    top: 50%;
    transform: translateY(-50%)
}

.floating.--right {
    position: absolute;
    right: 2.917vw;
    text-align: right;
    top: 50%;
    transform: translateY(-50%)
}

.floating.--bottom {
    bottom: 0;
    left: 50%;
    position: absolute;
    text-align: center;
    transform: translateX(-50%)
}

.floating.--top {
    left: 50%;
    position: absolute;
    text-align: center;
    top: 0;
    transform: translateX(-50%)
}

.floating.--bottomcenter {
    bottom: 0;
    left: 50%;
    position: absolute;
    text-align: center;
    top: auto;
    transform: translateX(-50%)
}

.floating.--bottomleft {
    bottom: 0;
    left: 0;
    position: absolute;
    text-align: left
}

.floating.--bottomright {
    bottom: 0;
    position: absolute;
    right: 0;
    text-align: right
}

.--m-auto {
    margin: 0 auto
}

.--d-none {
    display: none
}

.--italic {
    font-style: italic
}

.--uppercase {
    text-transform: uppercase
}

.--text-center {
    text-align: center
}

.--text-left {
    text-align: left
}

.--text-right {
    text-align: right
}

.--text-white {
    color: #fff;
    color: var(--white)
}

.--text-white .title,
.--text-white .wysiwyg,
.--text-white a {
    color: #fff;
    color: var(--white)
}

.--opacity-01 {
    opacity: .1
}

.--opacity-02 {
    opacity: .2
}

.--opacity-03 {
    opacity: .3
}

.--opacity-04 {
    opacity: .4
}

.--opacity-05 {
    opacity: .5
}

.--opacity-06 {
    opacity: .6
}

.--opacity-07 {
    opacity: .7
}

.--opacity-08 {
    opacity: .8
}

.--opacity-09 {
    opacity: .9
}

body .cky-consent-container .cky-consent-bar {
    background-color: #2b2b2b !important;
    background-color: var(--darkest) !important;
    padding: 1.25vw 1.667vw !important
}

body .cky-consent-container .cky-consent-bar {
    bottom: 1.042vw;
    box-shadow: none;
    height: 5.208vw;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 97.5vw
}

@media (max-width:1100px) {
    body .cky-consent-container .cky-consent-bar {
        padding: min(4.167vw, 16.5375px) !important
    }

    body .cky-consent-container .cky-consent-bar {
        bottom: min(2.5vw, 9.9225px);
        height: auto;
        width: calc(100% - min(5vw, 19.845px))
    }
}

body .cky-consent-container .cky-consent-bar .cky-notice .cky-title {
    display: none
}

body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des {
    color: #fff !important;
    color: var(--white) !important;
    font-size: 1vw !important
}

body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des {
    line-height: 1.1;
    position: relative;
    width: 53.333vw
}

@media (max-width:1100px) {
    body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des {
        -ms-overflow-style: none !important;
        font-size: min(5vw, 19.845px) !important;
        scrollbar-width: none !important
    }

    body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des {
        overflow-y: auto;
        padding: 0;
        width: auto
    }

    body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des::-webkit-scrollbar {
        display: none !important
    }
}

body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des a {
    color: #fff !important;
    color: var(--white) !important
}

body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des a {
    font-size: 1vw;
    line-height: 1.1;
    opacity: 1;
    text-underline-offset: .2em;
    transition: opacity .4s cubic-bezier(.16, 1, .3, 1);
    transition: opacity .4s var(--expoOut)
}

@media (min-width:1101px) {
    body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des a:hover {
        opacity: .6
    }
}

body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des p {
    font-size: 1vw
}

@media (max-width:1100px) {
    body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-des p {
        font-size: min(3.889vw, 15.435px)
    }
}

body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-btn-wrapper {
    gap: .833vw;
    margin-left: 0
}

@media (max-width:1100px) {
    body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-btn-wrapper {
        flex-direction: row-reverse;
        gap: min(2.778vw, 11.025px);
        margin-top: min(8.333vw, 33.075px);
        padding: 0
    }
}

body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-btn-wrapper .cky-btn {
    align-items: center;
    border: none;
    cursor: pointer;
    display: inline-flex;
    font-size: 1vw;
    font-weight: 400;
    justify-content: center;
    margin: 0;
    padding: 0 .833vw;
    position: relative;
    text-align: center;
    text-decoration: underline;
    transition: opacity .4s cubic-bezier(.16, 1, .3, 1);
    transition: opacity .4s var(--expoOut);
    width: auto
}

@media (max-width:1100px) {
    body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-btn-wrapper .cky-btn {
        font-size: min(3.611vw, 14.3325px);
        padding: 0 min(5vw, 19.845px)
    }
}

@media (min-width:1101px) {
    body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-btn-wrapper .cky-btn.cky-btn-accept:hover {
        opacity: .8
    }
}

body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-btn-wrapper .cky-btn.cky-btn-customize:after {
    content: none
}

@media (min-width:1101px) {
    body .cky-consent-container .cky-consent-bar .cky-notice .cky-notice-group .cky-notice-btn-wrapper .cky-btn.cky-btn-customize:hover {
        opacity: .8
    }
}

body .cky-consent-container .cky-preference-wrapper {
    padding: 1.333vw
}

body .cky-consent-container .cky-preference-wrapper .cky-always-active {
    color: #e41613 !important;
    color: var(--main) !important
}

body .cky-consent-container .cky-preference-wrapper .cky-accordion-wrapper {
    -ms-overflow-style: none;
    scrollbar-width: none
}

body .cky-consent-container .cky-preference-wrapper .cky-accordion-wrapper::-webkit-scrollbar {
    display: none
}

body .cky-consent-container .cky-preference-wrapper .cky-prefrence-btn-wrapper {
    gap: .833vw;
    margin-left: 0
}

@media (max-width:1100px) {
    body .cky-consent-container .cky-preference-wrapper .cky-prefrence-btn-wrapper {
        display: flex;
        flex-direction: row-reverse;
        flex-wrap: nowrap;
        gap: min(2.778vw, 11.025px);
        justify-content: center;
        margin-top: min(8.333vw, 33.075px);
        padding: 0 min(5vw, 19.845px) min(7.5vw, 29.767500000000002px)
    }
}

body .cky-consent-container .cky-preference-wrapper .cky-prefrence-btn-wrapper .cky-btn {
    align-items: center;
    cursor: pointer;
    display: inline-flex;
    flex: none;
    font-size: 1vw;
    font-weight: 400;
    justify-content: center;
    margin: 0;
    padding: 0 .833vw;
    position: relative;
    text-align: center;
    text-decoration: underline;
    transition: opacity .4s cubic-bezier(.16, 1, .3, 1);
    transition: opacity .4s var(--expoOut);
    width: auto
}

@media (max-width:1100px) {
    body .cky-consent-container .cky-preference-wrapper .cky-prefrence-btn-wrapper .cky-btn {
        font-size: min(3.611vw, 14.3325px);
        padding: 0 min(5vw, 19.845px);
        width: auto
    }
}

@media (min-width:1101px) {
    body .cky-consent-container .cky-preference-wrapper .cky-prefrence-btn-wrapper .cky-btn.cky-btn-preferences:hover {
        opacity: .8
    }
}

@media (min-width:1101px) {
    body .cky-consent-container .cky-preference-wrapper .cky-prefrence-btn-wrapper .cky-btn.cky-btn-accept:hover {
        opacity: .8
    }
}

body .cky-btn-revisit-wrapper {
    display: none !important
}

body .cky-preference-content-wrapper .cky-show-desc-btn {
    color: #e41613 !important
}

.cursor {
    bottom: 0;
    display: block;
    height: 100%;
    left: 0;
    mix-blend-mode: darken;
    pointer-events: none;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1080
}

@media (max-width:1023px) {
    .cursor {
        display: none !important
    }
}

.cursor-follow {
    align-items: center;
    background-color: #e41613;
    background-color: var(--main);
    border-radius: .417vw;
    display: block;
    display: flex;
    height: .417vw;
    margin-left: -.208vw;
    margin-top: -.208vw;
    position: absolute;
    transform-origin: 50% 50%;
    width: .417vw;
    will-change: transform
}

.cursor-drag,
.cursor-view {
    background-color: #e41613;
    background-color: var(--main);
    border-radius: 50%;
    cursor: pointer;
    display: block;
    display: none;
    height: 5.375vw;
    margin-left: -4.167vw;
    margin-top: -4.167vw;
    position: absolute;
    transform: scale(0);
    transform-origin: 50% 50%;
    width: 5.375vw;
    will-change: transform
}

.cursor-drag span,
.cursor-view span {
    color: #fff;
    color: var(--white);
    font-size: .75vw;
    font-weight: 700;
    left: 50%;
    opacity: .0001;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 50%;
    transform: translateX(-50%) translateY(-50%)
}

.clientlogo {
    background-color: #f2f2f2;
    background-color: var(--lighter);
    color: #2b2b2b;
    color: var(--darkest);
    display: block;
    padding: 11.667vw 0 0vw;

    position: relative
}

@media (max-width:1100px) {
    .clientlogo {
        overflow-x: hidden;
        padding: min(20vw, 79.38px) 0 min(0vw, .516796875in);
       
    }
}

.clientlogo .columns {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-start
}

.clientlogo .columns.--top {
    gap: 7.5vw
}

@media (max-width:1100px) {
    .clientlogo .columns.--top {
        gap: min(17.5vw, 69.4575px)
    }
}

.clientlogo .columns.--top .item.first {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item.first {
        width: min(80vw, 317.52px)
    }
}

.clientlogo .columns.--top .item.first .text-block-center {
    width: 50vw
}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item.first .text-block-center {
        width: min(80vw, 317.52px)
    }
}

.clientlogo .columns.--top .item.first .actions {
    justify-content: center;
    margin-bottom: 0;
    margin-top: 3vw
}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item.first .actions {
        margin-top: min(5vw, 19.845px)
    }
}

.clientlogo .columns.--top .item .carousel {
    height: 10vw;
    /* left: -10vw; */
    /* margin: 7.5vw 0 4vw; */
   
    width: 120vw;
    margin-top: 35px;

}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item .carousel {
        height: min(20vw, 79.38px);
        margin-top: min(17.5vw, 69.4575px)
    }
}


.clientlogo .columns.--top .item .carousel .inner .item {
    bottom: 0;
    top: auto;
    width: 12vw;
    /* background: #fff;
    border-radius: 10px; */
    /* display: flex;
    align-items: center;
    justify-content: center; */
   
    overflow: hidden;



}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item .carousel .inner .item {
        height: min(20vw, 79.38px);
        width: min(20vw, 79.38px)
    }
}

.clientlogo .columns.--top .item .carousel .image {
    aspect-ratio: 1;
    /* object-fit: contain;
    width: 70%; */
    width: 100%;
    margin: 0 auto;
    height: auto;
    
}

.clientlogo .columns.--top .item.last .wysiwyg {
    text-align: center
}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item.last .wysiwyg {
        width: min(70.556vw, 280.035px)
    }
}

.clientlogo .columns.--top .item.last .menu-social {
    align-items: center;
    display: flex;
    /* gap: 3.333vw; */
    gap: 1vw;
    justify-content: center;
    position: relative
}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item.last .menu-social {
        gap: min(10vw, 39.69px)
    }
}

.clientlogo .columns.--top .item.last .menu-social li {
    align-items: center;
    border: 1px solid #d5d5d5;
    border: 1px solid var(--medium);
    display: flex;
    height: 2.5vw;
    justify-content: center;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut);
    width: 2.5vw
}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item.last .menu-social li {
        height: min(10vw, 39.69px);
        width: min(10vw, 39.69px)
    }
}

.clientlogo .columns.--top .item.last .menu-social li a {
    align-items: center;
    display: flex;
    font-size: 1vw;
    height: 100%;
    justify-content: center;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item.last .menu-social li a {
        font-size: min(4.444vw, 17.64px)
    }
}

.clientlogo .columns.--top .item.last .menu-social li a svg {
    height: .833vw;
    width: .833vw
}

@media (max-width:1100px) {
    .clientlogo .columns.--top .item.last .menu-social li a svg {
        height: min(4.444vw, 17.64px);
        width: min(4.444vw, 17.64px)
    }
}

@media (min-width:1101px) {
    .clientlogo .columns.--top .item.last .menu-social li:hover {
        background-color: rgba(43, 43, 43, .039);
        border: 1px solid transparent
    }
}

.clientlogo .columns.--bottom {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
    padding: 0 5vw
}

@media (max-width:1100px) {
    .clientlogo .columns.--bottom {
        flex-direction: column;
        padding: 0 min(10vw, 39.69px)
    }
}

.clientlogo .columns.--bottom .menu-legal {
    align-items: center;
    display: flex;
    gap: 3.333vw;
    justify-content: center;
    position: relative
}

@media (max-width:1100px) {
    .clientlogo .columns.--bottom .menu-legal {
        flex-wrap: wrap;
        gap: min(2.5vw, 9.9225px) min(5vw, 19.845px)
    }
}

.clientlogo .columns.--bottom .menu-legal li a {
    font-size: .75vw;
    font-weight: 500;
    line-height: 1.2;
    transition: opacity .4s cubic-bezier(.5, 1, .89, 1);
    transition: opacity .4s var(--p2Out)
}

@media (max-width:1100px) {
    .clientlogo .columns.--bottom .menu-legal li a {
        font-size: min(3.056vw, .126328125in)
    }
}

@media (min-width:1101px) {
    .clientlogo .columns.--bottom .menu-legal li a:hover {
        opacity: .5
    }
}

.clientlogo .columns.--bottom .item {
    align-items: center;
    display: flex;
    gap: 5vw;
    justify-content: center
}

@media (max-width:1100px) {
    .clientlogo .columns.--bottom .item {
        gap: 0;
        justify-content: space-between;
        width: 100%
    }
}

.clientlogo .columns.--bottom .item .image {
    width: 6.25vw
}

@media (max-width:1100px) {
    .clientlogo .columns.--bottom .item .image {
        width: min(15vw, .6201562500000001in)
    }
}

.clientlogo .columns.--bottom .item .copyright {
    color: #aaa;
    color: var(--dark)
}

@media (max-width:1100px) {
    .clientlogo .columns.--bottom .item .copyright {
        margin: min(7.5vw, 29.767500000000002px) auto 0
    }
}

.clientlogo hr {
    border: 0;
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    display: block;
    margin: 7.5vw auto 2.5vw;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .clientlogo hr {
        margin: min(17.5vw, 69.4575px) auto min(12.5vw, .516796875in)
    }
}

.clientlogo.--dark {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    color: #fff;
    color: var(--white)
}

.clientlogo.--dark .link .underline {
    background-color: #fff;
    background-color: var(--white)
}

.clientlogo.--dark .columns.--top .item.last .menu-social li {
    border: 1px solid hsla(0, 0%, 100%, .502)
}

.clientlogo.--dark .columns.--top .item.last .menu-social li a svg path {
    stroke: #fff;
    stroke: var(--white)
}

@media (min-width:1101px) {
    .clientlogo.--dark .columns.--top .item.last .menu-social li:hover {
        background-color: hsla(0, 0%, 100%, .102);
        border: 1px solid transparent
    }
}

.clientlogo.--dark hr {
    border-top: 1px solid #aaa;
    border-top: 1px solid var(--dark)
}

.header {
    background-color: transparent;
    border-bottom: 1px solid rgba(43, 43, 43, .2);
    display: block;
    height: 5vw;
    left: 0;
    margin-bottom: -5vw;
    position: sticky;
    top: 0;
    transition: background-color .6s cubic-bezier(.5, 1, .89, 1);
    transition: background-color .6s var(--p2Out);
    width: 100%;
    z-index: 2000
}

@media (max-width:1100px) {
    .header {
        border: 0;
        height: min(16.667vw, 66.15px);
        margin-bottom: 0;
        position: fixed;
        z-index: 3030
    }
}

.header .box {
    background-color: #fff;
    background-color: var(--white);
    height: 101%;
    left: 0;
    opacity: .0001;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1
}

@media (max-width:1100px) {
    .header .box {
        pointer-events: none;
        z-index: 1
    }
}

.header .columns {
    height: 5vw
}

@media (max-width:1100px) {
    .header .columns {
        height: min(16.667vw, 66.15px)
    }

    .header .columns:after {
        background-color: rgba(43, 43, 43, .2);
        content: "";
        height: 1px;
        left: 0;
        opacity: 1;
        position: absolute;
        top: min(16.667vw, 66.15px);
        transition: all .4s cubic-bezier(.5, 1, .89, 1) .5s;
        transition: all .4s var(--p2Out) .5s;
        width: 100%;
        z-index: 12
    }

    .header .columns:before {
        background-color: rgba(43, 43, 43, .2);
        content: "";
        height: min(16.667vw, 66.15px);
        left: auto;
        opacity: 1;
        position: absolute;
        right: min(16.667vw, 66.15px);
        top: 0;
        transition: all .4s cubic-bezier(.5, 1, .89, 1) .5s;
        transition: all .4s var(--p2Out) .5s;
        width: 1px;
        z-index: 12
    }

    .header .columns.--open:after {
        opacity: .0001;
        transition: all .4s cubic-bezier(.5, 1, .89, 1);
        transition: all .4s var(--p2Out)
    }

    .header .columns.--open:before {
        opacity: .0001;
        transition: all .4s cubic-bezier(.5, 1, .89, 1);
        transition: all .4s var(--p2Out)
    }
}

.header .columns .item {
    align-items: center;
    display: flex;
    height: 100%
}

@media (max-width:1100px) {
    .header .columns .item {
        z-index: 12
    }
}

.header .columns .item:nth-child(2) {
    left: 50%;
    position: absolute;
    top: 0;
    transform: translateX(-50%)
}

@media (max-width:1100px) {
    .header .columns .item:nth-child(2) {
        left: auto;
        position: absolute;
        top: auto;
        transform: none;
        width: 100%;
        z-index: 2
    }
}

.header .columns .item:last-child .lang {
    align-items: center;
    background-color: transparent;
    border-left: 1px solid rgba(43, 43, 43, .2);
    cursor: pointer;
    display: flex;
    gap: .833vw;
    height: 100%;
    justify-content: center;
    min-width: 5.833vw;
    padding: 0 2.5vw;
    position: relative;
    transition: background-color .6s cubic-bezier(.5, 1, .89, 1);
    transition: background-color .6s var(--p2Out);
    width: auto
}

@media (max-width:1100px) {
    .header .columns .item:last-child .lang {
        border-left: 0;
        bottom: min(25vw, 1.03359375in);
        gap: min(5vw, 19.845px);
        height: min(8.611vw, 34.1775px);
        left: 0;
        opacity: .0001;
        padding: min(2.5vw, 9.9225px) min(5vw, 19.845px);
        position: absolute;
        width: min(23.056vw, .953203125in)
    }
}

.header .columns .item:last-child .lang a {
    border-bottom: 1px solid transparent;
    color: #aaa;
    color: var(--dark);
    font-size: .75vw;
    font-weight: 500;
    opacity: .0001;
    padding-bottom: .125vw;
    pointer-events: none;
    text-transform: uppercase;
    transition: all .4s cubic-bezier(.5, 1, .89, 1);
    transition: all .4s var(--p2Out)
}

@media (max-width:1100px) {
    .header .columns .item:last-child .lang a {
        font-size: min(3.056vw, .126328125in);
        opacity: 1;
        pointer-events: initial
    }
}

.header .columns .item:last-child .lang a.is-current {
    color: #2b2b2b;
    color: var(--darkest);
    opacity: 1
}

@media (min-width:1101px) {
    .header .columns .item:last-child .lang a.is-current:hover {
        border-bottom: 1px solid #2b2b2b;
        border-bottom: 1px solid var(--darkest)
    }
}

@media (min-width:1101px) {
    .header .columns .item:last-child .lang:hover {
        background-color: rgba(0, 0, 0, .031)
    }
}

@media (min-width:1101px) {
    .header .columns .item:last-child .lang.--opened a:not(.is-current):hover {
        border-bottom: 1px solid #2b2b2b;
        border-bottom: 1px solid var(--darkest);
        color: #2b2b2b;
        color: var(--darkest)
    }
}

.header .menu-header {
    align-items: center;
    display: flex;
    gap: 2.083vw;
    height: 100%;
    position: relative
}

.header .menu-header>li {
    align-items: center;
    display: flex;
    height: 100%;
    position: relative
}

.header .menu-header>li a {
    display: block;
    font-size: 1vw;
    font-weight: 500;
    opacity: 1;
    transition: opacity .4s cubic-bezier(.5, 1, .89, 1);
    transition: opacity .4s var(--p2Out)
}

.header .menu-header>li .text {
    bottom: 1.667vw;
    height: 2px;
    left: 0;
    overflow: hidden;
    position: absolute;
    width: 100%
}

.header .menu-header>li .underline {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: left;
    width: 100%
}

.header .menu-header>li.is-active>a {
    pointer-events: none
}

.header .menu-header>li.is-active .underline {
    transform: scaleX(1)
}

.header .menu-header>li.menu-item-has-children:after {
    background: url(../images/content_img/dropdown.svg) 50% no-repeat;
    background-size: contain;
    content: "";
    display: inline-block;
    height: .833vw;
    margin-left: .25vw;
    position: relative;
    transition: transform .4s cubic-bezier(.5, 1, .89, 1);
    transition: transform .4s var(--p2Out);
    width: .833vw
}

@media (max-width:1100px) {
    .header .menu-header>li.menu-item-has-children:after {
        display: none
    }
}

.header .menu-header>li.menu-item-has-children>.mask {
    height: 100vh;
    opacity: .0001;
    pointer-events: none;
    position: fixed;
    top: 5vw;
    width: 100vw;
    z-index: -1
}

.header .menu-header>li.menu-item-has-children>.sub-menu {
    background-color: #fff;
    background-color: var(--white);
    border-top: 1px solid rgba(43, 43, 43, .2);
    display: flex;
    gap: .375vw;
    height: auto;
    left: 0;
    opacity: .0001;
    padding: .375vw;
    pointer-events: none;
    position: absolute;
    top: 100%;
    width: 101vw;
    z-index: -1
}

@media (max-width:1100px) {
    .header .menu-header>li.menu-item-has-children>.sub-menu {
        padding: 0
    }
}

.header .menu-header>li.menu-item-has-children>.sub-menu li {
    background-color: #e5e5e5;
    background-color: var(--light);
    border-radius: .417vw;
    border-radius: var(--radius);
    display: block;
    height: 19.167vw;
    opacity: .0001;
    position: relative;
    width: 24.5vw
}

.header .menu-header>li.menu-item-has-children>.sub-menu li.is-active .submenu-item {
    opacity: .5;
    pointer-events: none
}

.header .menu-header>li.menu-item-has-children>.sub-menu li.is-active .submenu-item .image .iconlarge {
    opacity: 1
}

.header .menu-header>li.menu-item-has-children>.sub-menu li>a {
    display: block;
    height: 100%;
    width: 100%
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .image {
    border-radius: .417vw;
    border-radius: var(--radius);
    height: 19.167vw;
    opacity: .0001;
    transition: transform .6s cubic-bezier(.5, 1, .89, 1);
    transition: transform .6s var(--p2Out);
    width: 100%
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .image img {
    transform: scale(1.1);
    transition: all 4s cubic-bezier(.16, 1, .3, 1);
    transition: all 4s var(--expoOut)
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex {
    flex-direction: column;
    gap: .833vw
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon {
    height: 6.667vw;
    mix-blend-mode: darken;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut);
    width: 6.667vw
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon span {
    height: 100%;
    left: 50%;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    vertical-align: middle;
    width: 100%
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon span {
        background: #2b2b2b;
        background: var(--darkest);
        -webkit-mask-size: contain;
        mask-size: contain
    }
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon.--communication span {
    -webkit-mask-image: url(../images/content_img/communication.svg);
    mask-image: url(../images/content_img/communication.svg)
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon.--digital-solutions span {
    -webkit-mask-image: url(../images/content_img/digital-solutions.svg);
    mask-image: url(../images/content_img/digital-solutions.svg)
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon.--documents span {
    -webkit-mask-image: url(../images/content_img/documents.svg);
    mask-image: url(../images/content_img/documents.svg)
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon.--website span {
    -webkit-mask-image: url(../images/content_img/website.svg);
    mask-image: url(../images/content_img/website.svg)
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon.--affilate-marketing span {
    -webkit-mask-image: url(../images/content_img/affilate-marketing.svg);
    mask-image: url(../images/content_img/affilate-marketing.svg)
}

.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon.--about span {
    -webkit-mask-image: url(../images/content_img/about.svg);
    mask-image: url(../images/content_img/about.svg)
}


.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon.--life-at-g-tech span {
    -webkit-mask-image: url(../images/content_img/life.svg);
    mask-image: url(../images/content_img/life.svg)
}


.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon.--technologies span {
    -webkit-mask-image: url(../images/content_img/technology.svg);
    mask-image: url(../images/content_img/technology.svg)
}


.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .menu-icon.--teams span {
    -webkit-mask-image: url(../images/content_img/team.svg);
    mask-image: url(../images/content_img/team.svg)
}



.header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item .flex .title {
    font-size: 1.25vw
}

@media (min-width:1101px) {
    .header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item:hover .image {
        opacity: 1
    }

    .header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item:hover .image img {
        transform: scale(1)
    }

    .header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item:hover .menu-icon span {
        background: #e41613;
        background: var(--main)
    }

    @supports ((-webkit-mask:url(./)) or (mask:url(""))) {
        .header .menu-header>li.menu-item-has-children>.sub-menu li .submenu-item:hover .menu-icon span {
            background: #e41613;
            background: var(--main)
        }
    }
}

.header .brand {
    display: block;
    margin-left: 2.5vw;
    width: 7.875vw
}

@media (max-width:1100px) {
    .header .brand {
        margin-left: min(5vw, 19.845px);
        width: min(10vw, 39.69px)
    }
}

.header .brand svg {
    height: 100%;
    width: 100%
}

.header .brand svg path.red {
    transition: fill .6s cubic-bezier(.5, 1, .89, 1);
    transition: fill .6s var(--p2Out)
}

@media (min-width:1101px) {
    .header .brand:hover svg path.red {
        fill: #e41613;
        fill: var(--main)
    }
}

.header .trigger {
    align-items: center;
    border-left: 1px solid rgba(43, 43, 43, .2);
    cursor: pointer;
    display: flex;
    height: 100%;
    position: relative;
    width: 5.833vw
}

@media (max-width:1100px) {
    .header .trigger {
        border: 0;
        position: absolute;
        right: 0;
        top: 0;
        width: min(16.667vw, 66.15px)
    }
}

.header .trigger .bars {
    gap: .417vw;
    position: relative
}

@media (max-width:1100px) {
    .header .trigger .bars {
        gap: min(1.667vw, 6.615px);
        width: min(3.333vw, 13.23px)
    }
}

.header .trigger .bars span {
    display: block;
    height: 1px
}

@media (max-width:1100px) {
    .header .navigation {
        height: min(16.667vw, 66.15px);
        margin-left: 0;
        pointer-events: all;
        position: relative;
        width: 100%
    }

    .header .navigation .solutions-trigger {
        font-size: min(8.889vw, 35.28px) !important
    }

    .header .navigation .solutions-trigger {
        align-items: center;
        color: inherit;
        color: #2b2b2b;
        color: var(--darkest);
        display: flex;
        flex-direction: row;
        font-weight: 500;
        gap: min(2.222vw, 8.82px);
        line-height: .8;
        margin-bottom: min(5vw, 19.845px);
        opacity: 1;
        pointer-events: none;
        text-align: left
    }

    .header .navigation .solutions-trigger img {
        transform: rotate(-90deg)
    }

    .header .navigation .content {
        background-color: #fff;
        background-color: var(--white);
        border-top: 1px solid rgba(43, 43, 43, .2);
        color: #aaa;
        color: var(--dark);
        height: calc(100dvh - min(16.667vw, 66.15px));
        left: 0;
        overflow: hidden;
        position: fixed;
        right: 0;
        text-align: center;
        top: min(16.667vw, 66.15px);
        transform: translateY(-120%);
        transition: all .6s cubic-bezier(.16, 1, .3, 1);
        transition: all .6s var(--expoOut);
        width: 100vw;
        z-index: 1;
       
    }

        .header .navigation .content li a {
         font-size: 8px!;
       
    }

    .header .navigation .content .menu {
        display: block;
        margin-bottom: min(10vw, 39.69px);
        padding: min(7.5vw, 29.767500000000002px) min(5vw, 19.845px) min(10vw, 39.69px);
        pointer-events: none;
        position: relative;
        text-align: left;
        z-index: 2
    }

    .header .navigation .content .menu li {
        display: block;
        height: auto;
        margin-bottom: min(5vw, 19.845px);
        white-space: nowrap;
         
    }

    .header .navigation .content .menu li.menu-item-has-children {
        pointer-events: all
    }

    .header .navigation .content .menu li.menu-item-has-children>a {
        pointer-events: none !important
    }

    .header .navigation .content .menu li.menu-item-has-children>a:after {
        background: url(../images/content_img/dropdown.svg) 50% no-repeat;
        background-size: contain;
        content: "";
        display: inline-block;
        height: min(4.167vw, 16.5375px);
        margin-left: min(.833vw, 3.3075px);
        position: relative;
        transform: rotate(-90deg);
        transition: transform .4s cubic-bezier(.5, 1, .89, 1);
        transition: transform .4s var(--p2Out);
        width: min(5.556vw, 22.05px)
    }

    .header .navigation .content .menu li.menu-item-has-children .sub-menu {
        background-color: #f2f2f2;
        background-color: var(--lighter);
        display: flex;
        flex-wrap: wrap;
        gap: min(5vw, 19.845px) min(7.5vw, 29.767500000000002px);
        height: 0;
        justify-content: flex-start;
        left: max(-5vw, -19.845px);
        position: relative;
        transition: transform .4s cubic-bezier(.5, 1, .89, 1);
        transition: transform .4s var(--p2Out);
        width: 100vw
    }

    .header .navigation .content .menu li.menu-item-has-children .sub-menu li {
        margin-bottom: 0;
        opacity: .0001;
        width: min(41.111vw, 163.17000000000002px)
    }

    .header .navigation .content .menu li.menu-item-has-children .sub-menu li a {
        pointer-events: none !important
    }

    .header .navigation .content .menu li.menu-item-has-children .sub-menu li .flex {
        gap: min(2.5vw, 9.9225px)
    }

    .header .navigation .content .menu li.menu-item-has-children .sub-menu li:last-child {
        bottom: min(5vw, 19.845px);
        left: min(5vw, 19.845px);
        position: absolute
    }

    .header .navigation .content .menu li.menu-item-has-children .sub-menu li:last-child a {
        color: #aaa;
        color: var(--dark)
    }

    .header .navigation .content .menu li.menu-item-has-children .sub-menu.--opened {
        height: auto;
        opacity: 1
    }

    .header .navigation .content .menu li.menu-item-has-children .sub-menu.--opened li a {
        pointer-events: all !important
    }

    .header .navigation .content .menu li.menu-item-has-children.--rotate a:after {
        transform: rotate(180deg)
    }

    .header .navigation .content .menu li:last-child {
        margin-bottom: 0
    }

    .header .navigation .content .menu li.is-active a {
        color: #e41613;
        color: var(--main);
        font-weight: 500
    }

    .header .navigation .content .menu li a {
        font-size: min(8.889vw, 35.28px) !important
    }

    .header .navigation .content .menu li a {
        color: inherit;
        color: #2b2b2b;
        color: var(--darkest);
        display: inline-block;
        font-weight: 500;
        line-height: .8;
        opacity: .0001;
        pointer-events: none;
        text-align: center;
        transform: translateY(max(-5vw, -19.845px))
    }

    @media (min-width:1101px) {
        .header .navigation .content .menu li a:hover {
            opacity: .5
        }
    }

    .header .navigation .content .button {
        bottom: 0;
        height: min(20vw, 79.38px);
        left: 0;
        opacity: .0001;
        pointer-events: none;
        position: absolute;
        width: 100%
    }
}

.header .trigger {
    display: block;
    height: min(16.667vw, 66.15px);
    justify-content: center;
    position: absolute;
    right: 0;
    top: 0;
    width: min(16.667vw, 66.15px);
    z-index: 9999
}

.header .trigger .bars {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: .5vw;
    justify-content: space-between;
    pointer-events: initial;
    position: absolute;
    right: 1.667vw;
    top: 50%;
    transform: translateY(-50%);
    width: 1.25vw
}

@media (max-width:1100px) and (orientation:portrait) {
    .header .trigger .bars {
        height: min(2.778vw, 11.025px);
        left: 50%;
        right: auto;
        transform: translate(-50%, -50%);
        width: min(5.556vw, 22.05px)
    }
}

.header .trigger .bars span {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    display: flex;
    height: 2px;
    position: relative;
    transition-duration: .6s;
    transition-property: background-color;
    transition-timing-function: expoOut;
    width: 100%;
    will-change: transform, backgroundColor
}

@media (max-width:1100px) and (orientation:portrait) {
    .header .trigger .bars span {
        transition-duration: .2s
    }
}

.header.--opened .menu-header li.menu-item-has-children:after {
    transform: rotate(180deg)
}

.header.--hidden {
    pointer-events: none
}

.menu-sidebar {
    bottom: 0;
    display: none;
    height: 100dvh;
    left: 0;
    pointer-events: none;
    position: fixed;
    right: 0;
    top: max(-16.667vw, -66.15px);
    width: 100%;
    z-index: 9090
}

.menu-sidebar .mask {
    background: #000;
    background: var(--black);
    cursor: pointer;
    height: 100%;
    left: 0;
    opacity: .0001;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.menu-sidebar .inner {
    background: #fff;
    background: var(--white);
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    padding: min(.833vw, 3.3075px);
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(100%);
    width: min(60.278vw, 239.2425px)
}

.menu-sidebar .inner .menu {
    margin-bottom: min(.833vw, 3.3075px) !important;
    padding: 0 !important
}

.menu-sidebar .inner .menu {
    height: 100%
}

.menu-sidebar .inner .menu li {
    height: 20% !important;
    margin-bottom: min(.833vw, 3.3075px) !important
}

.menu-sidebar .inner .menu li {
    background-color: #e5e5e5;
    background-color: var(--light);
    text-align: center;
    width: 100%
}

.menu-sidebar .inner .menu li:last-child {
    margin-bottom: 0 !important
}

.menu-sidebar .inner .menu li:last-child {
    background-color: transparent;
    margin-top: 0
}

.menu-sidebar .inner .menu li:last-child a {
    font-size: min(3.889vw, 15.435px) !important;
    transform: translateY(-50%) !important
}

.menu-sidebar .inner .menu li:last-child a {
    height: auto;
    top: 50%
}

.menu-sidebar .inner .menu li a {
    transform: none !important
}

.menu-sidebar .inner .menu li a {
    align-items: center;
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    font-size: min(3.889vw, 15.435px);
    height: 100%;
    justify-content: flex-end;
    position: relative;
    width: 100%
}

.menu-sidebar .inner .menu li a .icon {
    height: min(5vw, 19.845px);
    margin: 0 min(2.778vw, 11.025px) 0 0;
    width: min(5vw, 19.845px)
}

.menu-sidebar .inner .menu li a .menu-item-description {
    display: none
}

.menu-sidebar .inner .menu li a .flex {
    flex-direction: column;
    gap: min(2.5vw, 9.9225px)
}

.menu-sidebar .inner .menu li a .flex .menu-icon {
    height: min(16.667vw, 66.15px);
    mix-blend-mode: darken;
    position: relative;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut);
    width: min(16.667vw, 66.15px)
}

.menu-sidebar .inner .menu li a .flex .menu-icon span {
    height: 100%;
    left: 50%;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    vertical-align: middle;
    width: 100%
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .menu-sidebar .inner .menu li a .flex .menu-icon span {
        background: #2b2b2b;
        background: var(--darkest);
        -webkit-mask-size: contain;
        mask-size: contain
    }
}

.menu-sidebar .inner .menu li a .flex .menu-icon.--private-equity span {
    -webkit-mask-image: url(../images/content_img/private-equity.svg);
    mask-image: url(../images/content_img/private-equity.svg)
}

.menu-sidebar .inner .menu li a .flex .menu-icon.--direct-lending span {
    -webkit-mask-image: url(../images/content_img/direct-lending.svg);
    mask-image: url(../images/content_img/direct-lending.svg)
}

.menu-sidebar .inner .menu li a .flex .menu-icon.--fund-of-funds span {
    -webkit-mask-image: url(../images/content_img/fund-of-funds.svg);
    mask-image: url(../images/content_img/fund-of-funds.svg)
}

.menu-sidebar .inner .menu li a .flex .menu-icon.--fund-financing span {
    -webkit-mask-image: url(../images/content_img/fund-financing.svg);
    mask-image: url(../images/content_img/fund-financing.svg)
}

.menu-sidebar .inner .menu li a .flex .title {
    font-size: min(3.333vw, 13.23px)
}

.menu-sidebar .inner .menu li.current-menu-item .title {
    color: #2b2b2b;
    color: var(--darkest)
}

.menu-sidebar .inner .menu li.current-menu-item .menu-icon span {
    background-color: #e41613 !important;
    background-color: var(--main) !important
}

.menu-sidebar .inner .menu li .image {
    height: min(7.5vw, 29.767500000000002px);
    margin-right: min(2.5vw, 9.9225px);
    order: 1;
    width: min(7.5vw, 29.767500000000002px)
}

.menu-sidebar .inner .menu li .sub-menu li {
    margin-bottom: 0;
    padding-top: min(8.333vw, 33.075px)
}

.menu-sidebar .inner .menu li .sub-menu li a {
    font-size: min(4.444vw, 17.64px);
    line-height: .8;
    opacity: .6
}

.menu-sidebar .closer {
    background-image: url(../images/content_img/dropdown-white.svg);
    background-position: 50%;
    background-repeat: no-repeat;
    height: min(3.333vw, 13.23px);
    left: min(30.278vw, 120.1725px);
    opacity: .0001;
    pointer-events: none;
    position: absolute;
    right: auto;
    top: min(10vw, 39.69px);
    width: min(3.333vw, 13.23px)
}

.scrolled .header {
    background-color: #fff;
    background-color: var(--white)
}

.lenis-scrolling .header {
    pointer-events: none
}

@media (max-width:1100px) {
    .lenis-scrolling .header .navigation {
        pointer-events: none
    }

    .lenis-scrolling .header .navigation .trigger {
        pointer-events: none
    }
}

#loader {
    bottom: 0;
    display: block;
    height: 100%;
    left: 0;
    position: fixed;
    width: 100%;
    z-index: 1000;
    z-index: 100
}

#loader .background {
    background-color: #e5e5e5;
    background-color: var(--light);
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    width: 100%;
    will-change: opacity
}

#loader .inner {
    bottom: 0;
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    width: 100%
}

#loader .inner .logo {
    height: auto;
    transform-origin: 0 0;
    width: 29.083vw
}

@media (max-width:1100px) {
    #loader .inner .logo {
        height: auto;
        width: min(102.778vw, 407.925px)
    }
}

#loader .inner .logo img,
#loader .inner .logo svg {
    height: auto;
    vertical-align: middle;
    width: 100%
}

#loader .inner .logo img path,
#loader .inner .logo svg path {
    opacity: .0001;
    position: relative
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.offcanvas {
    align-items: center;
    bottom: 0;
    display: flex;
    display: none;
    justify-content: center;
    left: 0;
    pointer-events: none;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 2000
}

@media (max-width:1100px) {
    .offcanvas {
        z-index: 3030
    }
}

.offcanvas>.closer {
    cursor: pointer;
    opacity: .0001;
    pointer-events: none;
    position: fixed;
    right: 1.667vw;
    top: 1.667vw
}

@media (max-width:1100px) {
    .offcanvas>.closer {
        display: none;
        position: absolute;
        right: min(5vw, 19.845px);
        top: min(5vw, 19.845px)
    }
}

.offcanvas>.mask {
    background: rgba(0, 0, 0, .7);
    bottom: 0;
    height: 100%;
    left: 0;
    opacity: .0001;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%
}

.offcanvas>.content {
    background-color: #fff;
    background-color: var(--white);
    bottom: 0;
    height: 100%;
    overflow: auto;
    overflow-anchor: none;
    position: fixed;
    right: 0;
    top: 0;
    width: 80vw
}

@media (max-width:1100px) {
    .offcanvas>.content {
        width: 100vw
    }
}

.offcanvas>.content .closer-holder {
    display: none
}

@media (max-width:1100px) {
    .offcanvas>.content .closer-holder {
        display: block;
        position: absolute;
        right: min(5vw, 19.845px);
        top: min(5vw, 19.845px);
        z-index: 9
    }
}

.offcanvas>.content [data-taxi-view] #header {
    display: none !important
}

.offcanvas>.content [data-taxi-view] .component--holder {
    min-height: 100vh
}

.offcanvas>.content [data-taxi-view] .component--holder .content {
    min-height: 100vh
}

.offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations,
.offcanvas>.content [data-taxi-view] .component--holder .content .generalmeetings {
    padding: 0 1.667vw 0 25vw
}

@media (max-width:1100px) {

    .offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations,
    .offcanvas>.content [data-taxi-view] .component--holder .content .generalmeetings {
        padding: 0
    }
}

.offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations .body .columns .item:first-child,
.offcanvas>.content [data-taxi-view] .component--holder .content .generalmeetings .body .columns .item:first-child {
    width: 10vw
}

@media (max-width:1100px) {

    .offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations .body .columns .item:first-child,
    .offcanvas>.content [data-taxi-view] .component--holder .content .generalmeetings .body .columns .item:first-child {
        width: 100%
    }
}

.offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations .body .columns .item:last-child,
.offcanvas>.content [data-taxi-view] .component--holder .content .generalmeetings .body .columns .item:last-child {
    width: 38.333vw
}

@media (max-width:1100px) {

    .offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations .body .columns .item:last-child,
    .offcanvas>.content [data-taxi-view] .component--holder .content .generalmeetings .body .columns .item:last-child {
        width: 100%
    }
}

.offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations .body .columns .item:last-child .row,
.offcanvas>.content [data-taxi-view] .component--holder .content .generalmeetings .body .columns .item:last-child .row {
    gap: 5vw
}

.offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations .body .columns .item:last-child .row .title.--xlarge,
.offcanvas>.content [data-taxi-view] .component--holder .content .generalmeetings .body .columns .item:last-child .row .title.--xlarge {
    width: 15vw
}

.offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations {
    padding: 10vw 1.667vw 3.333vw 25vw
}

@media (max-width:1100px) {
    .offcanvas>.content [data-taxi-view] .component--holder .content .docsregulations {
        padding: min(20vw, 79.38px) min(5vw, 19.845px)
    }
}

.offcanvas>.content [data-taxi-view] .component--holder .content[\:has\(\.docsregulations\:only-child\)] {
    background-color: #f7f7f7;
    background-color: var(--lightest)
}

.offcanvas>.content [data-taxi-view] .component--holder .content:has(.docsregulations:only-child) {
    background-color: #f7f7f7;
    background-color: var(--lightest)
}

.offcanvas>.content [data-taxi-view] .component--holder .content[\:has\(\.docsregulations\:only-child\)] .docsregulations {
    padding: 0 1.667vw 3.333vw 25vw
}

.offcanvas>.content [data-taxi-view] .component--holder .content:has(.docsregulations:only-child) .docsregulations {
    padding: 0 1.667vw 3.333vw 25vw
}

.offcanvas>.content [data-taxi-view] .component--holder .back {
    display: none !important
}

.offcanvas>.content [data-taxi-view] .component--portfolio .content {
    width: 80vw
}

@media (max-width:1100px) {
    .offcanvas>.content [data-taxi-view] .component--portfolio .content {
        width: 100vw
    }
}

.offcanvas>.content [data-taxi-view] .component--portfolio .content .columns .item:first-child {
    width: 35vw
}

@media (max-width:1100px) {
    .offcanvas>.content [data-taxi-view] .component--portfolio .content .columns .item:first-child {
        width: min(50vw, 2.0671875in)
    }
}

.offcanvas>.content [data-taxi-view] .component--portfolio .back {
    display: none !important
}

.offcanvas>.content [data-taxi-view] .clientlogo,
.offcanvas>.content [data-taxi-view] .clientlogo-alt {
    display: none !important
}

* {
    overflow-anchor: none
}

.draggable {
    display: flex;
    justify-content: center;
    position: relative
}

.draggable.--initialized {
    justify-content: flex-start !important
}

.draggable.--initialized {
    cursor: grab
}

.draggable .inner {
    display: flex;
    justify-content: space-between;
    position: relative;
    width: auto;
    will-change: transform
}

.draggable .item {
    position: relative
}

.draggable .progress {
    background-color: #aaa;
    background-color: var(--dark);
    bottom: 0;
    bottom: -.5vw;
    height: 2px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100%;
    width: 2vw
}

@media (max-width:1100px) {
    .draggable .progress {
        bottom: calc(max(-6.667vw, -26.46px));
        width: min(55.556vw, 220.5px)
    }
}

.draggable .progress .bar {
    background: #000;
    background: var(--black);
    display: block;
    height: 100%;
    position: absolute;
    transform: scaleX(0);
    transform-origin: 0 50%;
    width: 100%
}

.draggable .count {
    bottom: 0;
    color: #000;
    color: var(--black);
    /* font-family: "PP Fragment Serif", Time New Roman, serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-size: 1rem;
    font-weight: 500;
    left: 0;
    line-height: 1.7;
    position: absolute;
    right: 0;
    transform: translateY(100%);
    width: 100%
}

.draggable .dots {
    align-items: center;
    display: flex;
    gap: .75vw;
    justify-content: center;
    position: relative
}

@media (max-width:1100px) {
    .draggable .dots {
        gap: min(5vw, 19.845px)
    }
}

.draggable .dots .dot {
    background-color: #d9d9d9;
    border-radius: 50%;
    cursor: pointer;
    height: .333vw;
    position: relative;
    width: .333vw
}

@media (max-width:1100px) {
    .draggable .dots .dot {
        height: min(2.5vw, 9.9225px);
        width: min(2.5vw, 9.9225px)
    }
}

.draggable .dots .dot.--active {
    background-color: #e41613;
    background-color: var(--main)
}

.draggable .thumbnails {
    align-items: center;
    display: flex;
    gap: 1.25vw;
    justify-content: center;
    position: relative
}

@media (max-width:1100px) {
    .draggable .thumbnails {
        gap: min(5vw, 19.845px)
    }
}

.draggable .thumbnails .thumbnail {
    border: 2px solid transparent;
    cursor: pointer;
    height: 3.75vw;
    overflow: hidden;
    position: relative;
    width: 7.5vw
}

@media (max-width:1100px) {
    .draggable .thumbnails .thumbnail {
        height: min(2.222vw, 8.82px);
        width: min(2.222vw, 8.82px)
    }
}

.draggable .thumbnails .thumbnail.--active {
    border: 2px solid #e41613;
    border: 2px solid var(--main)
}

.draggable .thumbnails .thumbnail img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    vertical-align: middle;
    width: 100%
}

.draggable .proxy {
    height: 100%;
    left: 0;
    opacity: .3;
    position: absolute;
    top: 0;
    width: 100%;
    will-change: transform
}

.carousel {
    cursor: grab;
    height: auto;
    overflow: hidden;
    position: relative;
    width: 100%
}

.carousel.is-dragging {
    cursor: grabbing
}

.carousel .inner {
    counter-reset: count;
    display: flex;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: auto
}

.carousel .item {
    counter-increment: count;
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    white-space: nowrap;
    width: auto;
    will-change: transform
}

.slider {
    margin: auto;
    overflow: hidden;
    position: relative
}

.slider--initialized {
    justify-content: flex-start
}

.slider .inner {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    will-change: transform
}

.slider .inner>.item {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    will-change: transform
}

.slider .progress {
    background: var(--line-alpha);
    bottom: 0;
    height: 1px;
    left: 0;
    position: relative;
    right: 0;
    width: 100%
}

.slider .progress .bar {
    background: #aaa;
    background: var(--dark);
    display: block;
    height: 100%;
    position: absolute;
    transform: scaleX(0);
    transform-origin: 0 50%;
    width: 100%
}

.slider .count {
    bottom: 0;
    color: #000;
    color: var(--black);
    /* font-family: "PP Fragment Serif", Time New Roman, serif; */
    font-family: "Roboto", sans-serif;

    font-family: var(--font-primary);
    font-size: 1rem;
    font-weight: 500;
    left: 0;
    line-height: 2;
    position: absolute;
    right: 0;
    transform: translateY(100%);
    width: 100%
}

.slider .proxy {
    height: 100%;
    left: 0;
    opacity: .3;
    position: absolute;
    top: 0;
    width: 100%;
    will-change: transform
}

.slider .arrows .arrow {
    cursor: pointer;
    height: 5vw;
    line-height: 5vw;
    position: relative;
    width: 5vw
}

.slider .arrows .arrow.prev {
    transform: rotate(180deg)
}

.slider .arrows .arrow svg {
    height: 100%;
    width: 100%
}

.slider .dots {
    align-items: center;
    -moz-column-gap: 2.5vw;
    column-gap: 2.5vw;
    display: flex;
    justify-content: center;
    left: 50%;
    position: absolute;
    transform: translateX(-50%)
}

@media (max-width:1100px) {
    .slider .dots {
        -moz-column-gap: min(5vw, 19.845px);
        column-gap: min(5vw, 19.845px)
    }
}

.slider .dots .dot {
    background-color: #d9d9d9;
    border-radius: 50%;
    cursor: pointer;
    display: block;
    height: .333vw;
    position: relative;
    width: .333vw
}

@media (max-width:1100px) {
    .slider .dots .dot {
        height: min(2.5vw, 9.9225px);
        transition: all .6s cubic-bezier(.16, 1, .3, 1);
        transition: all .6s var(--expoOut);
        width: min(2.5vw, 9.9225px)
    }
}

.slider .dots .dot.--active {
    background-color: #000;
    background-color: var(--black)
}

.slider .closer {
    cursor: pointer;
    font-size: .875vw;
    font-weight: 600;
    left: 50%;
    position: absolute;
    text-transform: uppercase;
    top: 1.667vw;
    transform: translateX(-50%)
}

.component--cardsdownload {
    background-color: #f2f2f2;
    background-color: var(--lighter)
}

@media (max-width:1100px) {
    .component--cardsdownload .container {
        width: calc(100% - min(5vw, 19.845px))
    }
}

.component--cardsdownload .text-block-center {
    width: 50vw
}

@media (max-width:1100px) {
    .component--cardsdownload .text-block-center {
        margin: 0 min(5vw, 19.845px);
        width: auto
    }
}

@media (max-width:1100px) {
    .component--cardsdownload .text-block-center .label {
        margin-bottom: min(5vw, 19.845px)
    }
}

.component--cardsdownload .download-group {
    display: flex;
    gap: .417vw;
    justify-content: center;
    margin-top: 9.792vw
}

@media (max-width:1100px) {
    .component--cardsdownload .download-group {
        flex-direction: column;
        gap: min(2.5vw, 9.9225px);
        margin-top: min(20vw, 79.38px)
    }
}

.component--contentscrollbg {
    padding: 0
}

@media (max-width:1100px) {
    .component--contentscrollbg {
        overflow: visible;
        overflow: initial
    }
}

.component--contentscrollbg .container {
    opacity: .0001;
    pointer-events: none;
    z-index: 1
}

.component--contentscrollbg .video-group {
    background-color: #000;
    background-color: var(--black);
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    left: 0;
    margin-top: -40vh;
    overflow: hidden;
    position: absolute;
    position: sticky;
    top: 0;
    width: 100%
}

@media (max-width:1100px) {
    .component--contentscrollbg .video-group {
        height: 100lvh
    }
}

.component--contentscrollbg .content {
    display: flex;
    flex-direction: column;
    gap: 100vh;
    margin-top: 0;
    padding-top: 0
}

.component--contentscrollbg .group:last-child {
    margin-bottom: 10vw
}

.component--contentscrollbg .group .title {
    color: #fff;
    color: var(--white);
    margin: auto;
    opacity: .0001;
    text-align: center;
    width: 60vw
}

@media (max-width:1100px) {
    .component--contentscrollbg .group .title {
        margin: 0 min(7.5vw, 29.767500000000002px);
        width: auto
    }
}

.component--contentscrollbg .group .columns {
    margin: 12.5vw auto 0;
    width: 80vw
}

@media (max-width:1100px) {
    .component--contentscrollbg .group .columns {
        flex-direction: column;
        gap: min(17.778vw, 4.41pc)
    }
}

.component--contentscrollbg .group .columns .item {
    width: 17.5vw
}

@media (max-width:1100px) {
    .component--contentscrollbg .group .columns .item {
        margin: 0 min(12.5vw, .516796875in);
        width: auto
    }
}

.component--contentscrollbg .group .columns .item .image {
    height: 2.5vw;
    width: 2.5vw
}

@media (max-width:1100px) {
    .component--contentscrollbg .group .columns .item .image {
        height: min(11.111vw, 44.1px);
        margin: 0 auto;
        width: min(11.111vw, 44.1px)
    }
}

.component--contentscrollbg .group .columns .item .wysiwyg {
    color: #fff;
    color: var(--white);
    margin-top: .833vw
}

@media (max-width:1100px) {
    .component--contentscrollbg .group .columns .item .wysiwyg {
        margin-top: min(2.5vw, 9.9225px);
        text-align: center
    }
}

.component--contentscrollcenter {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    padding: 0
}

@media (max-width:1100px) {
    .component--contentscrollcenter {
        background-color: #d5d5d5;
        background-color: var(--medium);
        overflow: visible;
        overflow: initial;
        padding-top: min(7.5vw, 29.767500000000002px)
    }
}

.component--contentscrollcenter .container {
    height: calc(var(--count) * 100vh)
}

@media (max-width:1100px) {
    .component--contentscrollcenter .container {
        height: calc(var(--count) * 100lvh)
    }
}

.component--contentscrollcenter .sticky {
    height: 100vh;
    position: sticky;
    top: 0;
    width: 100%
}

@media (max-width:1100px) {
    .component--contentscrollcenter .sticky {
        height: 100%;
        position: absolute;
        top: max(-7.5vw, -29.767500000000002px)
    }
}

.component--contentscrollcenter .anchors {
    display: flex;
    flex-direction: column;
    gap: .833vw;
    left: 5vw;
    position: absolute;
    top: 5vw
}

@media (max-width:1100px) {
    .component--contentscrollcenter .anchors {
        flex-direction: row;
        gap: min(3.611vw, 14.3325px);
        justify-content: center;
        left: 0;
        position: sticky;
        top: min(7.5vw, 29.767500000000002px);
        width: 100%;
        z-index: 1
    }
}

.component--contentscrollcenter .anchors .anchor {
    color: #2b2b2b;
    color: var(--darkest);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: .417vw;
    opacity: .4;
    transition: opacity .4s cubic-bezier(.5, 1, .89, 1);
    transition: opacity .4s var(--p2Out)
}

.component--contentscrollcenter .anchors .anchor.--active {
    opacity: 1;
    pointer-events: none
}

@media (min-width:1101px) {
    .component--contentscrollcenter .anchors .anchor:hover {
        opacity: 1
    }
}

.component--contentscrollcenter .content {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    will-change: transform, opacity
}

@media (max-width:1100px) {
    .component--contentscrollcenter .content {
        display: block;
        height: 100lvh;
        position: sticky
    }
}

.component--contentscrollcenter .content .image {
    background-color: #d5d5d5;
    background-color: var(--medium)
}

.component--contentscrollcenter .content .image img {
    mix-blend-mode: darken;
    will-change: transform
}

.component--contentscrollcenter .content .image-1 {
    height: 30vw;
    width: 30vw
}

@media (max-width:1100px) {
    .component--contentscrollcenter .content .image-1 {
        height: min(40.278vw, 159.8625px);
        top: min(50vw, 2.0671875in);
        transform: translateX(-50%);
        width: min(50.833vw, 201.7575px)
    }
}

.component--contentscrollcenter .content .image-1 img {
    -o-object-fit: contain;
    object-fit: contain
}

.component--contentscrollcenter .content .info {
    bottom: 0;
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    will-change: transform, opacity
}

.component--contentscrollcenter .content .info .title {
    mix-blend-mode: multiply;
    pointer-events: none;
    width: 50.75vw
}

.component--contentscrollcenter .content .info .title .line--1 {
    text-align: left !important
}

.component--contentscrollcenter .content .info .title .line--2 {
    text-align: right !important
}

@media (max-width:1100px) {
    .component--contentscrollcenter .content .info .title {
        padding: 0 min(7.5vw, 29.767500000000002px);
        pointer-events: initial;
        top: min(46.944vw, 186.32250000000002px);
        transform: translateX(-50%);
        width: 100%
    }
}

.component--contentscrollcenter .content .info .text-block-left {
    bottom: 5vw;
    left: 5vw;
    position: absolute
}

@media (max-width:1100px) {
    .component--contentscrollcenter .content .info .text-block-left {
        bottom: min(29.722vw, 117.9675px);
        left: min(7.5vw, 29.767500000000002px);
        padding: 0;
        width: min(53.056vw, 210.57750000000001px)
    }
}

.component--contentscrollcenter .content .info .text-block-left .wysiwyg {
    pointer-events: none
}

@media (max-width:1100px) {
    .component--contentscrollcenter .content .info .text-block-left .wysiwyg {
        pointer-events: initial
    }
}

.component--contentscrollcenter .content .info .text-block-left .link {
    pointer-events: initial
}

.component--contentscrollcenter .content .info .details {
    bottom: 5vw;
    display: flex;
    flex-direction: column;
    gap: 2.083vw;
    pointer-events: none;
    position: absolute;
    right: 5vw;
    width: 8.333vw
}

@media (max-width:1100px) {
    .component--contentscrollcenter .content .info .details {
        bottom: min(26.944vw, 1.113984375in);
        gap: 0;
        left: auto;
        padding: 0;
        pointer-events: initial;
        right: min(11.111vw, 44.1px);
        row-gap: min(2.5vw, 9.9225px);
        width: min(22.222vw, 88.2px)
    }
}

.component--contentscrollcenter .content .info .details .group {
    position: relative;
    text-align: right
}

@media (max-width:1100px) {
    .component--contentscrollcenter .content .info .details .group {
        text-align: left;
        width: auto
    }
}

.component--contentscrollcenter .content .info .details .group .wysiwyg.--small {
    margin-top: .417vw
}

@media (max-width:1100px) {
    .component--contentscrollcenter .content .info .details .group .wysiwyg.--small {
        margin-top: min(.833vw, 3.3075px)
    }
}

.component--contentscrollcenter .svg-container {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%
}

@media (max-width:1100px) {
    .component--contentscrollcenter .svg-container {
        height: calc(var(--count) * 100lvh);
        mix-blend-mode: darken
    }
}

.component--contentscrollcenter .svg-darken {
    mix-blend-mode: darken
}

@media (max-width:1100px) {
    .component--contentscrollcenter .svg-darken {
        height: 100lvh;
        overflow: visible;
        position: sticky;
        top: 0
    }
}

.component--contentscrollleft {
    padding: 0
}

@media (max-width:1100px) {
    .component--contentscrollleft {
        overflow: visible;
        overflow: initial
    }
}

.component--contentscrollleft .sticky {
    position: relative;
    width: 100%
}

.component--contentscrollleft .sticky .stick {
    background-color: #000;
    background-color: var(--black);
    height: 100vh;
    position: sticky;
    top: 0;
    width: 100%
}

@media (max-width:1100px) {
    .component--contentscrollleft .sticky .stick {
        height: 100dvh
    }
}

.component--contentscrollleft .sticky .stick .images {
    height: calc(100vh + 10vw);
    will-change: transform
}

.component--contentscrollleft .sticky .stick .images .image {
    height: 100%;
    opacity: .0001;
    width: 100%;
    will-change: opacity
}

.component--contentscrollleft .sticky .stick .content {
    color: #fff;
    color: var(--white);
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.component--contentscrollleft .sticky .stick .content .text-block-left {
    bottom: 10vw;
    position: absolute;
    right: 10vw;
    width: 20vw
}

@media (max-width:1100px) {
    .component--contentscrollleft .sticky .stick .content .text-block-left {
        bottom: auto;
        padding: 0;
        right: min(7.5vw, 29.767500000000002px);
        top: min(83.333vw, 330.75px);
        width: min(52.5vw, 208.3725px)
    }
}

.component--contentscrollleft .sticky .stick .content .note {
    bottom: .833vw;
    color: #fff;
    color: var(--white);
    left: .833vw;
    opacity: .0001;
    position: absolute;
    width: 10vw
}

@media (max-width:1100px) {
    .component--contentscrollleft .sticky .stick .content .note {
        bottom: min(8.333vw, 33.075px);
        font-size: min(3.056vw, .126328125in);
        left: min(2.5vw, 9.9225px);
        line-height: 1.2;
        width: min(35vw, 138.915px)
    }
}

.component--contentscrollleft .anchors {
    display: flex;
    gap: 2.75vw;
    left: 10vw;
    position: absolute;
    top: 10vw
}

@media (max-width:1100px) {
    .component--contentscrollleft .anchors {
        flex-direction: column;
        gap: min(7.5vw, 29.767500000000002px);
        left: min(10vw, 39.69px);
        top: min(15vw, .6201562500000001in);
        width: min(82.5vw, 327.4425px)
    }
}

.component--contentscrollleft .anchors .label {
    color: #fff;
    color: var(--white)
}

.component--contentscrollleft .anchors ul {
    display: flex;
    flex-direction: column;
    gap: 1.667vw;
    margin: 0;
    padding: 0
}

@media (max-width:1100px) {
    .component--contentscrollleft .anchors ul {
        gap: min(1.389vw, 5.5125px)
    }
}

.component--contentscrollleft .anchors .anchor {
    color: #fff;
    color: var(--white);
    cursor: pointer;
    font-weight: 500;
    opacity: .4;
    transition: opacity .4s cubic-bezier(.5, 1, .89, 1);
    transition: opacity .4s var(--p2Out)
}

.component--contentscrollleft .anchors .anchor.--active {
    opacity: 1;
    pointer-events: none
}

@media (min-width:1101px) {
    .component--contentscrollleft .anchors .anchor:hover {
        opacity: 1
    }
}

.component--contentsticky {
    padding-bottom: 16.667vw
}

@media (max-width:1100px) {
    .component--contentsticky {
        padding-top: min(16.667vw, 66.15px) !important
    }
}

.component--contentsticky>.container {
    display: flex;
    justify-content: space-between
}

@media (max-width:1100px) {
    .component--contentsticky>.container {
        flex-direction: column;
        width: 80vw
    }
}

.component--contentsticky>.container>.sidebar {
    width: 37.5vw
}

@media (max-width:1100px) {
    .component--contentsticky>.container>.sidebar {
        margin-bottom: min(20vw, 79.38px);
        width: 100%
    }
}

.component--contentsticky>.container>.sidebar .sticky {
    width: 37.5vw
}

@media (max-width:1100px) {
    .component--contentsticky>.container>.sidebar .sticky {
        width: 100%
    }
}

.component--contentsticky>.container>.sidebar .sticky .stick {
    will-change: transform
}

.component--contentsticky>.container>.sidebar .sticky .stick .text-block-left {
    padding: 0
}

.component--contentsticky>.container>.sidebar .sticky .stick .image {
    margin-bottom: 3.333vw;
    width: 34.167vw
}

@media (max-width:1100px) {
    .component--contentsticky>.container>.sidebar .sticky .stick .image {
        width: 100%
    }
}

.component--contentsticky>.container>.flexible-content {
    width: 37.5vw
}

@media (max-width:1100px) {
    .component--contentsticky>.container>.flexible-content {
        margin-top: 0;
        width: 100%
    }
}

.component--contentsticky>.container>.flexible-content>div {
    border-top: 1px solid #e41613;
    border-top: 1px solid var(--main);
    padding: 5.208vw 0
}

@media (max-width:1100px) {
    .component--contentsticky>.container>.flexible-content>div {
        padding: min(8.611vw, 34.1775px) 0
    }
}

.component--contentsticky>.container>.flexible-content>div.image-content .text-block-left {
    padding-top: 1.292vw
}

@media (max-width:1100px) {
    .component--contentsticky>.container>.flexible-content>div.image-content .text-block-left {
        padding: min(5.556vw, 22.05px) 0 0
    }
}

.component--contentsticky>.container>.flexible-content>div.image-content .text-block-left .label {
    padding: 0
}

.component--contentsticky>.container>.flexible-content>div.image-content .text-block-left .title {
    padding: .417vw 0
}

@media (max-width:1100px) {
    .component--contentsticky>.container>.flexible-content>div.image-content .text-block-left .title {
        padding: min(4.167vw, 16.5375px) 0 min(5.556vw, 22.05px)
    }
}

.component--contentsticky>.container>.flexible-content>div.image-content .text-block-left .wysiwyg {
    margin-top: 0 !important
}

.component--contentsticky>.container>.flexible-content>div.image-content .text-block-left .actions {
    margin-top: .417vw
}

@media (max-width:1100px) {
    .component--contentsticky>.container>.flexible-content>div.image-content .text-block-left .actions {
        align-items: flex-start;
        margin-top: min(4.167vw, 16.5375px)
    }
}

.component--contentsticky>.container>.flexible-content>div:first-child {
    border-top: 0;
    padding-top: 0
}

.component--contentsticky>.container>.flexible-content>div:last-child {
    padding-bottom: 0
}

.component--contentsticky>.container>.flexible-content>div .wysiwyg {
    margin-top: 2.5vw
}

@media (max-width:1100px) {
    .component--contentsticky>.container>.flexible-content>div .wysiwyg {
        margin-top: min(5.556vw, 22.05px)
    }
}

.component--dropdowns {
    padding: 15vw 0
}

@media (max-width:1100px) {
    .component--dropdowns {
        padding: min(25vw, 1.03359375in) 0
    }
}

@media (max-width:1100px) {
    .component--dropdowns .container {
        width: calc(100% - min(5vw, 19.845px))
    }
}

.component--dropdowns .text-block-center {
    margin-bottom: 12.5vw
}

@media (max-width:1100px) {
    .component--dropdowns .text-block-center {
        margin: 0 min(10vw, 39.69px) min(17.778vw, 4.41pc);
        padding: 0;
        width: auto
    }
}

@media (max-width:1100px) {
    .component--dropdowns .text-block-center .label {
        margin-bottom: min(7.5vw, 29.767500000000002px)
    }
}

.component--dropdowns .dropdowns {
    position: relative;
    width: 100%
}

.component--dropdowns .dropdowns .dropdown {
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    cursor: pointer;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown {
        padding: min(5vw, 19.845px);
        width: 100%
    }
}

.component--dropdowns .dropdowns .dropdown .head {
    height: auto;
    padding: 1.667vw 0;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown .head {
        padding: 0
    }
}

.component--dropdowns .dropdowns .dropdown .head .title {
    width: 16.25vw
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown .head .title {
        width: min(66.667vw, 264.6px)
    }
}

.component--dropdowns .dropdowns .dropdown .head .icon {
    position: absolute;
    right: 2.083vw;
    top: 50%;
    transform: translateY(-50%);
    transition: all .4s ease
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown .head .icon {
        height: min(10vw, 39.69px);
        right: 0;
        width: min(10vw, 39.69px)
    }
}

.component--dropdowns .dropdowns .dropdown .head .icon span {
    -webkit-mask-image: url(../images/content_img/arrow-down.svg);
    mask-image: url(../images/content_img/arrow-down.svg);
    transition: all .4s ease
}

.component--dropdowns .dropdowns .dropdown .head .icon.--opened {
    background-blend-mode: multiply;
    background-color: rgba(43, 43, 43, .039);
    border: none
}

.component--dropdowns .dropdowns .dropdown .head .icon.--opened span {
    transform: translate(-50%, -50%) rotate(180deg)
}

.component--dropdowns .dropdowns .dropdown .body {
    height: 0;
    overflow: hidden;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown .body {
        padding: 0
    }
}

.component--dropdowns .dropdowns .dropdown .body .columns {
    margin-bottom: 5vw;
    margin-top: 1.667vw
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown .body .columns {
        flex-direction: column;
        padding-right: min(25vw, 1.03359375in);
        padding-top: min(7.5vw, 29.767500000000002px)
    }
}

.component--dropdowns .dropdowns .dropdown .body .columns .item:first-child {
    width: 20vw
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown .body .columns .item:first-child {
        width: 100%
    }
}

.component--dropdowns .dropdowns .dropdown .body .columns .item:first-child .image {
    height: 27.583vw
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown .body .columns .item:first-child .image {
        height: min(83.333vw, 330.75px)
    }
}

.component--dropdowns .dropdowns .dropdown .body .columns .item:last-child {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 15vw
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown .body .columns .item:last-child {
        width: 100%
    }
}

@media (max-width:1100px) {
    .component--dropdowns .dropdowns .dropdown .body .columns .item:last-child .group {
        padding-top: min(7.5vw, 29.767500000000002px)
    }
}

.component--dropdowns .dropdowns .dropdown .body .columns .item:last-child .group .title {
    width: auto
}

.component--dropdowns .dropdowns .dropdown .body .columns .item:last-child .group .link,
.component--dropdowns .dropdowns .dropdown .body .columns .item:last-child .group .wysiwyg {
    margin-top: 1.667vw
}

@media (max-width:1100px) {

    .component--dropdowns .dropdowns .dropdown .body .columns .item:last-child .group .link,
    .component--dropdowns .dropdowns .dropdown .body .columns .item:last-child .group .wysiwyg {
        margin-top: min(5vw, 19.845px)
    }
}

.page-id-12 .component--dropdowns {
    background-color: #f7f7f7;
    background-color: var(--lightest)
}

.component--dropdownssticky {
    padding: 10vw 0 5vw
}

@media (max-width:1100px) {
    .component--dropdownssticky {
        padding: min(20vw, 79.38px) 0
    }
}

@media (max-width:1100px) {
    .component--dropdownssticky .container {
        width: 100%
    }
}

.component--dropdownssticky .columns.--0 {
    padding-bottom: .625vw
}

@media (max-width:1100px) {
    .component--dropdownssticky .columns.--0 {
        padding: 0 min(5vw, 19.845px) min(2.5vw, 9.9225px)
    }
}

.component--dropdownssticky .columns.--0 .item:first-child {
    width: 18.75vw
}

@media (max-width:1100px) {
    .component--dropdownssticky .columns.--0 .item:first-child {
        width: 100%
    }
}

.component--dropdownssticky .columns.--0 .item:last-child {
    margin-right: 3.75vw;
    width: 15vw
}

@media (max-width:1100px) {
    .component--dropdownssticky .columns.--0 .item:last-child {
        margin-right: 0;
        width: 100%
    }
}

.component--dropdownssticky .dropdowns {
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns {
        padding: 0 min(5vw, 19.845px)
    }
}

.component--dropdownssticky .dropdowns .dropdown {
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown {
        padding: min(5vw, 19.845px) 0 min(12.5vw, .516796875in);
        width: 100%
    }
}

.component--dropdownssticky .dropdowns .dropdown .head {
    height: auto;
    padding-top: 2.5vw;
    position: relative;
    width: 100%
}

.component--dropdownssticky .dropdowns .dropdown .head .wysiwyg.display {
    padding-bottom: 5vw;
    width: 18.75vw
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .head .wysiwyg.display {
        padding-bottom: 0;
        width: 100%
    }
}

.component--dropdownssticky .dropdowns .dropdown .head .wysiwyg.display sup {
    font-size: 2.708vw;
    margin-left: .417vw;
    position: absolute;
    top: 0
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .head .wysiwyg.display sup {
        font-size: min(7.778vw, 30.87px);
        margin-left: min(.833vw, 3.3075px)
    }
}

.component--dropdownssticky .dropdowns .dropdown .head .icon {
    position: absolute;
    right: 0;
    top: 2.5vw;
    transition: all .4s ease
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .head .icon {
        height: min(10vw, 39.69px);
        right: min(5vw, 19.845px);
        width: min(10vw, 39.69px)
    }
}

.component--dropdownssticky .dropdowns .dropdown .head .icon span {
    -webkit-mask-image: url(../images/content_img/arrow-down.svg);
    mask-image: url(../images/content_img/arrow-down.svg);
    transition: all .4s ease
}

.component--dropdownssticky .dropdowns .dropdown .head .icon.--opened {
    background-blend-mode: multiply;
    background-color: rgba(43, 43, 43, .039)
}

.component--dropdownssticky .dropdowns .dropdown .head .icon.--opened span {
    transform: translate(-50%, -50%) rotate(180deg)
}

.component--dropdownssticky .dropdowns .dropdown .body {
    height: 0;
    overflow: hidden;
    position: relative;
    width: 100%
}

.component--dropdownssticky .dropdowns .dropdown .image {
    height: 28.333vw;
    left: 50%;
    opacity: .0001;
    position: absolute;
    top: 2.5vw;
    transform: translateX(-50%);
    width: 35.833vw
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .image {
        height: min(100vw, 4.134375in);
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 100%
    }
}

.component--dropdownssticky .dropdowns .dropdown .dropdownssticky-svgApp {
    height: 28.333vw;
    left: 50%;
    opacity: .0001;
    position: absolute;
    top: 45%;
    transform: translateX(-50%) translateY(-50%);
    width: 35.833vw
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .dropdownssticky-svgApp {
        height: min(100vw, 4.134375in);
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 100%
    }
}

.component--dropdownssticky .dropdowns .dropdown .columns.top .item:first-child {
    width: 18.75vw
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .columns.top .item:first-child {
        width: 100%
    }
}

.component--dropdownssticky .dropdowns .dropdown .columns.top .item.last {
    height: 0;
    margin-right: 3.75vw;
    opacity: .0001;
    width: 15vw
}

.component--dropdownssticky .dropdowns .dropdown .columns.top .item.last .group {
    height: 28.333vw
}

.component--dropdownssticky .dropdowns .dropdown .columns.top .item.last .group .actions {
    margin-top: 1.25vw
}

.component--dropdownssticky .dropdowns .dropdown .columns.bottom {
    margin: 2.5vw auto 1.667vw
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .columns.bottom {
        flex-direction: column;
        margin: min(17.5vw, 69.4575px) 0 min(7.5vw, 29.767500000000002px)
    }
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .columns.bottom .group {
        width: min(65vw, 257.985px)
    }
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .columns.bottom .group .actions {
        color: #aaa;
        color: var(--dark);
        margin-top: min(5vw, 19.845px)
    }

    .component--dropdownssticky .dropdowns .dropdown .columns.bottom .group .actions .underline {
        background-color: #aaa;
        background-color: var(--dark)
    }
}

.component--dropdownssticky .dropdowns .dropdown .columns.bottom .flex {
    justify-content: space-between;
    width: 100%
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .columns.bottom .flex {
        flex-wrap: wrap;
        margin-top: min(13.889vw, 55.125px);
        row-gap: min(3.333vw, 13.23px);
        width: 55%
    }
}

.component--dropdownssticky .dropdowns .dropdown .columns.bottom .flex .item {
    width: auto
}

@media (max-width:1100px) {
    .component--dropdownssticky .dropdowns .dropdown .columns.bottom .flex .item {
        width: 50%
    }
}

.component--dropdownssticky .dropdowns .dropdown .columns.bottom .flex .item .wysiwyg.--small {
    white-space: nowrap
}

.component--portfolios+.component--dropdownssticky {
    padding-top: 0
}

.component--error404 {
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    overflow: hidden;
    padding: 0
}

.component--error404 .group {
    bottom: 0;
    height: 29.167vw;
    left: 50%;
    margin: auto;
    mix-blend-mode: multiply;
    position: absolute;
    text-align: center;
    top: auto;
    transform: translateX(-50%);
    width: 100%
}

@media (max-width:1100px) {
    .component--error404 .group {
        bottom: auto;
        margin: 0;
        padding: 0;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 100%
    }
}

.component--error404 .group .title {
    color: #e41613;
    color: var(--main);
    letter-spacing: .125vw
}

@media (max-width:1100px) {
    .component--error404 .group .title {
        letter-spacing: -.5vw
    }
}

@media (max-width:1100px) {
    .component--error404 .group .floating {
        position: relative
    }
}

.component--error404 .group .wysiwyg {
    margin: 0;
    width: 37.5vw
}

@media (max-width:1100px) {
    .component--error404 .group .wysiwyg {
        width: 100%
    }
}

.component--error404 .group .link {
    margin-top: 1.25vw
}

@media (max-width:1100px) {
    .component--error404 .group .link {
        margin-top: min(5.556vw, 22.05px)
    }
}

.component--gallerysticky {
    padding: 13.875vw 0 10vw
}

@media (max-width:1100px) {
    .component--gallerysticky {
        height: min(278.611vw, 11.518828125in);
        padding: min(23.611vw, 93.7125px) 0 min(17.5vw, 69.4575px)
    }
}

.component--gallerysticky.large .waves {
    height: 50.625vw;
    left: 0;
    position: absolute;
    top: -13.875vw;
    width: 100%
}

@media (max-width:1100px) {
    .component--gallerysticky.large .waves {
        height: min(87.222vw, 346.185px);
        top: max(-23.611vw, -93.7125px)
    }
}

.component--gallerysticky.large .waves svg {
    height: 100%;
    width: 100%
}

.component--gallerysticky.large .gradient {
    background: linear-gradient(-90deg, hsla(0, 0%, 95%, 0), #f2f2f2 14.7%);
    background: -webkit-linear-gradient(-90deg, hsla(0, 0%, 95%, 0), #f2f2f2 14.7%);
    bottom: -10vw;
    height: 85.583vw;
    top: auto
}

@media (max-width:1100px) {
    .component--gallerysticky.large .gradient {
        bottom: max(-17.5vw, -69.4575px);
        height: min(278.611vw, 11.518828125in)
    }
}

.component--gallerysticky.small {
    padding: 5vw 0 10vw
}

@media (max-width:1100px) {
    .component--gallerysticky.small {
        height: min(278.611vw, 11.518828125in);
        padding: min(23.611vw, 93.7125px) 0 min(17.5vw, 69.4575px)
    }
}

.component--gallerysticky.small .columns .item-0 .image,
.component--gallerysticky.small .columns .item-0 .video {
    margin-left: 1.667vw
}

.component--gallerysticky .text-block-left {
    left: 50%;
    position: absolute;
    top: 22.5vw;
    transform: translateX(-50%);
    width: 40vw
}

@media (max-width:1100px) {
    .component--gallerysticky .text-block-left {
        padding: 0;
        top: min(65vw, 257.985px);
        width: min(80vw, 317.52px)
    }
}

.component--gallerysticky .text-block-left .actions,
.component--gallerysticky .text-block-left .wysiwyg {
    margin-left: 20vw
}

@media (max-width:1100px) {

    .component--gallerysticky .text-block-left .actions,
    .component--gallerysticky .text-block-left .wysiwyg {
        margin: min(7.5vw, 29.767500000000002px) 0 0 min(20vw, 79.38px);
        width: auto
    }
}

@media (max-width:1100px) {
    .component--gallerysticky .text-block-left .actions {
        margin-top: min(5vw, 19.845px)
    }
}

.component--gallerysticky .columns {
    flex-wrap: wrap
}

@media (max-width:1100px) {
    .component--gallerysticky .columns {
        height: 100%
    }
}

.component--gallerysticky .columns .item {
    width: 50%
}

.component--gallerysticky .columns .item-0 .image,
.component--gallerysticky .columns .item-0 .video {
    height: 15vw;
    margin-left: 5vw;
    width: 15vw
}

@media (max-width:1100px) {

    .component--gallerysticky .columns .item-0 .image,
    .component--gallerysticky .columns .item-0 .video {
        height: min(25vw, 1.03359375in);
        width: min(25vw, 1.03359375in)
    }
}

.component--gallerysticky .columns .item-1 {
    display: flex;
    justify-content: flex-end;
    margin-top: 10vw
}

@media (max-width:1100px) {
    .component--gallerysticky .columns .item-1 {
        margin-top: min(16.667vw, 66.15px)
    }
}

.component--gallerysticky .columns .item-1 .image,
.component--gallerysticky .columns .item-1 .video {
    height: 25vw;
    width: 20vw
}

@media (max-width:1100px) {

    .component--gallerysticky .columns .item-1 .image,
    .component--gallerysticky .columns .item-1 .video {
        height: min(33.333vw, 132.3px);
        width: min(26.667vw, 6.615pc)
    }
}

.component--gallerysticky .columns .item-2 {
    margin-top: 10vw
}

@media (max-width:1100px) {
    .component--gallerysticky .columns .item-2 {
        margin-bottom: min(33.333vw, 132.3px);
        margin-top: auto
    }
}

.component--gallerysticky .columns .item-2 .image,
.component--gallerysticky .columns .item-2 .video {
    height: 20vw;
    width: 30vw
}

@media (max-width:1100px) {

    .component--gallerysticky .columns .item-2 .image,
    .component--gallerysticky .columns .item-2 .video {
        height: min(33.333vw, 132.3px);
        width: min(50vw, 2.0671875in)
    }
}

.component--gallerysticky .columns .item-3 {
    margin-top: 25.875vw
}

@media (max-width:1100px) {
    .component--gallerysticky .columns .item-3 {
        margin-bottom: 0;
        margin-top: auto
    }
}

.component--gallerysticky .columns .item-3 .image,
.component--gallerysticky .columns .item-3 .video {
    height: 24.583vw;
    width: 20vw
}

@media (max-width:1100px) {

    .component--gallerysticky .columns .item-3 .image,
    .component--gallerysticky .columns .item-3 .video {
        height: min(33.333vw, 132.3px);
        margin-left: auto;
        margin-right: 0;
        width: min(26.667vw, 6.615pc)
    }
}

@media (max-width:1100px) {
    .component--gridnumbers {
        padding: min(12.5vw, .516796875in) 0 0
    }
}

@media (max-width:1100px) {
    .component--gridnumbers .container {
        width: 100%
    }
}

.component--gridnumbers.vertical {
    padding: 10vw 0 3.333vw
}

@media (max-width:1100px) {
    .component--gridnumbers.vertical {
        padding: min(10vw, 39.69px) 0 0
    }
}

@media (max-width:1100px) {
    .component--gridnumbers.vertical .columns {
        flex-direction: column;
        gap: min(20vw, 79.38px)
    }
}

@media (max-width:1100px) {
    .component--gridnumbers.vertical .columns .item {
        width: 100% !important
    }
}

.component--gridnumbers.vertical .columns .item:first-child {
    width: 20vw
}

.component--gridnumbers.vertical .columns .item:first-child .text-block-left {
    position: relative;
    position: sticky;
    top: 11.667vw
}

@media (max-width:1100px) {
    .component--gridnumbers.vertical .columns .item:first-child .text-block-left {
        padding: 0 0 0 min(5vw, 19.845px);
        position: relative;
        top: 0;
        width: min(60vw, 238.14000000000001px);
        margin-top: 130px;
        
    }
}

.component--gridnumbers.vertical .columns .item:last-child {
    display: flex;
    justify-content: center;
    width: 40vw
}

@media (max-width:1100px) {
    .component--gridnumbers.vertical .columns .item:last-child {
        padding-top: 0;
        width: 100%
    }
}

.component--gridnumbers.vertical .columns .item:last-child .content {
    display: flex;
    flex-direction: column;
    position: relative
}

.component--gridnumbers.vertical .columns .item:last-child .content-0 .group {
    border-left: 1px solid #c51010;
    /* border-left: 1px solid var(--medium); */
    border-right: 1px solid #c51010;
    /* border-right: 1px solid var(--medium) */
}

.component--gridnumbers.vertical .columns .item:last-child .content-1 {
    margin-top: 10vw
}

@media (max-width:1100px) {
    .component--gridnumbers.vertical .columns .item:last-child .content-1 {
        margin-top: min(20vw, 79.38px)
    }
}

.component--gridnumbers.vertical .columns .item:last-child .content-1 .group {
     border-left: 1px solid #c51010; 
    /* border-left: 1px solid var(--medium); */
    border-right: 1px solid #c51010;
    /* border-right: 1px solid var(--medium); */
    margin-left: -1px
}

.component--gridnumbers.vertical .columns .item:last-child .group {
    display: flex;
    flex-direction: column;
    height: 25vw;
    justify-content: space-between;
    padding: 1.667vw;
    position: relative;
    width: 20vw
}

.component--gridnumbers.vertical .columns .item:last-child .group:not(:last-child) {
    border-top: 1px solid #c51010;
    /* border-top: 1px solid var(--medium) */
}

.component--gridnumbers.vertical .columns .item:last-child .group:last-child {
    border-bottom: 1px solid #c51010;
    /* border-bottom: 1px solid #d5d5d5;
    border-bottom: 1px solid var(--medium); */
    border-top: 1px solid #c51010;
    /* border-top: 1px solid #d5d5d5; */
    /* border-top: 1px solid var(--medium) */
}

@media (max-width:1100px) {
    .component--gridnumbers.vertical .columns .item:last-child .group {
        height: min(55.278vw, 219.3975px);
        padding: min(6.667vw, 26.46px) min(5vw, 19.845px) min(5vw, 19.845px);
        width: 100%
    }
}

.component--gridnumbers.vertical .columns .item:last-child .group .title {
    color: #e41613;
    color: var(--main)
}

.component--gridnumbers.vertical .columns .item:last-child .group .wysiwyg {
    width: 80%
}

@media (max-width:1100px) {
    .component--gridnumbers.vertical .columns .item:last-child .group .wysiwyg {
        width: 100%
    }
}

.component--gridnumbers.horizontal {
    padding: 10vw 0 0
}

@media (max-width:1100px) {
    .component--gridnumbers.horizontal {
        padding: min(12.5vw, .516796875in) 0 min(3.333vw, 13.23px)
    }
}

@media (max-width:1100px) {
    .component--gridnumbers.horizontal .container {
        display: flex
    }
}

.component--gridnumbers.horizontal .waves {
    height: 55.833vw;
    left: 0;
    position: absolute;
    top: -10vw;
    width: 100%
}

.component--gridnumbers.horizontal .waves svg {
    height: 100%;
    width: 100%
}

.component--gridnumbers.horizontal .columns {
    justify-content: flex-start
}

.component--gridnumbers.horizontal .columns .item {
    width: 20vw
}

.component--gridnumbers.horizontal .columns .item .group {
    display: flex;
    flex-direction: column;
    height: 25vw;
    justify-content: space-between;
    padding: 1.667vw;
    position: relative;
    width: 100%
}

.component--gridnumbers.horizontal .columns .item .group .title {
    color: #e41613;
    color: var(--main)
}

.component--gridnumbers.horizontal .columns .item .group .wysiwyg {
    width: 80%
}

.component--gridnumbers.horizontal .columns.top .item .group {
    border: 1px solid #c51010;
    /* border: 1px solid #d5d5d5;
    border: 1px solid var(--medium); */
    border-right: 0
}

.component--gridnumbers.horizontal .columns.top .item:last-child .group {
    border-right: 1px solid #c51010;
    /* border-right: 1px solid var(--medium) */
}

.component--gridnumbers.horizontal .columns.bottom {
    justify-content: flex-end
}

.component--gridnumbers.horizontal .columns.bottom .item .group {
    border-bottom: 1px solid #c51010;

    /* border-bottom: 1px solid var(--medium); */
    border-top: 0
}

.component--gridnumbers.horizontal .columns.bottom .item:last-child .group {
    /* border-left: 1px solid #d5d5d5;
    border-left: 1px solid var(--medium);
    border-right: 1px solid #d5d5d5;
    border-right: 1px solid var(--medium);
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium) */

    border-left: 1px solid #c51010;
    /* border-left: 1px solid var(--medium); */
    border-right: 1px solid #c51010;
    /* border-right: 1px solid var(--medium); */
    border-top: 1px solid #c51010;
    /* border-top: 1px solid var(--medium) */
}

.component--gridnumbers.horizontal .columns.bottom .item:not(:last-child) {
    /* border-left: 1px solid #d5d5d5;
    border-left: 1px solid var(--medium); */
    border-left: 1px solid #c51010;
    /* border-left: 1px solid var(--medium); */
    border-right: 0
}

@media (max-width:1100px) {
    .component--gridnumbers.horizontal {
        padding: min(10vw, 39.69px) 0 min(3.333vw, 13.23px)
    }

    .component--gridnumbers.horizontal .columns {
        flex-direction: column;
        gap: min(20vw, 79.38px)
    }

    .component--gridnumbers.horizontal .columns .item {
        width: 100% !important
    }

    .component--gridnumbers.horizontal .columns .item:first-child .text-block-left {
        padding: 0 0 0 min(5vw, 19.845px);
        position: relative;
        top: 0;
        width: min(60vw, 238.14000000000001px)
    }

    .component--gridnumbers.horizontal .columns .item:last-child {
        display: flex;
        justify-content: center;
        padding-top: 0;
        width: 100%
    }

    .component--gridnumbers.horizontal .columns .item:last-child .content {
        display: flex;
        flex-direction: column;
        position: relative
    }

    .component--gridnumbers.horizontal .columns .item:last-child .content-0 .group {
        border-left: 1px solid #c51010;
        ;

        border-right: 1px solid #c51010;

    }

    .component--gridnumbers.horizontal .columns .item:last-child .content-1 {
        margin-top: min(20vw, 79.38px)
    }

    .component--gridnumbers.horizontal .columns .item:last-child .content-1 .group {
        border-left: 1px solid #c51010;
        border-left: 1px solid var(--medium);
        border-right: 1px solid #c51010;
        border-right: 1px solid var(--medium);
        margin-left: -1px
    }

    .component--gridnumbers.horizontal .columns .item:last-child .group {
        display: flex;
        flex-direction: column;
        height: min(55.278vw, 219.3975px);
        justify-content: space-between;
        padding: min(6.667vw, 26.46px) min(5vw, 19.845px) min(5vw, 19.845px);
        position: relative;
        width: 100%
    }

    .component--gridnumbers.horizontal .columns .item:last-child .group:not(:last-child) {
        border-top: 1px solid #c51010;
        border-top: 1px solid var(--medium)
    }

    .component--gridnumbers.horizontal .columns .item:last-child .group:last-child {
        border-bottom: 1px solid #c51010;

        border-top: 1px solid #c51010;

    }

    .component--gridnumbers.horizontal .columns .item:last-child .group .title {
        color: #e41613;
        color: var(--main)
    }

    .component--gridnumbers.horizontal .columns .item:last-child .group .wysiwyg {
        width: 100%
    }
}

.component--herocontact {
    background-color: #f2f2f2;
    background-color: var(--lighter);
    padding: 0
}

.component--herocontact .text-block-left {
    width: auto
}

@media (max-width:1100px) {
    .component--herocontact .text-block-left {
        padding: 0
    }
}

.component--herocontact .columns {
    height: 100%
}

@media (max-width:1100px) {
    .component--herocontact .columns {
        flex-direction: column-reverse;
        flex-wrap: nowrap;
        gap: min(7.5vw, 29.767500000000002px)
    }
}

@media (max-width:1100px) {
    .component--herocontact .columns .item {
        height: auto;
        width: 100%
    }
}

.component--herocontact .columns .item:first-child {
    display: flex;
    flex-direction: column;
    gap: 19.083vw;
    justify-content: space-between;
    padding: 8.833vw 6.667vw 13vw 1.667vw
}

@media (max-width:1100px) {
    .component--herocontact .columns .item:first-child {
        gap: min(25vw, 1.03359375in);
        padding: min(0vw, 0px) min(5vw, 19.845px) min(15.833vw, 62.8425px)
    }
}

.component--herocontact .columns .item:last-child {
    display: flex;
    flex-direction: column;
    justify-content: flex-end
}

@media (max-width:1100px) {
    .component--herocontact .columns .item:last-child {
        gap: min(7.5vw, 29.767500000000002px);
        padding-top: min(30vw, 89.30250000000001pt)
    }
}

.component--herocontact .columns .item:last-child .text-block-left {
    padding-left: min(5vw, 19.845px)
}

.component--herocontact .columns .item:last-child .image {
    height: 39.583vw;
    -webkit-mask-image: url(../images/content_img/contact-mask-desktop.svg);
    mask-image: url(../images/content_img/contact-mask-desktop.svg);
    -webkit-mask-position: bottom;
    mask-position: bottom;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    width: 50vw
}

@media (max-width:1100px) {
    .component--herocontact .columns .item:last-child .image {
        height: min(95vw, 377.055px);
        margin-left: auto;
        margin-right: 0;
        -webkit-mask-image: url(../images/content_img/contact-mask.svg);
        mask-image: url(../images/content_img/contact-mask.svg);
        width: calc(100% - min(5vw, 19.845px))
    }
}

.component--herocontact .locations {
    display: flex;
    gap: 5.833vw;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .component--herocontact .locations {
        flex-direction: column;
        gap: min(10vw, 39.69px)
    }
}

.component--herocontact .locations:before {
    background-color: #d5d5d5;
    background-color: var(--medium);
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    top: 2.708vw;
    width: 50vw
}

@media (max-width:1100px) {
    .component--herocontact .locations:before {
        content: none
    }
}

.component--herocontact .locations .city {
    min-height: 9.417vw;
    width: 10vw
}

@media (max-width:1100px) {
    .component--herocontact .locations .city {
        width: min(50vw, 2.0671875in)
    }
}

.component--herocontact .locations .title {
    padding: 0
}

.component--herocontact .locations .wysiwyg {
    margin-top: 2vw
}

@media (max-width:1100px) {
    .component--herocontact .locations .wysiwyg {
        border-top: 1px solid #d5d5d5;
        border-top: 1px solid var(--medium);
        margin-top: min(2.5vw, 9.9225px);
        padding-top: min(2.5vw, 9.9225px)
    }
}

.component--herocontact .locations .wysiwyg p {
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--herocontact .locations .wysiwyg p {
        margin-bottom: min(2.5vw, 9.9225px)
    }
}

.component--herocontact .locations .wysiwyg p:last-child {
    margin-bottom: 0
}

.component--herocontact .locations .wysiwyg p a {
    color: #2b2b2b;
    color: var(--darkest)
}

@media (max-width:1100px) {
    .component--herocontact .locations .wysiwyg p a {
        font-size: min(3.056vw, .126328125in)
    }
}

.component--herocontact .waves {
    bottom: 0;
    height: 27.667vw;
    left: 0;
    position: absolute;
    width: 100%
}

@media (max-width:1100px) {
    .component--herocontact .waves {
        bottom: auto;
        height: min(89.722vw, 356.1075px);
        top: 0
    }
}

.component--herocontact .waves svg {
    height: 100%;
    width: 100%
}

.component--herofullcenter {
    background-color: #f2f2f2;
    background-color: var(--lighter);
    padding: 15vw 0 12.5vw
}

@media (max-width:1100px) {
    .component--herofullcenter {
        padding: min(30vw, 89.30250000000001pt) 0 min(20vw, 79.38px)
    }
}

@media (max-width:1100px) {
    .component--herofullcenter .text-block-center {
        width: calc(100% - min(20vw, 79.38px))
    }
}

@media (max-width:1100px) {
    .component--herofullcenter .text-block-center .label {
        margin-bottom: min(5vw, 19.845px)
    }
}

.component--herofulltext {
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    padding: 0
}

@media (max-width:1100px) {
    .component--herofulltext {
        height: 100svh
    }
}

.component--herofulltext .title {
    left: 10vw;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 60vw
}

@media (max-width:1100px) {
    .component--herofulltext .title {
        left: min(8.611vw, 34.1775px);
        padding-top: min(30vw, 89.30250000000001pt);
        position: relative;
        top: auto;
        transform: none;
        width: min(76.111vw, 302.08500000000004px)
    }
}

.component--herofulltext .text-block-left {
    bottom: 5vw;
    position: absolute;
    right: 10vw;
    width: 20vw
}

@media (max-width:1100px) {
    .component--herofulltext .text-block-left {
        bottom: min(20.556vw, 81.58500000000001px);
        left: min(32.5vw, 128.9925px);
        margin-left: auto;
        padding: 0;
        right: auto;
        width: min(60vw, 238.14000000000001px)
    }
}

.component--herofulltext .scroll {
    bottom: 5vw;
    left: 5vw;
    position: absolute
}

@media (max-width:1100px) {
    .component--herofulltext .scroll {
        display: none
    }
}

.component--herorightmedia {
    background-color: #fff;
    background-color: var(--white);
    padding: 0 0 10vw;
    position: relative
}

@media (max-width:1100px) {
    .component--herorightmedia {
        padding: min(30vw, 89.30250000000001pt) 0 min(17.222vw, 68.355px)
    }
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 {
        flex-direction: column
    }
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 .item {
        width: 100% !important
    }
}

.component--herorightmedia .columns-0 .item:first-child .text-block-left {
    margin-left: 10vw;
    margin-top: 14.167vw;
    width: 25vw
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 .item:first-child .text-block-left {
        margin-top: 0;
        padding: 0;
        width: min(60vw, 238.14000000000001px)
    }
}

.component--herorightmedia .columns-0 .item:first-child .text-block-left .wysiwyg {
    margin-top: 2.5vw
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 .item:first-child .text-block-left .wysiwyg {
        margin-top: min(10vw, 39.69px);
        width: min(60vw, 238.14000000000001px)
    }
}

.component--herorightmedia .columns-0 .item:first-child .image-group {
    bottom: 0;
    height: 18.333vw;
    left: 10vw;
    position: absolute;
    width: 26.667vw
}

.component--herorightmedia .columns-0 .item:first-child .image-group .image {
    will-change: transform
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 .item:last-child {
        margin-top: min(20vw, 79.38px)
    }
}

.component--herorightmedia .columns-0 .item:last-child .clip {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    clip-path: inset(0 0 0 100%);
    transform: translateX(0);
    width: 50vw;
    will-change: transform
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 .item:last-child .clip {
        background-color: transparent;
        clip-path: none;
        width: 100%
    }
}

.component--herorightmedia .columns-0 .item:last-child .text-block-left {
    display: none !important
}

.component--herorightmedia .columns-0 .item:last-child .text-block-left {
    color: #fff;
    color: var(--white);
    margin-left: 10vw;
    margin-top: 14.167vw;
    position: absolute;
    top: 0;
    width: 25vw
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 .item:last-child .text-block-left {
        margin-top: 0;
        padding: 0;
        width: min(60vw, 238.14000000000001px)
    }
}

.component--herorightmedia .columns-0 .item:last-child .text-block-left .wysiwyg {
    margin-top: 2.5vw;
    width: 100%
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 .item:last-child .text-block-left .wysiwyg {
        margin-top: min(10vw, 39.69px);
        width: min(60vw, 238.14000000000001px)
    }
}

.component--herorightmedia .columns-0 .item:last-child .media {
    filter: grayscale(1);
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    opacity: .0001;
    will-change: transform
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 .item:last-child .media {
        aspect-ratio: .73 !important
    }

    .component--herorightmedia .columns-0 .item:last-child .media {
        filter: none;
        height: min(90.833vw, 360.5175px);
        opacity: 1;
        width: 100%
    }
}

.component--herorightmedia .columns-0 .item:last-child .wysiwyg {
    -moz-column-count: 2;
    -moz-column-gap: 5vw;
    column-gap: 5vw;
    -moz-column-width: 20vw;
    columns: 20vw 2;
    margin-top: 5vw;
    width: 45vw
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-0 .item:last-child .wysiwyg {
        -moz-column-count: 1;
        column-count: 1;
        margin-left: auto;
        margin-right: min(10vw, 39.69px);
        margin-top: min(10vw, 39.69px);
        width: min(65vw, 257.985px)
    }
}

.component--herorightmedia .columns-0 .item:last-child .wysiwyg p {
    -moz-column-break-inside: avoid;
    break-inside: avoid-column
}

.component--herorightmedia .columns-1 {
    justify-content: flex-end;
    margin: 7.917vw auto 0;
    width: 90vw
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-1 {
        justify-content: flex-start;
        margin: min(25vw, 1.03359375in) min(5vw, 19.845px) 0;
        width: auto
    }
}

@media (max-width:1100px) {
    .component--herorightmedia .columns-1 .text-block-left {
        padding: 0;
        width: min(75vw, 297.675px)
    }
}

.component--herorightmedia .waves {
    height: 54.083vw;
    position: absolute;
    right: 0;
    top: 100vh;
    width: 100%
}

.component--herorightmedia .waves svg {
    height: 100%;
    width: 100%
}

.component--herosimpletext {
    padding: 13.333vw 0 1.667vw
}

@media (max-width:1100px) {
    .component--herosimpletext {
        padding: min(38.889vw, 154.35px) 0 min(5vw, 19.845px)
    }
}

@media (max-width:1100px) {
    .component--herosimpletext .container {
        display: flex;
        flex-direction: column;
        gap: min(5vw, 19.845px)
    }
}

.component--herosimpletext .columns {
    width: 100%
}

.component--herosimpletext .columns-0 {
    justify-content: flex-end;
    margin-bottom: 2.5vw
}

@media (max-width:1100px) {
    .component--herosimpletext .columns-0 {
        margin-bottom: 0
    }
}

.component--herosimpletext .columns-0 .item {
    margin-right: 3.333vw;
    width: 40vw
}

.component--herosimpletext .columns-1 .item {
    display: flex;
    width: 20vw
}

@media (max-width:1100px) {
    .component--herosimpletext .columns-1 .item {
        padding-right: min(27.5vw, 1.136953125in);
        width: 100%
    }
}

@media (max-width:1100px) {
    .component--herosimpletext .columns .item {
        width: 100% !important
    }
}

.page-id-22 .component--herosimpletext,
.page-id-24 .component--herosimpletext,
.page-id-26 .component--herosimpletext {
    background-color: #f7f7f7;
    background-color: var(--lightest)
}

.page-id-20 .component--herosimpletext .container,
.page-id-22 .component--herosimpletext .container,
.page-id-24 .component--herosimpletext .container,
.page-id-26 .component--herosimpletext .container {
    width: 98.333vw
}

@media (max-width:1100px) {

    .page-id-20 .component--herosimpletext .container,
    .page-id-22 .component--herosimpletext .container,
    .page-id-24 .component--herosimpletext .container,
    .page-id-26 .component--herosimpletext .container {
        display: flex;
        flex-direction: column;
        width: calc(100% - min(5vw, 19.845px))
    }
}

.page-id-20 .component--herosimpletext .columns-0,
.page-id-22 .component--herosimpletext .columns-0,
.page-id-24 .component--herosimpletext .columns-0,
.page-id-26 .component--herosimpletext .columns-0 {
    margin-bottom: 2.5vw
}

@media (max-width:1100px) {

    .page-id-20 .component--herosimpletext .columns-0,
    .page-id-22 .component--herosimpletext .columns-0,
    .page-id-24 .component--herosimpletext .columns-0,
    .page-id-26 .component--herosimpletext .columns-0 {
        margin-bottom: 0
    }
}

.page-id-20 .component--herosimpletext .columns-0 .item,
.page-id-22 .component--herosimpletext .columns-0 .item,
.page-id-24 .component--herosimpletext .columns-0 .item,
.page-id-26 .component--herosimpletext .columns-0 .item {
    margin-right: 5vw;
    width: 45vw
}

.component--herosolutions {
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    padding: 0
}

@media (max-width:1100px) {
    .component--herosolutions {
        height: auto;
        padding-top: min(16.667vw, 66.15px)
    }
}

.component--herosolutions .title.--3xlarge {
    left: 27.917vw;
    mix-blend-mode: multiply;
    position: absolute;
    text-indent: -8.75vw;
    top: 50%;
    transform: translateY(-50%);
    width: 38.542vw
}

@media (max-width:1100px) {
    .component--herosolutions .title.--3xlarge {
        left: 50%;
        text-indent: 0;
        top: min(46.944vw, 186.32250000000002px);
        transform: translateX(-50%);
        width: min(80vw, 317.52px)
    }

    .component--herosolutions .title.--3xlarge .line--2 {
        text-align: right !important
    }
}

.component--herosolutions .text-block-left {
    bottom: 5vw;
    left: 0;
    padding-left: 1.667vw;
    position: absolute;
    right: auto;
    width: 16.667vw
}

@media (max-width:1100px) {
    .component--herosolutions .text-block-left {
        bottom: 0;
        margin: 0 auto;
        padding: 0;
        position: relative;
        text-align: center;
        width: min(70vw, 277.83px)
    }
}

@media (max-width:1100px) {
    .component--herosolutions .text-block-left .wysiwyg {
        margin-top: max(-4.167vw, -16.5375px)
    }
}

.component--herosolutions .image {
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    margin-left: auto;
    margin-right: 0;
    width: 70vw
}

@media (max-width:1100px) {
    .component--herosolutions .image {
        height: min(122.222vw, 485.1px);
        width: 100%
    }
}

.component--herosolutions .details {
    bottom: 0;
    display: flex;
    height: 3.75vw;
    justify-content: space-between;
    left: 0;
    padding: .417vw 1.667vw;
    position: absolute;
    width: 100%
}

@media (max-width:1100px) {
    .component--herosolutions .details {
        flex-wrap: wrap;
        gap: min(5vw, 19.845px) 0;
        height: auto;
        margin-top: min(21.111vw, 83.79px);
        padding: 0 min(5vw, 19.845px);
        position: relative
    }
}

.component--herosolutions .details .group {
    width: auto
}

@media (max-width:1100px) {
    .component--herosolutions .details .group {
        text-align: center;
        width: 33%
    }
}

.component--herosolutions .details .group .title {
    margin-bottom: .208vw
}

@media (max-width:1100px) {
    .component--herosolutions .details .group .title {
        margin-bottom: min(.833vw, 3.3075px)
    }
}

.component--herotextimage {
    padding: 12.333vw 0 0
}

@media (max-width:1100px) {
    .component--herotextimage {
        padding: min(30vw, 89.30250000000001pt) 0 0
    }
}

.component--herotextimage .wysiwyg {
    bottom: 0;
    left: 0;
    position: absolute;
    width: 20vw
}

@media (max-width:1100px) {
    .component--herotextimage .wysiwyg {
        bottom: auto;
        left: auto;
        position: relative;
        width: min(67.5vw, 267.9075px)
    }
}

.component--herotextimage .columns {
    justify-content: flex-end;
    margin: 0 auto;
    padding-bottom: 13.667vw;
    width: 80vw
}

@media (max-width:1100px) {
    .component--herotextimage .columns {
        flex-direction: column-reverse;
        padding-bottom: min(20vw, 79.38px);
        width: 100%
    }
}

.component--herotextimage .columns .item {
    width: 35vw
}

@media (max-width:1100px) {
    .component--herotextimage .columns .item {
        width: min(70vw, 277.83px)
    }
}

.component--herotextimage .image,
.component--herotextimage .video {
    height: 50vw;
    margin-top: 1.667vw
}

@media (max-width:1100px) {

    .component--herotextimage .image,
    .component--herotextimage .video {
        height: min(66.667vw, 264.6px);
        margin-top: min(2.5vw, 9.9225px)
    }
}

.component--holder {
    overflow: visible;
    overflow: initial;
    padding: 0;
    z-index: 1
}

@media (max-width:1100px) {
    .component--holder {
        min-height: auto
    }
}

.component--holder .content {
    height: auto;
    position: relative;
    width: 100%
}

.component--holder .content .hero {
    padding: 2.5vw 2.5vw 10vw;
    position: relative
}

@media (max-width:1100px) {
    .component--holder .content .hero {
        padding: min(17.5vw, 69.4575px) min(2.5vw, 9.9225px) min(25vw, 1.03359375in)
    }
}

.component--holder .content .hero .title {
    width: 40vw
}

@media (max-width:1100px) {
    .component--holder .content .hero .title {
        width: 100%
    }
}

.component--holder .content .info {
    position: relative;
    width: 100%
}

.component--holder .content .sidebar {
    height: 100%;
    left: 2.5vw;
    position: absolute;
    top: .208vw;
    width: 7.5vw
}

@media (max-width:1100px) {
    .component--holder .content .sidebar {
        left: 0;
        position: sticky;
        top: 0;
        width: 100%;
        z-index: 1
    }
}

@media (max-width:1100px) {
    .component--holder .content .sidebar .overlay {
        height: 100vh;
        opacity: .0001
    }
}

.component--holder .content .sidebar .sticky {
    position: sticky;
    top: 5vw
}

@media (max-width:1100px) {
    .component--holder .content .sidebar .sticky {
        background-color: #fff;
        background-color: var(--white);
        padding: min(6.111vw, .25265625in) min(5vw, 19.845px);
        position: relative;
        top: 0;
        width: 100%;
        z-index: 2
    }
}

@media (max-width:1100px) {
    .component--holder .content .sidebar .group {
        align-items: center;
        display: flex;
        justify-content: space-between
    }
}

.component--holder .content .sidebar .group:not(:last-child) {
    margin-bottom: 1.25vw
}

.component--holder .content .sidebar .group .label {
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--holder .content .sidebar .group .label {
        font-weight: 700;
        margin-bottom: 0
    }
}

.component--holder .content .sidebar .group a {
    display: block;
    font-size: .75vw;
    font-weight: 500;
    opacity: .4;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut)
}

.component--holder .content .sidebar .group a:not(:last-child) {
    margin-bottom: .5vw
}

.component--holder .content .sidebar .group a .docs {
    color: #d5d5d5;
    color: var(--medium)
}

.component--holder .content .sidebar .group a.--active {
    opacity: 1
}

@media (min-width:1101px) {
    .component--holder .content .sidebar .group a:hover {
        opacity: 1
    }
}

@media (max-width:1100px) {
    .component--holder .content .sidebar .selector-trigger {
        align-items: center;
        display: flex;
        font-size: min(3.611vw, 14.3325px);
        gap: min(2.5vw, 9.9225px);
        position: relative;
        text-align: right
    }

    .component--holder .content .sidebar .selector-trigger:after {
        background: url(../images/arrow-down.svg) 50% no-repeat;
        background-size: contain;
        content: "";
        display: block;
        height: min(3.333vw, 13.23px);
        position: relative;
        transition: transform .4s ease-out;
        width: min(3.333vw, 13.23px)
    }

    .component--holder .content .sidebar .selector-trigger.--opened:after {
        transform: rotate(180deg)
    }
}

@media (max-width:1100px) {
    .component--holder .content .sidebar .selector {
        background-color: #f7f7f7;
        background-color: var(--lightest);
        border-top: 1px solid #2b2b2b;
        border-top: 1px solid var(--darkest);
        display: none;
        left: 0;
        position: absolute;
        transform: scaleY(0);
        transform-origin: top;
        width: 100%;
        will-change: transform;
        z-index: 1010
    }

    .component--holder .content .sidebar .selector ul {
        display: flex;
        flex-direction: column;
        gap: min(3.333vw, 13.23px);
        padding: min(7.5vw, 29.767500000000002px) min(5vw, 19.845px)
    }

    .component--holder .content .sidebar .selector ul li {
        opacity: .0001;
        padding-right: min(44.444vw, 176.4px)
    }

    .component--holder .content .sidebar .selector ul li a {
        color: #2b2b2b;
        color: var(--darkest);
        font-size: min(3.889vw, 15.435px);
        font-weight: 500;
        opacity: .4
    }
}

.component--holder .content .docsregulations,
.component--holder .content .generalmeetings {
    padding: 0 1.667vw 0 35vw;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations,
    .component--holder .content .generalmeetings {
        margin: 0 auto;
        padding: 0;
        width: calc(100% - min(10vw, 39.69px))
    }
}

.component--holder .content .docsregulations .head,
.component--holder .content .generalmeetings .head {
    padding-bottom: 2.5vw;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations .head,
    .component--holder .content .generalmeetings .head {
        padding-bottom: min(10vw, 39.69px)
    }
}

.component--holder .content .docsregulations .head .title,
.component--holder .content .generalmeetings .head .title {
    width: 20vw
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations .head .title,
    .component--holder .content .generalmeetings .head .title {
        width: min(70vw, 277.83px)
    }
}

.component--holder .content .docsregulations .body,
.component--holder .content .generalmeetings .body {
    position: relative;
    width: 100%
}

.component--holder .content .docsregulations .body .columns,
.component--holder .content .generalmeetings .body .columns {
    border-top: 1px solid #2b2b2b;
    border-top: 1px solid var(--darkest);
    padding: 1.667vw 0 10vw
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations .body .columns,
    .component--holder .content .generalmeetings .body .columns {
        flex-direction: column;
        padding: min(2.5vw, 9.9225px) 0 min(20vw, 79.38px)
    }
}

.component--holder .content .docsregulations .body .columns .item:first-child,
.component--holder .content .generalmeetings .body .columns .item:first-child {
    width: 10vw
}

.component--holder .content .docsregulations .body .columns .item:last-child,
.component--holder .content .generalmeetings .body .columns .item:last-child {
    width: 48.333vw
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations .body .columns .item:last-child,
    .component--holder .content .generalmeetings .body .columns .item:last-child {
        margin-top: min(12.5vw, .516796875in);
        width: 100%
    }
}

.component--holder .content .docsregulations .body .columns .item:last-child .row,
.component--holder .content .generalmeetings .body .columns .item:last-child .row {
    display: flex;
    gap: 5vw;
    position: relative
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations .body .columns .item:last-child .row,
    .component--holder .content .generalmeetings .body .columns .item:last-child .row {
        flex-direction: column;
        gap: 0
    }
}

.component--holder .content .docsregulations .body .columns .item:last-child .row:first-child,
.component--holder .content .generalmeetings .body .columns .item:last-child .row:first-child {
    padding-bottom: 2.5vw
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations .body .columns .item:last-child .row:first-child,
    .component--holder .content .generalmeetings .body .columns .item:last-child .row:first-child {
        padding-bottom: min(7.5vw, 29.767500000000002px)
    }
}

.component--holder .content .docsregulations .body .columns .item:last-child .row:not(:first-child),
.component--holder .content .generalmeetings .body .columns .item:last-child .row:not(:first-child) {
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    padding-bottom: 2.5vw;
    padding-top: 2.5vw
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations .body .columns .item:last-child .row:not(:first-child),
    .component--holder .content .generalmeetings .body .columns .item:last-child .row:not(:first-child) {
        padding-bottom: min(7.5vw, 29.767500000000002px);
        padding-top: min(7.5vw, 29.767500000000002px)
    }
}

.component--holder .content .docsregulations .body .columns .item:last-child .row .title.--xlarge,
.component--holder .content .generalmeetings .body .columns .item:last-child .row .title.--xlarge {
    line-height: .8;
    width: 15vw
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations .body .columns .item:last-child .row .title.--xlarge,
    .component--holder .content .generalmeetings .body .columns .item:last-child .row .title.--xlarge {
        width: 100%
    }
}

.component--holder .content .docsregulations .body .columns .item:last-child .row .documents,
.component--holder .content .generalmeetings .body .columns .item:last-child .row .documents {
    display: flex;
    flex-direction: column;
    gap: .833vw;
    position: relative;
    width: 33.333vw
}

@media (max-width:1100px) {

    .component--holder .content .docsregulations .body .columns .item:last-child .row .documents,
    .component--holder .content .generalmeetings .body .columns .item:last-child .row .documents {
        gap: min(2.5vw, 9.9225px);
        margin-top: min(5vw, 19.845px);
        width: 100%
    }
}

.component--holder .content .docsregulations .body .columns .item:last-child .row .documents .text .underline,
.component--holder .content .generalmeetings .body .columns .item:last-child .row .documents .text .underline {
    display: none
}

@media (max-width:1100px) {
    .component--holder .content .generalmeetings {
        padding-top: min(10vw, 39.69px)
    }
}

.component--holder .content .docsregulations {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    padding: 10vw 1.667vw 3.333vw 35vw
}

@media (max-width:1100px) {
    .component--holder .content .docsregulations {
        padding: min(20vw, 79.38px) min(5vw, 19.845px) 0;
        width: 100%
    }
}

@media (max-width:1100px) {
    .component--holder .content .docsregulations .body .columns {
        padding: min(2.5vw, 9.9225px) 0 min(10vw, 39.69px)
    }
}

.component--holder .content[\:has\(\.docsregulations\:only-child\)] {
    background-color: #f7f7f7;
    background-color: var(--lightest)
}

.component--holder .content:has(.docsregulations:only-child) {
    background-color: #f7f7f7;
    background-color: var(--lightest)
}

@media (max-width:1100px) {
    .component--holder .content[\:has\(\.docsregulations\:only-child\)] .docsregulations {
        padding: 0 min(5vw, 19.845px);
        width: 100%
    }
}

.component--holder .content[\:has\(\.docsregulations\:only-child\)] .docsregulations {
    padding: 0 1.667vw 3.333vw 35vw
}

.component--holder .content:has(.docsregulations:only-child) .docsregulations {
    padding: 0 1.667vw 3.333vw 35vw
}

@media (max-width:1100px) {
    .component--holder .content[\:has\(\.docsregulations\:only-child\)] .docsregulations {
        padding: 0 min(5vw, 19.845px);
        width: 100%
    }

    .component--holder .content:has(.docsregulations:only-child) .docsregulations {
        padding: 0 min(5vw, 19.845px);
        width: 100%
    }
}

.component--holder .back {
    position: absolute;
    right: 1.667vw;
    top: 1.667vw;
    width: auto
}

@media (max-width:1100px) {
    .component--holder .back {
        right: min(5vw, 19.845px);
        top: min(5vw, 19.845px)
    }
}

.component--holderarchive {
    background-color: #f2f2f2;
    background-color: var(--lighter);
    padding: 0 0 .833vw
}

@media (max-width:1100px) {
    .component--holderarchive {
        padding: 0 0 min(6.111vw, .25265625in)
    }
}

.component--holderarchive .columns {
    flex-wrap: wrap;
    gap: .396vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--holderarchive .columns {
        flex-direction: column;
        gap: min(2.5vw, 9.9225px)
    }
}

@media (max-width:1100px) {
    .component--holderarchive .columns .item {
        height: min(33.333vw, 132.3px);
        width: 100%
    }
}

.component--insights {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    padding: 10vw 0 5vw
}

@media (max-width:1100px) {
    .component--insights {
        padding: min(25vw, 1.03359375in) 0 min(20vw, 79.38px)
    }
}

.component--insights .text-block-left {
    margin-left: 49.583vw
}

@media (max-width:1100px) {
    .component--insights .text-block-left {
        margin-left: auto;
        margin-right: min(7.5vw, 29.767500000000002px);
        padding: 0;
        width: min(60vw, 238.14000000000001px)
    }
}

.component--insights .top {
    margin-top: 7.5vw
}

@media (max-width:1100px) {
    .component--insights .top {
        margin-top: min(20vw, 79.38px)
    }
}

.component--insights .top .title {
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--insights .top .title {
        margin-bottom: min(5vw, 19.845px)
    }
}

.component--insights .top .columns {
    gap: .417vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--insights .top .columns {
        flex-direction: column;
        gap: min(12.5vw, .516796875in)
    }
}

@media (max-width:1100px) {
    .component--insights .top .columns .item:last-child .columns {
        gap: min(7.5vw, 29.767500000000002px)
    }
}

.component--insights .top .card-podcast.--xlarge {
    height: 39.1vw
}

@media (max-width:1100px) {
    .component--insights .top .card-podcast.--xlarge {
        height: min(94.444vw, 374.85px)
    }
}

.component--insights .bottom {
    margin-top: 5vw;
    width: 100%
}

@media (max-width:1100px) {
    .component--insights .bottom {
        margin-top: min(12.5vw, .516796875in)
    }
}

.component--insights .bottom .title {
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--insights .bottom .title {
        margin-bottom: min(5vw, 19.845px)
    }
}

.component--insights .bottom .card-media .top {
    margin-top: 0
}

@media (max-width:1100px) {
    .component--insights .draggable .inner {
        gap: min(2.5vw, 9.9225px)
    }
}

.component--map {
    background-color: #fff;
    background-color: var(--white);
    padding: 20vw 0 10vw
}

@media (max-width:1100px) {
    .component--map {
        padding: min(25vw, 1.03359375in) 0 min(20vw, 79.38px)
    }
}

.component--map .waves {
    height: 41.792vw;
    position: absolute;
    right: 0;
    top: -20vw;
    width: 100%
}

.component--map .waves svg {
    height: 100%;
    width: 100%
}

@media (max-width:1100px) {
    .component--map .text-block-center {
        width: min(80vw, 317.52px)
    }
}

@media (max-width:1100px) {
    .component--map .text-block-center .label {
        margin-bottom: min(7.5vw, 29.767500000000002px)
    }
}

.component--map .circle-container {
    height: 39.583vw;
    margin: auto;
    overflow: hidden;
    padding-top: 12.5vw;
    position: relative;
    width: 100vw
}

@media (max-width:1100px) {
    .component--map .circle-container {
        height: min(100vw, 4.134375in);
        padding-top: min(30vw, 89.30250000000001pt);
        width: 100vw
    }
}

.component--map .gradient {
    background: linear-gradient(-90deg, hsla(0, 0%, 100%, 0) 29.56%, #fff 58.5%);
    background: -webkit-linear-gradient(-90deg, hsla(0, 0%, 100%, 0) 29.56%, #fff 58.5%);
    bottom: -20.417vw;
    height: 49.167vw;
    top: auto;
    transform: translateZ(2px);
    width: 100vw
}

@media (max-width:1100px) {
    .component--map .gradient {
        bottom: min(25vw, 1.03359375in);
        height: min(27.778vw, 110.25px);
        width: 100%
    }
}

.component--map .circle {
    height: 90vw;
    margin: auto;
    position: relative;
    width: 90vw
}

@media (max-width:1100px) {
    .component--map .circle {
        height: min(194.444vw, 771.75px);
        left: 50%;
        transform: translateX(-50%);
        width: min(194.444vw, 771.75px)
    }
}

.component--map .circle-item {
    left: 50%;
    position: absolute;
    top: 50%;
    transform-origin: 0 0;
    width: 10vw
}

@media (max-width:1100px) {
    .component--map .circle-item {
        width: min(25vw, 1.03359375in)
    }
}

.component--map .circle .group {
    text-align: center
}

.component--map .circle .group .name {
    margin-top: 1.667vw;
    white-space: nowrap
}

@media (max-width:1100px) {
    .component--map .circle .group .name {
        margin-top: min(2.5vw, 9.9225px)
    }
}

.component--map .wysiwyg.--xlarge {
    left: 50%;
    position: absolute;
    text-align: center;
    top: 31.25vw;
    transform: translateX(-50%);
    width: 35vw
}

@media (max-width:1100px) {
    .component--map .wysiwyg.--xlarge {
        top: min(64.722vw, 256.8825px);
        width: min(75vw, 297.675px)
    }
}

.component--map .map {
    height: 46.667vw;
    margin: auto;
    position: relative;
    width: 100vw
}

@media (max-width:1100px) {
    .component--map .map {
        height: min(150vw, 595.35px);
        width: 100vw
    }
}

.component--map .map svg {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

@media (max-width:1100px) {
    .component--map .map svg {
        height: 105%;
        width: 100%
    }
}

.component--map .map svg .office-group {
    opacity: .0001
}

@media (max-width:1100px) {
    .component--map .map svg g {
        filter: none !important
    }
}

.component--map .map .locations {
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.component--map .map .locations .location {
    position: absolute
}

.component--map .map .locations .location .dot {
    background-color: #e41613;
    background-color: var(--main);
    border-radius: 50%;
    cursor: pointer;
    height: .833vw;
    position: relative;
    width: .833vw
}

@media (max-width:1100px) {
    .component--map .map .locations .location .dot {
        height: min(2.778vw, 11.025px);
        width: min(2.778vw, 11.025px)
    }
}

.component--map .map .locations .location .dot span {
    animation: pulse-animation 2s infinite;
    background-color: #e41613;
    background-color: var(--main);
    border-radius: 50%;
    height: 2.5vw;
    left: 50%;
    mix-blend-mode: darken;
    opacity: .0001;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%) scale(1);
    transition: all .6s cubic-bezier(.5, 1, .89, 1);
    transition: all .6s var(--p2Out);
    width: 2.5vw
}

@media (max-width:1100px) {
    .component--map .map .locations .location .dot span {
        height: min(10vw, 39.69px);
        width: min(10vw, 39.69px)
    }
}

.component--map .map .locations .location .tooltip {
    background-color: #fff;
    background-color: var(--white);
    border: 1px solid #e5e5e5;
    border-radius: .417vw;
    border-radius: var(--radius);
    box-shadow: 0 2.208vw .833vw -1.667vw rgba(0, 0, 0, .02);
    opacity: .0001;
    padding: 1.667vw;
    pointer-events: none;
    position: absolute;
    top: -7.5vw;
    transform: translateY(10%);
    transition: all .6s cubic-bezier(.5, 1, .89, 1);
    transition: all .6s var(--p2Out);
    width: 13.333vw
}

.component--map .map .locations .location .tooltip-0 {
    left: -17.5vw
}

.component--map .map .locations .location .tooltip-1 {
    left: -15.833vw
}

.component--map .map .locations .location .tooltip-2 {
    left: 50%;
    top: -10vw;
    transform: translateX(-50%) translateY(10%)
}

@media (max-width:1100px) {
    .component--map .map .locations .location .tooltip {
        border-radius: min(2.222vw, 8.82px);
        left: 50%;
        padding: min(5vw, 19.845px);
        top: max(-40vw, -158.76px);
        transform: translateX(-50%) translateY(20%);
        width: min(50vw, 2.0671875in)
    }

    .component--map .map .locations .location .tooltip-1 {
        bottom: max(-37.222vw, -147.735px);
        top: auto
    }

    .component--map .map .locations .location .tooltip-2 {
        top: max(-45.556vw, -180.81px)
    }
}

.component--map .map .locations .location .tooltip .title {
    margin-bottom: .667vw
}

@media (max-width:1100px) {
    .component--map .map .locations .location .tooltip .title {
        margin-bottom: min(2.222vw, 8.82px)
    }
}

.component--map .map .locations .location.--showing .tooltip {
    opacity: 1;
    pointer-events: all;
    transform: translateY(0);
    z-index: 2
}

@media (max-width:1100px) {
    .component--map .map .locations .location.--showing .tooltip {
        transform: translateX(-50%) translateY(0)
    }
}

.component--map .map .locations .location.--showing .tooltip-2 {
    transform: translateX(-50%) translateY(0)
}

.component--map .map .locations .location.--showing .dot span {
    opacity: .2
}

@media (min-width:1101px) {
    .component--map .map .locations .location:hover .dot span {
        opacity: .2
    }
}

@keyframes pulse-animation {
    0% {
        opacity: 1;
        transform: translate(-50%, -50%) scale(0)
    }

    to {
        opacity: .0001;
        transform: translate(-50%, -50%) scale(1)
    }
}

.component--mediaarchive {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    padding: 1.667vw 0 5vw
}

@media (max-width:1100px) {
    .component--mediaarchive {
        padding: min(5vw, 19.845px) 0 min(10vw, 39.69px)
    }
}

.component--mediaarchive .columns {
    flex-wrap: wrap;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--mediaarchive .columns .item {
        aspect-ratio: 1;
        height: auto;
        width: 50%
    }
}

.component--mediaarchive .link {
    display: table;
    margin: 5vw auto 0
}

@media (max-width:1100px) {
    .component--mediaarchive .link {
        margin: min(10vw, 39.69px) auto 0
    }
}

.component--medias {
    padding: 0
}

.component--medias .container {
    border-top: 1px solid #e5e5e5;
    border-top: 1px solid var(--light);
    padding: 3.75vw 0 5vw
}

@media (max-width:1100px) {
    .component--medias .container {
        padding: min(10.278vw, 40.792500000000004px) 0
    }
}

@media (max-width:1100px) {
    .component--medias .columns {
        align-items: center;
        margin-bottom: min(2.5vw, 9.9225px)
    }
}

.component--medias .title {
    line-height: .8;
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--medias .title {
        margin-bottom: 0
    }
}

@media (max-width:1100px) {
    .component--medias .draggable .inner {
        gap: min(2.5vw, 9.9225px)
    }
}

.component--page {
    padding: 13.333vw 0 10vw !important
}

@media (max-width:600px) and (orientation:portrait) {
    .component--page {
        padding: min(30vw, 89.30250000000001pt) 0 min(16.944vw, 67.2525px) !important
    }
}

.component--page .title {
    color: var(--color-primary);
    margin-bottom: 10vw
}

@media (max-width:600px) and (orientation:portrait) {
    .component--page .title {
        margin-bottom: min(15vw, .6201562500000001in)
    }
}

.component--page .title strong {
    color: var(--color-primary)
}

.component--podcast {
    padding: 0
}

@media (max-width:1100px) {
    .component--podcast .container.--slarge {
        width: calc(100% - min(10vw, 39.69px))
    }
}

.component--podcast .hero {
    padding-top: 20vw;
    position: relative
}

@media (max-width:1100px) {
    .component--podcast .hero {
        padding-top: min(41.667vw, 165.375px)
    }
}

.component--podcast .hero .columns {
    flex-direction: column;
    gap: 3.75vw
}

@media (max-width:1100px) {
    .component--podcast .hero .columns {
        gap: min(10vw, 39.69px)
    }
}

.component--podcast .hero .columns .item:first-child {
    width: 43.333vw
}

@media (max-width:1100px) {
    .component--podcast .hero .columns .item:first-child {
        padding-right: min(12.5vw, .516796875in);
        width: 100%
    }
}

.component--podcast .hero .columns .item:first-child .tag {
    margin-bottom: 2.083vw
}

@media (max-width:1100px) {
    .component--podcast .hero .columns .item:first-child .tag {
        margin-bottom: min(7.5vw, 29.767500000000002px)
    }
}

.component--podcast .hero .columns .item:last-child {
    display: flex;
    justify-content: space-between;
    width: 100%
}

.component--podcast .hero .columns .item:last-child .date,
.component--podcast .hero .columns .item:last-child .duration {
    color: #aaa;
    color: var(--dark)
}

.component--podcast .hero .media {
    height: 45vw;
    margin-top: 1.667vw;
    overflow: hidden;
    position: relative;
    width: 100%
}

@media (max-width:1100px) {
    .component--podcast .hero .media {
        height: min(61.111vw, 242.55px);
        margin-top: min(2.5vw, 9.9225px)
    }
}

.component--podcast .hero .media .image {
    height: 100%
}

.component--podcast .hero .media .video-player {
    backdrop-filter: blur(1.5px);
    background-color: rgba(0, 0, 0, .302);
    border-radius: .417vw;
    border-radius: var(--radius);
    color: #fff;
    color: var(--white);
    height: 10vw;
    left: 1.667vw;
    padding: .833vw;
    position: absolute;
    top: 1.667vw;
    width: 28.333vw
}

@media (max-width:1100px) {
    .component--podcast .hero .media .video-player {
        backdrop-filter: none;
        background-color: hsla(0, 0%, 100%, .2);
        border-radius: 0;
        bottom: auto;
        height: min(16.667vw, 66.15px);
        left: 50%;
        padding: 0;
        top: 50%;
        transform: translate(-50%, -50%);
        width: min(16.667vw, 66.15px)
    }
}

.component--podcast .hero .media .video-player .flex {
    gap: 1.25vw
}

.component--podcast .hero .media .video-player .video {
    border-radius: .417vw;
    border-radius: var(--radius);
    height: 8.333vw;
    width: 11.667vw
}

.component--podcast .hero .media .video-player .group {
    display: flex;
    flex-direction: column;
    height: 8.333vw;
    justify-content: space-between;
    width: 13.333vw
}

@media (max-width:1100px) {
    .component--podcast .hero .media .video-player .group {
        height: min(16.667vw, 66.15px);
        width: min(16.667vw, 66.15px)
    }
}

.component--podcast .hero .media .video-player .group .player {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: .417vw
}

.component--podcast .hero .media .video-player .group .player .icon {
    background-color: hsla(0, 0%, 100%, .2);
    border: 1px solid transparent
}

@media (max-width:1100px) {
    .component--podcast .hero .media .video-player .group .player .icon {
        height: min(16.667vw, 66.15px);
        width: min(16.667vw, 66.15px)
    }
}

.component--podcast .hero .media .video-player .group .player .icon span {
    background: #fff;
    background: var(--white)
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .component--podcast .hero .media .video-player .group .player .icon span {
        background: #fff;
        background: var(--white)
    }
}

.component--podcast .hero .media .audio-container {
    left: 1.667vw;
    position: absolute;
    top: 1.667vw;
    width: 30vw
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container {
        bottom: 0;
        left: 0;
        top: auto;
        width: 100%
    }
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container>.wysiwyg {
        display: none
    }
}

.component--podcast .hero .media .audio-container .audio-player {
    align-items: center;
    backdrop-filter: blur(1.5px);
    background-color: rgba(0, 0, 0, .302);
    border-radius: .417vw;
    border-radius: var(--radius);
    color: #fff;
    color: var(--white);
    display: flex;
    gap: 1.667vw;
    height: 5vw;
    justify-content: space-between;
    margin-top: .833vw;
    padding: 1.25vw 2.083vw 1.25vw 1.25vw;
    position: relative;
    width: 30vw
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container .audio-player {
        backdrop-filter: none;
        bottom: 0;
        gap: min(3.333vw, 13.23px);
        height: min(16.667vw, 66.15px);
        left: 0;
        padding: min(3.333vw, 13.23px);
        width: 100%
    }
}

.component--podcast .hero .media .audio-container .audio-player .flex {
    gap: 1.25vw
}

.component--podcast .hero .media .audio-container .audio-player .player-group {
    align-items: center;
    display: flex;
    gap: .833vw;
    position: relative
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container .audio-player .player-group {
        gap: min(2.5vw, 9.9225px)
    }
}

.component--podcast .hero .media .audio-container .audio-player .player-group .player:hover .icon {
    background-color: hsla(0, 0%, 100%, .4)
}

.component--podcast .hero .media .audio-container .audio-player .player-group .player .icon {
    background-color: hsla(0, 0%, 100%, .2);
    border: 1px solid transparent
}

.component--podcast .hero .media .audio-container .audio-player .player-group .player .icon span {
    background: #fff;
    background: var(--white)
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .component--podcast .hero .media .audio-container .audio-player .player-group .player .icon span {
        background: #fff;
        background: var(--white)
    }
}

.component--podcast .hero .media .audio-container .audio-player .player-group .player .icon.--pause {
    opacity: .0001;
    position: absolute;
    top: 0
}

.component--podcast .hero .media .audio-container .audio-player .player-group .wysiwyg {
    cursor: pointer
}

.component--podcast .hero .media .audio-container .audio-player .progress-group {
    align-items: center;
    display: flex;
    position: relative;
    width: 10.708vw
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container .audio-player .progress-group {
        width: min(35vw, 138.915px)
    }
}

.component--podcast .hero .media .audio-container .audio-player .progress-group .progress {
    background: hsla(0, 0%, 100%, .4);
    border-radius: .417vw;
    height: .417vw;
    overflow: hidden;
    position: relative;
    width: 10.708vw
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container .audio-player .progress-group .progress {
        border-radius: min(27.5vw, 1.136953125in);
        height: min(1.667vw, 6.615px);
        width: 100%
    }
}

.component--podcast .hero .media .audio-container .audio-player .progress-group .bar {
    background: #fff;
    background: var(--white);
    border-radius: .417vw;
    height: .417vw;
    left: 0;
    position: absolute;
    top: 0;
    transform-origin: left;
    width: 0
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container .audio-player .progress-group .bar {
        border-radius: min(27.5vw, 1.136953125in);
        height: min(1.667vw, 6.615px);
        transform: scaleX(1)
    }
}

.component--podcast .hero .media .audio-container .audio-player .info-group {
    align-items: center;
    display: flex;
    height: 2.5vw;
    position: relative;
    width: 10.708vw
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container .audio-player .info-group {
        font-size: min(3.056vw, .126328125in);
        width: min(30.278vw, 120.1725px)
    }
}

.component--podcast .hero .media .audio-container .audio-player .info-group .current-time {
    margin-right: .167vw
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container .audio-player .info-group .current-time {
        margin-right: min(1.111vw, 4.41px)
    }
}

.component--podcast .hero .media .audio-container .audio-player .info-group .total-time {
    margin-left: .167vw
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container .audio-player .info-group .total-time {
        margin-left: min(1.111vw, 4.41px)
    }
}

.component--podcast .hero .media .audio-container .audio-player .info-group .icon {
    border: 0;
    margin-left: 1.25vw;
    position: absolute;
    right: 0;
    top: 0
}

@media (max-width:1100px) {
    .component--podcast .hero .media .audio-container .audio-player .info-group .icon {
        height: min(4.444vw, 17.64px);
        margin-left: min(3.333vw, 13.23px);
        top: max(-1.389vw, -5.5125px);
        width: min(4.444vw, 17.64px)
    }
}

.component--podcast .content {
    padding: 5vw 0 13.333vw;
    position: relative
}

@media (max-width:1100px) {
    .component--podcast .content {
        padding: min(7.5vw, 29.767500000000002px) 0
    }
}

.component--podcast .content .columns {
    gap: 30vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--podcast .content .columns {
        flex-direction: column;
        gap: min(10vw, 39.69px)
    }
}

@media (max-width:1100px) {
    .component--podcast .content .columns .item {
        width: 100% !important
    }
}

.component--podcast .content .columns .item:first-child {
    width: 20vw
}

.component--podcast .content .columns .item:first-child .sidebar {
    display: flex;
    flex-direction: column;
    gap: 3.333vw;
    padding: 0 1.667vw 1.667vw;
    position: sticky;
    top: 1.667vw
}

@media (max-width:1100px) {
    .component--podcast .content .columns .item:first-child .sidebar {
        gap: min(10vw, 39.69px);
        margin: 0 auto;
        padding-right: min(12.222vw, .5053125in);
        top: 0;
        width: calc(100% - min(10vw, 39.69px))
    }
}

.component--podcast .content .columns .item:first-child .sidebar .group .label {
    padding-bottom: .417vw
}

@media (max-width:1100px) {
    .component--podcast .content .columns .item:first-child .sidebar .group .label {
        padding-bottom: min(2.5vw, 9.9225px)
    }
}

.component--podcast .content .columns .item:first-child .sidebar .group ul {
    margin-top: 0
}

.component--podcast .content .columns .item:first-child .sidebar .group:last-child .label {
    margin-bottom: .417vw
}

@media (max-width:1100px) {
    .component--podcast .content .columns .item:first-child .sidebar .group:last-child .label {
        margin-bottom: 0
    }
}

@media (max-width:1100px) {
    .component--podcast .content .columns .item:first-child .sidebar .group:last-child ul {
        gap: min(5vw, 19.845px);
        padding-left: min(5vw, 19.845px)
    }
}

@media (max-width:1100px) {
    .component--podcast .content .columns .item:first-child .sidebar .group:last-child ul li {
        margin-bottom: 0
    }
}

.component--podcast .content .columns .item:first-child .sidebar .group .wysiwyg {
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    padding-top: 1.25vw
}

@media (max-width:1100px) {
    .component--podcast .content .columns .item:first-child .sidebar .group .wysiwyg {
        padding-top: min(5vw, 19.845px)
    }
}

.component--podcast .content .columns .item:last-child {
    width: 40vw
}

.component--podcast .content .columns .item:last-child .subcomponents {
    display: flex;
    flex-direction: column;
    gap: 6.667vw
}

@media (max-width:1100px) {
    .component--podcast .content .columns .item:last-child .subcomponents {
        gap: min(17.778vw, 4.41pc)
    }
}

@media (max-width:1100px) {
    .component--podcast .content .columns .item:last-child .--share {
        align-items: center;
        display: flex;
        flex-direction: row;
        gap: min(5vw, 19.845px);
        justify-content: flex-start;
        margin: min(10vw, 39.69px) auto min(12.5vw, .516796875in);
        width: calc(100% - min(10vw, 39.69px))
    }
}

.component--podcast .related {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    color: #fff;
    color: var(--white);
    padding: 10vw 0;
    position: relative
}

.component--podcast .related .text-group {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.component--podcast .related .text-group .icon span {
    background: #fff;
    background: var(--white)
}

.component--podcast .related .title.--bold {
    line-height: .8;
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--podcast .related .title.--bold {
        margin-bottom: 0
    }
}

.component--podcast .related .tag {
    background-color: hsla(0, 0%, 100%, .1)
}

.component--podcast .related .tag span {
    background: #fff;
    background: var(--white)
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .component--podcast .related .tag span {
        background: #fff;
        background: var(--white)
    }
}

@media (min-width:1101px) {
    .component--podcast .related .card-podcast:hover .image {
        filter: grayscale(0)
    }

    .component--podcast .related .card-podcast:hover .image img {
        transform: scale(1.1)
    }

    .component--podcast .related .card-podcast:hover .group .flex .tag {
        background: hsla(0, 0%, 100%, .2)
    }

    .component--podcast .related .card-podcast:hover .group .flex .duration {
        color: #fff;
        color: var(--white)
    }
}

@media (max-width:1100px) {
    .component--podcast .related .draggable {
        margin-top: min(2.5vw, 9.9225px)
    }
}

@media (max-width:1100px) {
    .component--podcast .related .draggable .inner {
        gap: min(2.5vw, 9.9225px)
    }
}

.component--podcast .modal .closer,
.component--podcast .modal .mask {
    opacity: .0001
}

.component--podcast .modal .video {
    opacity: .0001;
    pointer-events: none;
    width: 60vw
}

@media (max-width:1100px) {
    .component--podcast .modal .video {
        width: calc(100% - min(10vw, 39.69px))
    }
}

.component--podcastarchive {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    padding: 0
}

.component--podcastarchive .featured {
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    padding: 3.75vw 0 10vw
}

@media (max-width:1100px) {
    .component--podcastarchive .featured {
        padding: min(10vw, 39.69px) 0 min(20vw, 79.38px)
    }
}

.component--podcastarchive .featured .title {
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--podcastarchive .featured .title {
        margin-bottom: min(2.5vw, 9.9225px)
    }
}

.component--podcastarchive .featured .columns {
    gap: .417vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--podcastarchive .featured .columns {
        flex-direction: column;
        gap: min(2.5vw, 9.9225px)
    }
}

.component--podcastarchive .latest {
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    padding: 3.75vw 0 10vw
}

@media (max-width:1100px) {
    .component--podcastarchive .latest {
        padding: min(10.278vw, 40.792500000000004px) 0 min(20.833vw, 82.6875px)
    }
}

.component--podcastarchive .latest .title {
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--podcastarchive .latest .title {
        margin-bottom: min(2.5vw, 9.9225px)
    }
}

.component--podcastarchive .latest .columns {
    flex-wrap: wrap;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--podcastarchive .latest .columns {
        flex-direction: column;
        flex-wrap: nowrap
    }
}

@media (max-width:1100px) {
    .component--podcastarchive .latest .draggable .inner {
        gap: min(2.5vw, 9.9225px)
    }
}

.component--podcastarchive .latest .link {
    display: table
}

@media (max-width:1100px) {
    .component--podcastarchive .latest .link {
        margin-top: min(10vw, 39.69px)
    }
}

.component--podcastarchive .latest.--video .columns {
    gap: 5vw .417vw
}

@media (max-width:1100px) {
    .component--podcastarchive .latest.--video .columns {
        gap: min(5vw, 19.845px)
    }
}

.component--podcastarchive .latest.--video .link {
    margin: 5vw auto 0
}

@media (max-width:1100px) {
    .component--podcastarchive .latest.--video .link {
        margin: min(10vw, 39.69px) auto 0
    }
}

@media (max-width:1100px) {
    .component--podcastarchive .latest.--audio .title {
        margin-bottom: min(7.5vw, 29.767500000000002px)
    }
}

.component--podcastarchive .latest.--audio .columns {
    gap: 3.75vw 13.333vw
}

@media (max-width:1100px) {
    .component--podcastarchive .latest.--audio .columns {
        gap: min(5vw, 19.845px)
    }
}

@media (max-width:1100px) {
    .component--podcastarchive .latest.--audio .draggable .pair-group {
        display: flex;
        flex-direction: column;
        gap: min(5vw, 19.845px)
    }
}

.component--podcastarchive .latest.--audio .link {
    margin: 3.75vw auto 0
}

@media (max-width:1100px) {
    .component--podcastarchive .latest.--audio .link {
        margin: min(10vw, 39.69px) auto 0
    }
}

.component--podcasts {
    padding: 0
}

.component--podcasts .container {
    border-top: 1px solid #e5e5e5;
    border-top: 1px solid var(--light);
    padding: 3.75vw 0 10vw
}

@media (max-width:1100px) {
    .component--podcasts .container {
        padding: min(10.278vw, 40.792500000000004px) 0 min(20vw, 79.38px)
    }
}

.component--podcasts .title.--bold {
    line-height: .8;
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--podcasts .title.--bold {
        margin-bottom: 0
    }
}

@media (max-width:1100px) {
    .component--podcasts .columns:first-child {
        align-items: center;
        margin-bottom: min(2.5vw, 9.9225px)
    }
}

@media (max-width:1100px) {
    .component--podcasts .columns:last-child {
        flex-direction: column;
        gap: min(2.5vw, 9.9225px)
    }
}

@media (max-width:1100px) {
    .component--podcasts .columns:last-child .inner {
        gap: min(2.5vw, 9.9225px)
    }
}

.component--portfolio {
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100);
    padding: 0
}

@media (max-width:1100px) {
    .component--portfolio {
        height: 100dvh
    }
}

.component--portfolio .mask {
    opacity: .7;
    pointer-events: initial
}

.component--portfolio .content {
    background-color: #f2f2f2;
    background-color: var(--lighter);
    height: 100%;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    width: 100vw
}

@media (max-width:1100px) {
    .component--portfolio .content {
        margin-left: auto;
        margin-right: 0;
        position: relative
    }
}

@media (max-width:1100px) {
    .component--portfolio .content .columns {
        flex-direction: column
    }
}

.component--portfolio .content .columns .item:first-child {
    width: 55vw
}

@media (max-width:1100px) {
    .component--portfolio .content .columns .item:first-child {
        width: min(60vw, 238.14000000000001px)
    }
}

.component--portfolio .content .columns .item:first-child .image {
    height: 100vh;
    height: calc(1vh * 100);
    height: calc(var(--vh, 1vh) * 100)
}

@media (max-width:1100px) {
    .component--portfolio .content .columns .item:first-child .image {
        height: min(64.722vw, 256.8825px)
    }
}

.component--portfolio .content .columns .item:last-child {
    padding: 5vw 15vw 5vw 5vw;
    width: 45vw
}

@media (max-width:1100px) {
    .component--portfolio .content .columns .item:last-child {
        padding: min(7.5vw, 29.767500000000002px) min(17.778vw, 4.41pc) min(10vw, 39.69px) min(5vw, 19.845px);
        width: 100%
    }
}

.component--portfolio .content .columns .item:last-child .wysiwyg.--xlarge {
    margin-top: 1.25vw;
    width: 15vw
}

@media (max-width:1100px) {
    .component--portfolio .content .columns .item:last-child .wysiwyg.--xlarge {
        margin-top: min(2.5vw, 9.9225px);
        width: 100%
    }
}

.component--portfolio .content .columns .item:last-child .categories {
    margin: 4.5vw 0;
    position: relative
}

@media (max-width:1100px) {
    .component--portfolio .content .columns .item:last-child .categories {
        display: flex;
        flex-direction: column;
        gap: min(2.5vw, 9.9225px);
        margin: min(7.5vw, 29.767500000000002px) 0
    }
}

.component--portfolio .content .columns .item:last-child .categories .flex {
    align-items: flex-end;
    border-bottom: 1px solid #d5d5d5;
    border-bottom: 1px solid var(--medium);
    justify-content: space-between;
    padding: .833vw 0
}

@media (max-width:1100px) {
    .component--portfolio .content .columns .item:last-child .categories .flex {
        padding: 0 0 min(.833vw, 3.3075px)
    }
}

.component--portfolio .content .columns .item:last-child .categories .flex .wysiwyg.--bold {
    text-align: right
}

.component--portfolio .content .columns .item:last-child .link {
    margin-top: 2.5vw
}

@media (max-width:1100px) {
    .component--portfolio .content .columns .item:last-child .link {
        margin-top: min(5vw, 19.845px)
    }
}

.component--portfolio .back {
    position: absolute;
    right: 1.667vw;
    top: 1.667vw;
    width: auto
}

@media (max-width:1100px) {
    .component--portfolio .back {
        right: min(5vw, 19.845px);
        top: min(5vw, 19.845px)
    }
}

.component--portfolioarchive {
    padding: 1.667vw 0 10vw
}

@media (max-width:1100px) {
    .component--portfolioarchive {
        padding: min(7.5vw, 29.767500000000002px) 0
    }
}

.component--portfolioarchive .label {
    color: #2b2b2b;
    color: var(--darkest);
    font-weight: 400;
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--portfolioarchive .label {
        margin-bottom: min(2.5vw, 9.9225px)
    }
}

.component--portfolioarchive .columns {
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: 2.5vw
}

@media (max-width:1100px) {
    .component--portfolioarchive .columns {
        margin-top: min(5vw, 19.845px)
    }
}

@media (max-width:1100px) {
    .component--portfolioarchive .columns .item {
        width: 50%
    }
}

.component--portfolioarchive .title.--medium {
    margin: 10vw auto 0;
    text-align: center
}

@media (max-width:1100px) {
    .component--portfolioarchive .title.--medium {
        margin: min(20vw, 79.38px) auto 0
    }
}

.component--portfolios {
    padding: 16.667vw 0 10vw
}

.component--portfolios .waves {
    height: 40.833vw;
    left: 0;
    position: absolute;
    top: -16.667vw;
    width: 100%
}

.component--portfolios .waves svg {
    height: 100%;
    width: 100%
}

@media (max-width:1100px) {
    .component--portfolios .container {
        width: calc(100% - min(2.5vw, 9.9225px))
    }
}

@media (max-width:1100px) {
    .component--portfolios .text-block-center {
        margin: 0 min(5vw, 19.845px);
        width: auto
    }
}

.component--portfolios .carousel {
    height: 18.333vw;
    left: -10vw;
    margin-top: 7.5vw;
    width: 120vw
}

@media (max-width:1100px) {
    .component--portfolios .carousel {
        height: min(43.056vw, 170.88750000000002px);
        margin-top: min(12.5vw, .516796875in)
    }
}

.component--portfolios .carousel .inner {
    gap: .2vw;
}

@media (max-width:1100px) {
    .component--portfolios .carousel .inner {
        gap: min(.4vw, 2px);
    }
}

.component--portfolios .carousel .dots {
    bottom: -7.5vw;
    left: 50%;
    position: absolute;
    transform: translateX(-50%)
}

.component--portfolios .carousel.--not-enabled .inner {
    justify-content: center;
    min-width: 100%
}

.component--portfolios .carousel.--not-enabled .inner .item {
    position: relative
}

.component--press {
    padding: 0
}

@media (max-width:1100px) {
    .component--press .container.--slarge {
        width: calc(100% - min(10vw, 39.69px))
    }
}

.component--press .hero {
    padding-top: 20vw;
    position: relative
}

@media (max-width:1100px) {
    .component--press .hero {
        padding-top: min(41.667vw, 165.375px)
    }
}

.component--press .hero .columns {
    flex-direction: column;
    gap: 3.75vw
}

@media (max-width:1100px) {
    .component--press .hero .columns {
        gap: min(10vw, 39.69px)
    }
}

.component--press .hero .columns .item:first-child {
    width: 43.333vw
}

@media (max-width:1100px) {
    .component--press .hero .columns .item:first-child {
        padding-right: min(12.5vw, .516796875in);
        width: 100%
    }
}

.component--press .hero .columns .item:first-child .tag {
    margin-bottom: 2.083vw
}

@media (max-width:1100px) {
    .component--press .hero .columns .item:first-child .tag {
        margin-bottom: min(7.5vw, 29.767500000000002px)
    }
}

.component--press .hero .columns .item:last-child {
    display: flex;
    justify-content: space-between;
    width: 100%
}

.component--press .hero .columns .item:last-child .date,
.component--press .hero .columns .item:last-child .duration {
    color: #aaa;
    color: var(--dark)
}

.component--press .hero .image {
    height: 45vw;
    margin-top: 1.667vw
}

@media (max-width:1100px) {
    .component--press .hero .image {
        height: min(61.111vw, 242.55px);
        margin-top: min(2.5vw, 9.9225px)
    }
}

.component--press .content {
    padding: 5vw 0 13.333vw;
    position: relative
}

@media (max-width:1100px) {
    .component--press .content {
        padding: min(7.5vw, 29.767500000000002px) 0
    }
}

.component--press .content .columns {
    gap: 30vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--press .content .columns {
        flex-direction: column;
        gap: min(10vw, 39.69px)
    }
}

@media (max-width:1100px) {
    .component--press .content .columns .item {
        width: 100% !important
    }
}

.component--press .content .columns .item:first-child {
    width: 20vw
}

.component--press .content .columns .item:first-child .sidebar {
    display: flex;
    flex-direction: column;
    gap: 3.333vw;
    padding: 0 1.667vw 1.667vw;
    position: sticky;
    top: 1.667vw
}

@media (max-width:1100px) {
    .component--press .content .columns .item:first-child .sidebar {
        gap: min(10vw, 39.69px);
        margin: 0 auto;
        padding-right: min(12.222vw, .5053125in);
        top: 0;
        width: calc(100% - min(10vw, 39.69px))
    }
}

.component--press .content .columns .item:first-child .sidebar .group .label {
    padding-bottom: .417vw
}

@media (max-width:1100px) {
    .component--press .content .columns .item:first-child .sidebar .group .label {
        padding-bottom: min(2.5vw, 9.9225px)
    }
}

.component--press .content .columns .item:first-child .sidebar .group:last-child .label {
    margin-bottom: .833vw
}

.component--press .content .columns .item:first-child .sidebar .group .wysiwyg {
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    padding-top: 1.25vw
}

@media (max-width:1100px) {
    .component--press .content .columns .item:first-child .sidebar .group .wysiwyg {
        padding-top: min(5vw, 19.845px)
    }
}

.component--press .content .columns .item:last-child {
    width: 40vw
}

.component--press .content .columns .item:last-child .subcomponents {
    display: flex;
    flex-direction: column;
    gap: 6.667vw
}

@media (max-width:1100px) {
    .component--press .content .columns .item:last-child .subcomponents {
        gap: min(17.778vw, 4.41pc)
    }
}

@media (max-width:1100px) {
    .component--press .content .columns .item:last-child .--share {
        align-items: center;
        display: flex;
        flex-direction: row;
        gap: min(5vw, 19.845px);
        justify-content: flex-start;
        margin: min(10vw, 39.69px) auto min(12.5vw, .516796875in);
        width: calc(100% - min(10vw, 39.69px))
    }
}

.component--press .related {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    color: #fff;
    color: var(--white);
    padding: 10vw 0;
    position: relative
}

.component--press .related .text-group {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.component--press .related .text-group .icon span {
    background: #fff;
    background: var(--white)
}

.component--press .related .title.--bold {
    line-height: .8;
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--press .related .title.--bold {
        margin-bottom: 0
    }
}

.component--press .related .tag {
    background-color: hsla(0, 0%, 100%, .1)
}

.component--press .related .tag span {
    background: #fff;
    background: var(--white)
}

@supports ((-webkit-mask:url(./)) or (mask:url(""))) {
    .component--press .related .tag span {
        background: #fff;
        background: var(--white)
    }
}

@media (max-width:1100px) {
    .component--press .related .card-press {
        width: min(80vw, 317.52px)
    }
}

@media (min-width:1101px) {
    .component--press .related .card-press:hover .image {
        filter: grayscale(0)
    }

    .component--press .related .card-press:hover .image img {
        transform: scale(1.1)
    }

    .component--press .related .card-press:hover .group .flex .tag {
        background: hsla(0, 0%, 100%, .2)
    }

    .component--press .related .card-press:hover .group .flex .duration {
        color: #fff;
        color: var(--white)
    }
}

@media (max-width:1100px) {
    .component--press .related .draggable {
        margin-top: min(2.5vw, 9.9225px)
    }
}

@media (max-width:1100px) {
    .component--press .related .draggable .inner {
        gap: min(2.5vw, 9.9225px)
    }
}

.component--pressarchive {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    padding: 0
}

.component--pressarchive .featured {
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    padding: 3.75vw 0 10vw
}

@media (max-width:1100px) {
    .component--pressarchive .featured {
        padding: min(10vw, 39.69px) 0 min(20vw, 79.38px)
    }
}

.component--pressarchive .featured .title {
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--pressarchive .featured .title {
        margin-bottom: min(2.5vw, 9.9225px)
    }
}

.component--pressarchive .featured .columns {
    gap: .417vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--pressarchive .featured .columns {
        flex-direction: column;
        gap: min(12.5vw, .516796875in)
    }
}

.component--pressarchive .latest {
    border-top: 1px solid #d5d5d5;
    border-top: 1px solid var(--medium);
    padding: 3.75vw 0 10vw
}

@media (max-width:1100px) {
    .component--pressarchive .latest {
        padding: min(10.278vw, 40.792500000000004px) 0 min(20.833vw, 82.6875px)
    }
}

.component--pressarchive .latest .title {
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--pressarchive .latest .title {
        margin-bottom: min(2.5vw, 9.9225px)
    }
}

.component--pressarchive .latest .columns {
    flex-wrap: wrap;
    gap: 5vw .417vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--pressarchive .latest .columns {
        gap: min(12.5vw, .516796875in)
    }
}

@media (max-width:1100px) {
    .component--pressarchive .latest .columns .item {
        width: 100%
    }
}

.component--presses {
    padding: 0
}

.component--presses .container {
    border-top: 1px solid #e5e5e5;
    border-top: 1px solid var(--light);
    padding: 3.75vw 0 10vw
}

@media (max-width:1100px) {
    .component--presses .container {
        padding: min(10.278vw, 40.792500000000004px) 0 min(20.833vw, 82.6875px)
    }
}

.component--presses .title.--bold {
    line-height: .8;
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--presses .title.--bold {
        margin-bottom: 0
    }
}

@media (max-width:1100px) {
    .component--presses .columns:first-child {
        align-items: center;
        margin-bottom: min(2.5vw, 9.9225px)
    }
}

@media (max-width:1100px) {
    .component--presses .columns:last-child {
        flex-direction: column;
        gap: min(12.5vw, .516796875in)
    }
}

@media (max-width:1100px) {
    .component--presses .columns:last-child .inner {
        gap: min(2.5vw, 9.9225px)
    }
}

.component--slidertext {
    padding: 5vw 0 .833vw
}

.component--slidertext .columns {
    gap: 5vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--slidertext .columns {
        flex-direction: column-reverse;
        gap: min(10vw, 39.69px)
    }
}

.component--slidertext .columns .item {
    position: relative
}

.component--slidertext .video-group {
    height: 45vw;
    position: relative;
    width: 44.167vw
}

@media (max-width:1100px) {
    .component--slidertext .video-group {
        height: min(111.111vw, 441px);
        width: 100%
    }
}

.component--slidertext .video-group .counter {
    color: #aaa;
    color: var(--dark);
    position: absolute;
    top: -1.25vw
}

@media (max-width:1100px) {
    .component--slidertext .video-group .counter {
        top: min(4.444vw, 17.64px)
    }
}

.component--slidertext .video-group .video {
    filter: grayscale(.95)
}

.component--slidertext .video-group .text-block-left {
    bottom: 1.667vw;
    left: 1.667vw;
    position: absolute;
    width: 16.667vw
}

@media (max-width:1100px) {
    .component--slidertext .video-group .text-block-left {
        bottom: min(5vw, 19.845px);
        left: min(5vw, 19.845px);
        padding: 0;
        width: min(42.222vw, 167.58px)
    }
}

.component--slidertext .video-group .text-block-left .display {
    padding-top: 1.25vw
}

.component--slidertext .link {
    bottom: 1.667vw;
    cursor: pointer;
    position: absolute;
    right: 1.667vw
}

@media (max-width:1100px) {
    .component--slidertext .link {
        bottom: min(5vw, 19.845px);
        right: min(4.167vw, 16.5375px)
    }
}

@media (max-width:1100px) {
    .component--slidertext .text-group img {
        height: min(32.5vw, 128.9925px);
        width: min(32.5vw, 128.9925px)
    }
}

.component--slidertext .text-group .quote {
    margin-top: -3.333vw;
    width: 30vw
}

@media (max-width:1100px) {
    .component--slidertext .text-group .quote {
        margin-top: max(-19.444vw, -77.175px);
        width: min(62.5vw, 248.0625px)
    }
}

.component--slidertext .triggers {
    bottom: 1.833vw;
    display: flex;
    flex-direction: column;
    gap: .833vw;
    left: 49.167vw;
    position: absolute
}

@media (max-width:1100px) {
    .component--slidertext .triggers {
        bottom: 0;
        gap: min(2.5vw, 9.9225px);
        left: 0;
        position: relative
    }
}

.component--slidertext .triggers .trigger {
    color: #aaa;
    color: var(--dark);
    cursor: pointer;
    transition: all .4s cubic-bezier(.16, 1, .3, 1);
    transition: all .4s var(--expoOut)
}

.component--slidertext .triggers .trigger.--active {
    color: #2b2b2b;
    color: var(--darkest);
    font-size: 1.667vw;
    font-weight: 500
}

@media (max-width:1100px) {
    .component--slidertext .triggers .trigger.--active {
        font-size: min(5vw, 19.845px)
    }
}

@media (min-width:1101px) {
    .component--slidertext .triggers .trigger:hover {
        color: #2b2b2b;
        color: var(--darkest)
    }
}

.component--slidertext .slider {
    height: 45vw;
    overflow: visible;
    overflow: initial
}

@media (max-width:1100px) {
    .component--slidertext .slider {
        height: min(255.556vw, 10.565625in)
    }
}

.component--table {
    background-color: #2b2b2b;
    background-color: var(--darkest);
    color: #d5d5d5;
    color: var(--medium);
    padding: 5vw 0 3.333vw
}

@media (max-width:1100px) {
    .component--table {
        padding: min(25vw, 1.03359375in) 0 min(20vw, 79.38px)
    }
}

.component--table .columns {
    gap: 15vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--table .columns {
        flex-direction: column;
        gap: min(12.5vw, .516796875in)
    }
}

@media (max-width:1100px) {
    .component--table .columns .item {
        width: min(75vw, 297.675px) !important
    }
}

.component--table .columns .item:first-child {
    width: 30vw
}

.component--table .columns .item:first-child .label {
    margin-bottom: 2.5vw
}

@media (max-width:1100px) {
    .component--table .columns .item:first-child .label {
        margin-bottom: min(7.5vw, 29.767500000000002px)
    }
}

.component--table .columns .item:last-child {
    margin-top: 4.708vw;
    width: 25vw
}

@media (max-width:1100px) {
    .component--table .columns .item:last-child {
        margin-top: 0
    }
}

@media (max-width:1100px) {
    .component--table .table {
        margin-top: min(20vw, 79.38px)
    }
}

.component--table .table .body .row {
    border-top: 1px solid hsla(0, 0%, 100%, .2)
}

.component--tablefourcols {
    background-color: #f2f2f2;
    background-color: var(--lighter);
    padding: 13.333vw 0 3.333vw
}

@media (max-width:1100px) {
    .component--tablefourcols {
        background: url(../images/table-waves-mobile.svg) no-repeat transparent;
        background-color: #f2f2f2;
        background-color: var(--lighter);
        background-position: 100% 0;
        padding: min(25vw, 1.03359375in) 0 0
    }
}

.component--tablefourcols .waves {
    height: 48.333vw;
    left: 0;
    position: absolute;
    top: -13.333vw;
    width: 100%
}

@media (max-width:1100px) {
    .component--tablefourcols .waves {
        height: min(88.889vw, 352.8px);
        top: max(-25vw, -1.03359375in)
    }
}

.component--tablefourcols .waves svg {
    height: 100%;
    width: 100%
}

.component--tablefourcols .columns {
    align-items: flex-end;
    gap: 20vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--tablefourcols .columns {
        flex-direction: column-reverse;
        gap: min(30vw, 89.30250000000001pt)
    }
}

@media (max-width:1100px) {
    .component--tablefourcols .columns .item {
        width: 100% !important
    }
}

.component--tablefourcols .columns .item:first-child {
    width: 25vw
}

@media (max-width:1100px) {
    .component--tablefourcols .columns .item:first-child {
        padding-right: min(22.5vw, 66.976875pt);
        width: 100%
    }
}

.component--tablefourcols .columns .item:first-child .label {
    margin-bottom: 2.5vw
}

.component--tablefourcols .columns .item:last-child {
    margin-top: 0;
    width: 45vw
}

.component--tablefourcols .table {
    margin-top: 6.667vw
}

@media (max-width:1100px) {
    .component--tablefourcols .table {
        margin-top: min(20vw, 79.38px)
    }
}

@media (max-width:1100px) {
    .component--tablefourcols .table .row .cell:first-child {
        width: 100%
    }
}

@media (max-width:1100px) {

    .component--tablefourcols .table .row .cell:last-child,
    .component--tablefourcols .table .row .cell:nth-child(2),
    .component--tablefourcols .table .row .cell:nth-child(3) {
        width: 33%
    }
}

.component--tablefourcols .table .row .cell:nth-child(2),
.component--tablefourcols .table .row .cell:nth-child(3) {
    width: 15vw
}

@media (max-width:1100px) {

    .component--tablefourcols .table .row .cell:nth-child(2),
    .component--tablefourcols .table .row .cell:nth-child(3) {
        width: 33%
    }
}

.component--tablefourcols .table .row .cell:nth-child(3) {
    margin-left: 5.833vw
}

@media (max-width:1100px) {
    .component--tablefourcols .table .row .cell:nth-child(3) {
        margin-left: 0;
        text-align: center
    }
}

.component--tablefourcols .table .row .cell:last-child {
    margin-left: 5.833vw;
    text-align: right;
    width: auto
}

@media (max-width:1100px) {
    .component--tablefourcols .table .row .cell:last-child {
        margin-left: 0;
        text-align: right;
        width: 33%
    }
}

.component--tablefourcols .table .head .row {
    padding-bottom: .417vw
}

.component--tablefourcols .table .body .row {
    padding: 2.5vw 0 5vw
}

@media (max-width:1100px) {
    .component--tablefourcols .table .body .row {
        padding: min(5vw, 19.845px) 0 min(20vw, 79.38px)
    }
}

.component--tablethreecols {
    background-color: #f2f2f2;
    background-color: var(--lighter);
    padding: 13.333vw 0 3.333vw
}

@media (max-width:1100px) {
    .component--tablethreecols {
        background: url(../images/content_img/table-waves-mobile.svg) no-repeat transparent;
        background-color: #f2f2f2;
        background-color: var(--lighter);
        background-position: 100% 0;
        padding: min(25vw, 1.03359375in) 0 0
    }
}

.component--tablethreecols .waves {
    height: 48.333vw;
    left: 0;
    position: absolute;
    top: -13.333vw;
    width: 100%
}

@media (max-width:1100px) {
    .component--tablethreecols .waves {
        height: min(88.889vw, 352.8px);
        top: max(-25vw, -1.03359375in)
    }
}

.component--tablethreecols .waves svg {
    height: 100%;
    width: 100%
}

.component--tablethreecols .columns {
    align-items: flex-end;
    gap: 20vw;
    justify-content: flex-start
}

@media (max-width:1100px) {
    .component--tablethreecols .columns {
        flex-direction: column-reverse;
        gap: min(30vw, 89.30250000000001pt)
    }
}

@media (max-width:1100px) {
    .component--tablethreecols .columns .item {
        width: 100% !important
    }
}

.component--tablethreecols .columns .item:first-child {
    width: 25vw
}

@media (max-width:1100px) {
    .component--tablethreecols .columns .item:first-child {
        padding-right: min(22.5vw, 66.976875pt);
        width: 100%
    }
}

.component--tablethreecols .columns .item:first-child .label {
    margin-bottom: 2.5vw
}

.component--tablethreecols .columns .item:last-child {
    width: 45vw
}

.component--tablethreecols .table {
    margin-top: 6.667vw
}

@media (max-width:1100px) {
    .component--tablethreecols .table {
        margin-top: min(20vw, 79.38px)
    }
}

.component--tablethreecols .table .body .row {
    padding: 2.5vw 0 5vw
}

@media (max-width:1100px) {
    .component--tablethreecols .table .body .row {
        padding: min(5vw, 19.845px) 0 min(20vw, 79.38px)
    }
}

@media (max-width:1100px) {
    .component--tablethreecols .table .body .row .cell:first-child {
        padding-right: min(34.444vw, 136.71px);
        width: 100%
    }
}

@media (max-width:1100px) {
    .component--tablethreecols .table .body .row .cell:nth-child(2) {
        width: min(30vw, 89.30250000000001pt)
    }
}

.component--tablethreecols .table .body .row .cell:last-child {
    width: 15vw
}

@media (max-width:1100px) {
    .component--tablethreecols .table .body .row .cell:last-child {
        width: min(50vw, 2.0671875in)
    }
}

.component--teamarchive {
    padding: 1.667vw 0 10vw
}

@media (max-width:1100px) {
    .component--teamarchive {
        padding: min(7.5vw, 29.767500000000002px) 0
    }
}

.component--teamarchive .label {
    color: #2b2b2b;
    color: var(--darkest);
    font-weight: 400;
    margin-bottom: .833vw
}

@media (max-width:1100px) {
    .component--teamarchive .label {
        margin-bottom: min(5vw, 19.845px)
    }
}

.component--teamarchive .columns {
    flex-wrap: wrap;
    gap: 2.5vw .833vw;
    justify-content: flex-start;
    margin: 2.5vw auto 0;
    width: 96.667vw
}

@media (max-width:1100px) {
    .component--teamarchive .columns {
        gap: min(5vw, 19.845px) min(1.667vw, 6.615px);
        margin-top: min(5vw, 19.845px);
        width: calc(100% - min(5vw, 19.845px))
    }
}

@media (max-width:1100px) {
    .component--teamarchive .columns .item {
        width: calc(50% - min(.833vw, 3.3075px))
    }
}

.component--teamarchive .title.--medium {
    margin: 10vw auto 0;
    text-align: center
}

@media (max-width:1100px) {
    .component--teamarchive .title.--medium {
        margin: min(20vw, 79.38px) auto 0
    }
}

.component--teams {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    padding: 13.333vw 0 .417vw
}

@media (max-width:1100px) {
    .component--teams {
        padding: min(25vw, 1.03359375in) 0 min(10vw, 39.69px)
    }
}

.component--teams .container {
    width: calc(100% - min(5vw, 19.845px))
}

@media (max-width:1100px) {
    .component--teams .text-block-center {
        margin: 0 min(7.5vw, 29.767500000000002px);
        width: auto
    }
}

.component--teams .draggable {
    margin-top: 10vw
}

@media (max-width:1100px) {
    .component--teams .draggable {
        margin-top: min(20vw, 79.38px)
    }
}

.component--teams .draggable .inner {
    gap: .417vw
}

@media (max-width:1100px) {
    .component--teams .draggable .inner {
        gap: min(2.5vw, 9.9225px)
    }
}

.component--textblocklarge {
    padding: 10vw 0 13.333vw
}

@media (max-width:1100px) {
    .component--textblocklarge {
        padding: min(41.667vw, 165.375px) 0
    }
}

.component--textblocklarge.left {
    padding: 5vw 0 10vw
}

@media (max-width:1100px) {
    .component--textblocklarge.left {
        padding: min(25vw, 1.03359375in) 0 min(20vw, 79.38px)
    }
}

.component--textblocklarge .text-block-left {
    margin-left: 50vw
}

@media (max-width:1100px) {
    .component--textblocklarge .text-block-left {
        margin-left: min(5vw, 19.845px);
        padding: 0;
        width: min(75vw, 297.675px)
    }
}

@media (max-width:1100px) {
    .component--textblocklarge .text-block-center {
        margin: 0 min(10vw, 39.69px);
        width: auto
    }
}

.component--textblockmedium.large {
    padding: 10vw 0 15vw
}

.component--textblockmedium.large .container {
    width: 73.333vw
}

@media (max-width:1100px) {
    .component--textblockmedium.large .container {
        width: calc(100% - min(15vw, .6201562500000001in))
    }
}

.component--textblockmedium.large .columns {
    justify-content: flex-end
}

.component--textblockmedium.large .columns .item .text-block-left {
    width: 36.667vw
}

@media (max-width:1100px) {
    .component--textblockmedium.large .columns .item .text-block-left {
        padding: 0;
        width: min(62.5vw, 248.0625px)
    }
}

.component--textblockmedium.large .columns .item .text-block-left .label {
    margin-bottom: 1.667vw
}

@media (max-width:1100px) {
    .component--textblockmedium.large .columns .item .text-block-left .label {
        margin-bottom: min(7.5vw, 29.767500000000002px)
    }
}

.component--timeline {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    padding: 12vw 0 7.625vw;
    z-index: 1
}

@media (max-width:1100px) {
    .component--timeline {
        min-height: 100vh;
        padding: min(38.889vw, 154.35px) 0 min(20vw, 79.38px)
    }
}

.component--timeline .title.--2xlarge {
    margin: auto auto 5vw;
    text-align: center;
    width: 40vw
}

@media (max-width:1100px) {
    .component--timeline .title.--2xlarge {
        padding: 0 min(5vw, 19.845px);
        width: 100%
    }
}

.component--timeline .snap {
    height: 100vh;
    position: relative
}

.component--timeline .snap .video {
    clip-path: inset(50%);
    height: 26.667vw;
    left: 50%;
    margin: auto;
    position: absolute;
    top: 40%;
    transform: translate(-50%, -50%);
    width: 47.5vw
}

@media (max-width:1100px) {
    .component--timeline .snap .video {
        height: min(45vw, 133.95375pt);
        width: min(71.667vw, 284.445px)
    }
}

.component--timeline .snap .numbers {
    align-items: center;
    display: flex;
    gap: 2vw;
    height: 31.667vw;
    justify-content: center;
    left: 50%;
    mix-blend-mode: multiply;
    overflow: hidden;
    position: absolute;
    top: 40%;
    transform: translate(-50%, -50%);
    width: 100%
}

@media (max-width:1100px) {
    .component--timeline .snap .numbers {
        top: min(22.222vw, 88.2px);
        transform: translateX(-50%)
    }
}

.component--timeline .snap .numbers .number {
    height: 100%;
    height: 31.667vw;
    opacity: .0001;
    text-align: center
}

.component--timeline .snap .numbers .number .inset {
    display: flex;
    flex-direction: column;
    height: 31.667vw;
    will-change: transform
}

.component--timeline .snap .numbers .number .title {
    color: #e41613;
    color: var(--main);
    height: 31.667vw;
    line-height: 1.04
}

.component--timeline .snap .groups {
    bottom: 5vw;
    height: 7.5vw;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 80vw
}

.component--timeline .snap .groups .group {
    height: 100%;
    opacity: .0001;
    position: absolute;
    transition: opacity .6s cubic-bezier(.16, 1, .3, 1);
    transition: opacity .6s var(--expoOut);
    width: 100%;
    will-change: opacity
}

.component--timeline .snap .groups .group.--active {
    opacity: 1
}

.component--timeline .snap .groups .group .columns {
    gap: 5vw;
    justify-content: center;
    margin: 0 auto;
    width: 80vw
}

@media (max-width:1100px) {
    .component--timeline .snap .groups .group .columns {
        align-items: flex-start;
        display: flex;
        flex-wrap: wrap;
        gap: min(5vw, 19.845px);
        margin: min(10vw, 39.69px) auto 0;
        width: min(80vw, 317.52px)
    }
}

.component--timeline .snap .groups .group .columns .item {
    width: 13.75vw
}

@media (max-width:1100px) {
    .component--timeline .snap .groups .group .columns .item {
        width: min(33.333vw, 132.3px)
    }
}

.component--timeline .snap .groups .group .columns .item .wysiwyg:before {
    background-color: #e41613;
    background-color: var(--main);
    border-radius: 50%;
    content: "";
    height: .417vw;
    left: -.833vw;
    position: absolute;
    top: .417vw;
    width: .417vw
}

@media (max-width:1100px) {
    .component--timeline .snap .groups .group .columns .item .wysiwyg:before {
        height: min(1.667vw, 6.615px);
        left: max(-3.611vw, -14.3325px);
        top: min(1.389vw, 5.5125px);
        width: min(1.667vw, 6.615px)
    }
}

.component--timeline .snap .years {
    align-items: center;
    bottom: 2.5vw;
    display: flex;
    gap: 8.167vw;
    justify-content: center;
    left: 0;
    left: 50%;
    margin: 5vw auto 0;
    position: absolute;
    right: 0;
    transform: translateX(-50%) translateY(50%);
    width: 100%
}

.component--timeline .snap .years .year {
    color: #aaa;
    color: var(--dark);
    cursor: pointer;
    transition: color .6s cubic-bezier(.16, 1, .3, 1);
    transition: color .6s var(--expoOut)
}

.component--timeline .snap .years .year.--active {
    color: #e41613;
    color: var(--main)
}

@media (min-width:1101px) {
    .component--timeline .snap .years .year:hover {
        color: #e41613;
        color: var(--main)
    }
}

@media (max-width:1100px) {
    .component--timeline .draggable {
        flex-direction: column;
        flex-wrap: wrap;
        padding-top: min(20vw, 79.38px)
    }

    .component--timeline .draggable .image,
    .component--timeline .draggable .video {
        height: min(45vw, 133.95375pt);
        left: 50%;
        mix-blend-mode: multiply;
        pointer-events: none;
        position: absolute;
        transform: translateX(-50%);
        width: min(71.667vw, 284.445px)
    }

    .component--timeline .draggable .inner {
        gap: min(44.444vw, 176.4px);
        mix-blend-mode: multiply
    }

    .component--timeline .draggable .inner .item {
        width: 100vw
    }

    .component--timeline .draggable .columns {
        align-items: flex-start;
        display: flex;
        flex-wrap: wrap;
        gap: min(5vw, 19.845px);
        margin: min(10vw, 39.69px) auto 0;
        width: calc(100% - min(28.333vw, 112.455px))
    }

    .component--timeline .draggable .columns-item {
        width: min(33.333vw, 132.3px)
    }

    .component--timeline .draggable .columns-item .wysiwyg:before {
        background-color: #e41613;
        background-color: var(--main);
        border-radius: 50%;
        content: "";
        height: min(1.667vw, 6.615px);
        left: max(-3.611vw, -14.3325px);
        position: absolute;
        top: min(1.389vw, 5.5125px);
        width: min(1.667vw, 6.615px)
    }

    .component--timeline .draggable .numbers {
        align-items: center;
        display: flex;
        justify-content: center;
        left: 50%;
        letter-spacing: min(6.944vw, 27.5625px);
        mix-blend-mode: multiply;
        position: relative;
        top: min(8.056vw, 31.9725px);
        transform: translateX(-50%);
        width: 100%
    }

    .component--timeline .draggable .numbers .number {
        color: #e41613;
        color: var(--main);
        height: 100%;
        text-align: center
    }
}

@media (max-width:1100px) {
    .component--timeline .dots {
        display: flex;
        justify-content: center;
        margin-top: min(10vw, 39.69px);
        position: relative;
        width: 100%
    }
}

.subcomponent--about .group {
    background-color: #f7f7f7;
    background-color: var(--lightest);
    display: flex;
    flex-direction: column;
    gap: 2.5vw;
    padding: 2.5vw
}

@media (max-width:1100px) {
    .subcomponent--about .group {
        gap: min(4.722vw, 18.7425px);
        padding: min(10vw, 39.69px) min(17.5vw, 69.4575px) min(10vw, 39.69px) min(5vw, 19.845px)
    }
}

@media (max-width:1100px) {
    .subcomponent--quote .container {
        width: calc(100% - min(10vw, 39.69px))
    }
}

.subcomponent--quote .info {
    border-bottom: 1px solid #d5d5d5;
    border-bottom: 1px solid var(--medium);
    padding-bottom: .833vw;
    position: relative;
    width: 100%
}

.subcomponent--quote .info .position {
    color: #aaa;
    color: var(--dark);
    margin-top: .417vw
}

@media (max-width:1100px) {
    .subcomponent--quote .info .position {
        margin-top: min(.833vw, 3.3075px)
    }
}

.subcomponent--quote .flex {
    justify-content: space-between;
    margin-top: 3.333vw
}

@media (max-width:1100px) {
    .subcomponent--quote .flex {
        flex-direction: column;
        gap: min(5vw, 19.845px);
        margin-top: min(10vw, 39.69px)
    }
}

.subcomponent--quote .flex .image {
    height: 11.667vw;
    width: 11.667vw
}

@media (max-width:1100px) {
    .subcomponent--quote .flex .image {
        height: min(20vw, 79.38px);
        margin-left: 0;
        margin-right: auto;
        width: min(20vw, 79.38px)
    }
}

.subcomponent--quote .flex .title {
    width: 25vw
}

@media (max-width:1100px) {
    .subcomponent--quote .flex .title {
        padding-right: min(12.222vw, .5053125in);
        width: 100%
    }
}

@media (max-width:1100px) {
    .subcomponent--text .container {
        width: calc(100% - min(10vw, 39.69px))
    }
}

.subcomponent--text .group {
    display: flex;
    flex-direction: column;
    gap: 5vw
}

@media (max-width:1100px) {
    .subcomponent--text .group {
        gap: min(10vw, 39.69px);
        padding-right: min(12.222vw, .5053125in)
    }
}



.clientlogo-area {
    overflow: hidden;
    position: relative
}

.clientlogo__area-four,
.clientlogo__area-three,
.clientlogo__area-two {
    background: var(--tg-color-dark-blue)
}

.clientlogo__area-four {
    position: relative;
    z-index: 1
}

.clientlogo-top {
    padding: 70px 0 70px
}

@media (max-width:767.98px) {
    .clientlogo-top {
        padding: 100px 0 50px
    }
}

.clientlogo-top .row>:nth-child(2) .clientlogo-widget {
    margin-inline-start: 50px
}

.copyright-text {
    color: #fff;
}

.copyright-text a {
    color: inherit !important;
}

@media (max-width:991.98px) {
    .clientlogo-top .row>:nth-child(2) .clientlogo-widget {
        margin-inline-start: 0
    }
}

.clientlogo-top .row>:nth-child(3) .clientlogo-widget {
    margin-inline-start: 70px
}

@media (max-width:991.98px) {
    .clientlogo-top .row>:nth-child(3) .clientlogo-widget {
        margin-inline-start: 0
    }
}

.clientlogo__top-two {
    padding: 60px 0 30px
}

.clientlogo__top-two .fw-title {
    color: var(--tg-color-white-default)
}

.clientlogo__top-two .clientlogo-link-list .list-wrap li a {
    color: var(--tg-color-gray-2);
    font-weight: 700
}

.clientlogo__top-two .row>:nth-child(3) .clientlogo-widget {
    margin-inline-start: 65px
}

@media (max-width:991.98px) {
    .clientlogo__top-two .row>:nth-child(3) .clientlogo-widget {
        margin-inline-start: 0
    }
}

.clientlogo__top-three {
    padding: 110px 0 70px
}

@media (max-width:767.98px) {
    .clientlogo__top-three {
        padding: 90px 0 40px
    }
}

.clientlogo__top-three .fw-title {
    color: var(--tg-color-white-default)
}

.clientlogo__top-three .clientlogo-info-list .list-wrap li .icon,
.clientlogo__top-three .clientlogo-info-list .list-wrap li a,
.clientlogo__top-three .clientlogo-info-list .list-wrap li p,
.clientlogo__top-three .clientlogo-link-list .list-wrap li a {
    color: var(--tg-color-gray-2)
}

.clientlogo-widget {
    margin-bottom: 40px
}

.clientlogo-content p {
    margin-bottom: 25px;
    font-size: 14px;
    line-height: 1.5;
}

.clientlogo__content-two {
    width: 80%
}

@media (max-width:991.98px) {
    .clientlogo__content-two {
        width: 100%
    }
}

.clientlogo__content-two>p {
    color: var(--tg-color-gray-2);
    font-weight: 700;
    margin-bottom: 15px
}

.clientlogo-social .list-wrap {
    align-items: center;
    display: flex;
    gap: 10px
}

.clientlogo-social .list-wrap li a {
    align-items: center;
    background: #eaf1f4;
    border-radius: 5px;
    color: var(--tg-heading-color);
    display: flex;
    font-size: 20px;
    height: 45px;
    justify-content: center;
    width: 45px
}

.clientlogo-social .list-wrap li a:hover {
    background: var(--tg-theme-secondary);
    color: var(--tg-color-white-default)
}

.clientlogo__social-two {
    flex-grow: 1
}

.clientlogo__social-two .list-wrap {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: flex-end
}

@media (max-width:991.98px) {
    .clientlogo__social-two .list-wrap {
        justify-content: center
    }
}

.clientlogo__social-two .list-wrap li a {
    align-items: center;
    background: #232563;
    border-radius: 50%;
    color: var(--tg-color-gray-2);
    display: flex;
    font-size: 20px;
    height: 45px;
    justify-content: center;
    width: 45px
}

.clientlogo__social-two .list-wrap li a:hover {
    background: var(--tg-theme-primary);
    color: var(--tg-color-white-default)
}

.clientlogo__social-three .title {
    color: #7375a5;
    display: block;
    margin-bottom: 15px;
    text-transform: capitalize
}

.clientlogo__social-three .list-wrap {
    align-items: center;
    display: flex;
    gap: 10px
}

.clientlogo__social-three .list-wrap li a {
    align-items: center;
    background: #232563;
    border-radius: 50%;
    color: var(--tg-color-gray-2);
    display: flex;
    font-size: 20px;
    height: 45px;
    justify-content: center;
    width: 45px
}

.clientlogo__social-three .list-wrap li a:hover {
    background: var(--tg-theme-primary);
    color: var(--tg-color-white-default)
}

.clientlogo-info-list .list-wrap li {
    align-items: flex-start;
    display: flex;
    gap: 10px;
    margin-bottom: 10px
}

.clientlogo-info-list .list-wrap li .icon {
    font-size: 24px;
    line-height: 0
}

.clientlogo-info-list .list-wrap li a {
    color: var(--tg-body-color)
}

.clientlogo-info-list .list-wrap li a:hover {
    color: var(--tg-theme-primary)
}

.clientlogo-info-list .list-wrap li .content p,
.clientlogo-info-list .list-wrap li:last-child {
    margin-bottom: 0
}

.clientlogo-link-list .list-wrap li {
    margin-bottom: 10px
}

.clientlogo-link-list .list-wrap li:last-child {
    margin-bottom: 0
}

.clientlogo-link-list .list-wrap li a {
    color: var(--tg-body-color);
    position: relative
}

.clientlogo-link-list .list-wrap li a:before {
    background: var(--tg-theme-primary);
    bottom: -1px;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right top;
    transition: transform .4s cubic-bezier(.74, .72, .27, .24);
    width: 100%
}

.clientlogo-link-list .list-wrap li a:hover {
    color: var(--tg-theme-primary)
}

.clientlogo-link-list .list-wrap li a:hover:before {
    transform: scale(1);
    transform-origin: left top
}

.clientlogo-instagram .list-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 13px
}

.clientlogo-instagram .list-wrap li a img {
    border-radius: 10px;
    height: 85px;
    mix-blend-mode: luminosity;
    -o-object-fit: cover;
    object-fit: cover;
    width: 85px
}

.clientlogo-bottom {
    background: var(--tg-color-gray-3);
    border-top: 1px solid var(--tg-border-1);
    padding: 20px 0
}

@media (max-width:767.98px) {
    .clientlogo-bottom {
        padding: 25px 0
    }
}

.clientlogo__bottom-two {
    border-top: 1px solid #272a68;
    padding: 40px 0
}

@media (max-width:767.98px) {
    .clientlogo__bottom-two {
        padding: 30px 0
    }
}

.clientlogo__bottom-three {
    border-top: 1px solid #272a68;
    padding: 40px 0
}

@media (max-width:767.98px) {
    .clientlogo__bottom-three {
        padding: 25px 0
    }

    .clientlogo__bottom-three .fw-logo {
        margin-bottom: 20px;
        text-align: center
    }
}

.clientlogo__bottom-three .copyright-text {
    text-align: right
}

@media (max-width:767.98px) {
    .clientlogo__bottom-three .copyright-text {
        text-align: center
    }
}

.clientlogo__bottom-three .copyright-text p,
.clientlogo__bottom-three .copyright-text p a {
    color: #5f6196
}

.clientlogo__bottom-four {
    border-top: 1px solid #272a68;
    padding: 65px 0
}

@media (max-width:991.98px) {
    .clientlogo__bottom-four {
        padding: 25px 0
    }
}

.clientlogo__bottom-four .copyright-text {
    text-align: right
}

@media (max-width:991.98px) {
    .clientlogo__bottom-four .copyright-text {
        text-align: center
    }
}

.clientlogo__bottom-four .copyright-text p,
.clientlogo__bottom-four .copyright-text p a {
    color: #5f6196
}

.clientlogo-newsletter {
    align-items: center;
    display: flex;
    gap: 15px
}

@media (max-width:991.98px) {
    .clientlogo-newsletter {
        margin-bottom: 20px
    }
}

@media (max-width:767.98px) {
    .clientlogo-newsletter {
        flex-wrap: wrap;
        justify-content: center
    }
}

.clientlogo-newsletter .title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 0
}

@media (max-width:1199.98px) {
    .clientlogo-newsletter .title {
        font-size: 18px
    }
}

.clientlogo-newsletter form {
    flex-grow: 1;
    position: relative
}

.clientlogo-newsletter form input {
    background: var(--tg-color-white-default);
    border: 1px solid var(--tg-border-1);
    border-radius: 30px;
    color: var(--tg-theme-secondary);
    font-size: 14px;
    height: 50px;
    line-height: 0;
    padding: 16px 140px 16px 22px;
    width: 100%
}

.clientlogo-newsletter form input::-moz-placeholder {
    color: #667594;
    font-size: 14px;
    text-transform: capitalize
}

.clientlogo-newsletter form input::placeholder {
    color: #667594;
    font-size: 14px;
    text-transform: capitalize
}

.clientlogo-newsletter .btn {
    border-radius: 30px;
    position: absolute;
    right: 0;
    top: 0
}

.clientlogo-newsletter .btn:after {
    display: none
}

.clientlogo__newsletter-two {
    border-bottom: 1px solid #272a68;
    padding: 80px 0 60px
}

@media (max-width:767.98px) {
    .clientlogo__newsletter-two {
        padding: 60px 0 50px
    }
}

.clientlogo__newsletter-three {
    width: 90%
}

@media (max-width:767.98px) {
    .clientlogo__newsletter-three {
        width: 100%
    }
}

.clientlogo__newsletter-three .title {
    color: var(--tg-color-white-default);
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 20px;
    text-transform: capitalize
}

@media (max-width:767.98px) {
    .clientlogo__newsletter-three .title br {
        display: none
    }
}

.clientlogo__newsletter-three form {
    margin-bottom: 25px
}

.clientlogo__newsletter-three form input {
    background: #212356;
    border: none;
    border-radius: 30px;
    color: var(--tg-color-white-default);
    display: block;
    font-size: 14px;
    font-weight: 500;
    height: 50px;
    margin-bottom: 10px;
    padding: 15px 25px;
    width: 100%
}

.clientlogo__newsletter-three form input::-moz-placeholder {
    color: #595b81;
    font-size: 14px;
    font-weight: 500;
    text-transform: capitalize
}

.clientlogo__newsletter-three form input::placeholder {
    color: #595b81;
    font-size: 14px;
    font-weight: 500;
    text-transform: capitalize
}

.clientlogo__newsletter-three form .btn {
    border-radius: 30px;
    justify-content: center;
    width: 100%
}

.clientlogo__newsletter-three form .btn:after {
    display: none
}

.clientlogo__newsletter-four {
    align-items: center;
    display: flex;
    gap: 25px
}

@media (max-width:991.98px) {
    .clientlogo__newsletter-four {
        justify-content: center;
        margin-bottom: 20px
    }
}

@media (max-width:767.98px) {
    .clientlogo__newsletter-four {
        flex-wrap: wrap
    }
}

.clientlogo__newsletter-four .title {
    color: var(--tg-color-white-default);
    font-size: 24px;
    margin-bottom: 0
}

.clientlogo__newsletter-four form {
    align-items: center;
    display: flex;
    flex-grow: 1;
    gap: 10px
}

@media (max-width:767.98px) {
    .clientlogo__newsletter-four form {
        flex-wrap: wrap;
        justify-content: center
    }
}

.clientlogo__newsletter-four form input {
    background: var(--tg-color-white-default);
    border: none;
    border-radius: 30px;
    color: var(--tg-theme-secondary);
    flex-grow: 1;
    font-size: 14px;
    font-weight: 500;
    height: 50px;
    padding: 15px 25px
}

.clientlogo__newsletter-four form input::-moz-placeholder {
    color: #667594;
    font-size: 14px;
    font-weight: 500;
    text-transform: capitalize
}

.clientlogo__newsletter-four form input::placeholder {
    color: #667594;
    font-size: 14px;
    font-weight: 500;
    text-transform: capitalize
}

.clientlogo__newsletter-four form .btn {
    border-radius: 30px;
    width: 127px
}

.clientlogo__newsletter-four form .btn:after {
    display: none
}

.clientlogo__newsletter-inner {
    align-items: center;
    display: flex
}

@media (max-width:1199.98px) {
    .clientlogo__newsletter-inner {
        flex-wrap: wrap;
        gap: 30px;
        justify-content: center
    }
}

.clientlogo__newsletter-inner .title {
    color: var(--tg-color-white-default);
    font-size: 24px;
    margin-bottom: 0;
    margin-inline-end: 30px;
    text-transform: capitalize;
    width: 20%
}

@media (max-width:1199.98px) {
    .clientlogo__newsletter-inner .title {
        margin-inline-end: 0;
        text-align: center;
        width: 100%
    }
}

.clientlogo__newsletter-inner form {
    position: relative;
    width: 620px
}

.clientlogo__newsletter-inner form input {
    background: var(--tg-color-white-default);
    border: none;
    border-radius: 30px;
    color: var(--tg-theme-secondary);
    font-size: 14px;
    font-weight: var(--tg-fw-bold);
    height: 50px;
    padding: 20px 145px 20px 28px;
    width: 100%
}

.clientlogo__newsletter-inner form input::-moz-placeholder {
    color: #667594;
    font-size: 14px;
    font-weight: var(--tg-fw-bold);
    text-transform: capitalize
}

.clientlogo__newsletter-inner form input::placeholder {
    color: #667594;
    font-size: 14px;
    font-weight: var(--tg-fw-bold);
    text-transform: capitalize
}

.clientlogo__newsletter-inner form .btn {
    border-radius: 30px;
    height: 50px;
    position: absolute;
    right: 0;
    top: 0
}

.clientlogo__newsletter-inner form .btn:after {
    display: none
}

.clientlogo-shape img {
    position: absolute;
    z-index: -1
}

.clientlogo-shape img:first-child {
    bottom: 0;
    left: 0
}

.clientlogo-shape img:nth-child(2) {
    right: 0;
    top: 0
}

.clientlogo-shape img:nth-child(3) {
    right: 6%;
    top: 30%
}

@media (max-width:991.98px) {
    .clientlogo-shape img:nth-child(3) {
        right: 11%;
        top: 24%
    }
}

.clientlogo-shape-two img {
    left: 0;
    position: absolute;
    top: 0;
    z-index: -1
}


.scroll__top {
    background: var(--tg-theme-primary);
    border: none;
    border-radius: 4px;
    bottom: -10%;
    color: var(--tg-color-white-default);
    cursor: pointer;
    font-size: 16px;
    height: 40px;
    line-height: 40px;
    position: fixed;
    right: 50px;
    text-align: center;
    transition: 1s ease;
    width: 40px;
    z-index: 5
}

@media (max-width:1199.98px) {
    .scroll__top {
        bottom: 25px;
        right: 25px
    }
}

@media (max-width:991.98px) {
    .scroll__top {
        right: 30px
    }
}

@media (max-width:767.98px) {
    .scroll__top {
        height: 30px;
        line-height: 30px;
        right: 15px;
        text-align: center;
        width: 30px
    }
}

.scroll__top.open {
    bottom: 30px
}

@media (max-width:767.98px) {
    .scroll__top.open {
        bottom: 15px
    }
}

.scroll__top:after {
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, .25) 0, transparent 80%);
    content: "";
    height: 10px;
    left: 5%;
    opacity: 1;
    position: absolute;
    top: 100%;
    width: 90%;
    z-index: -1
}

.scroll__top:hover {
    background: var(--tg-theme-secondary);
    color: var(--tg-color-white-default)
}


h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--tg-heading-color);
    font-family: var(--tg-heading-font-family);
    font-weight: var(--tg-fw-bold);
    line-height: var(--tg-heading-line-height);
    margin-top: 0;
    text-transform: unset
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: inherit
}

h1 {
    font-size: 2.5rem
}

h2 {
    font-size: 2rem
}

h3 {
    font-size: 1.75rem
}

h4 {
    font-size: 1.5rem
}

h5 {
    font-size: 1.25rem
}

h6 {


    font-size: 1rem
}

.list-wrap {
    margin: 0;
    padding: 0
}

.list-wrap li {
    list-style: none
}

p {
    color: #000;
    font-family: "Roboto", sans-serif;
    font-size: var(--tg-body-font-size);
    font-weight: var(--tg-fw-regular);
    line-height: var(--tg-body-line-height);
    margin-bottom: 15px
}

hr {
    border-bottom: 1px solid var(--tg-color-gray-1);
    border-top: 0;
    margin: 30px 0;
    padding: 0
}

label {
    color: var(--tg-heading-color);
    cursor: pointer;
    font-size: var(--tg-body-font-size);
    font-weight: var(--tg-fw-regular)
}


.footer-top {
    background: #f3f3f3;
    padding: 80px 0 60px;

}

.fw-title {
    font-size: 22px;
    font-weight: 500;
    color: #000000;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 18px;
}

.footer-top .fw-logo img {
    max-height: 105px;
    margin-bottom: 20px;
}


.fw-title::after {
    content: "";
    width: 30px;
    height: 4px;
    background: rgb(218, 214, 214);
    position: absolute;
    left: 0;
    bottom: 0;
    border-radius: 4px;
}

.footer-top .list-wrap li {
    display: flex;
}

.list-wrap .address a {
    line-height: 1.4;
}

footer .container {
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
}

.footer-info-list ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.footer-info-list li {
    margin-bottom: 18px;
}

.footer-info-list a {
    color: #080808;
    text-decoration: none;
    font-size: 17px;
    transition: .3s;
}



.footer-info-list a:hover {
    color: #2e2e2e;

}

.footer-content p {
    color: #080808;
    line-height: 1.4;
    font-size: 16px;
}

.footer-social ul {
    display: flex;
    gap: 15px;
    margin-top: 30px;
}

.footer-social a {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .08);
    transition: .35s;
}

.footer-social img {
    max-height: 105px;
}

.footer-social a:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(13, 110, 253, .25);
}


.footer-info-list .icon {
    min-width: 24px;
    height: 24px;
    /*background: #eef5ff;*/
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: rgb(15, 15, 15);

    flex-shrink: 0;
}

.footer-info-list svg {
    width: 24px;
    height: 24px;

}

.wrapper-footer-widgets {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1.2fr;
    gap: 70px;
}


.footer-bottom {
    background: rgb(15, 15, 15);
    padding: 25px 0;
    z-index: 99999;
}

.copyright-text {
    color: #fff;
    text-align: center;
    font-size: 16px;
}

.copyright-text a {
    color: #fff;
    transition: .3s;
}

.copyright-text a:hover {
    color: rgb(15, 15, 15);
}


@media(max-width:991px) {

    .wrapper-footer-widgets {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }

}

@media(max-width:767px) {

    .wrapper-footer-widgets {
        grid-template-columns: 1fr;
    }

    .footer-top {
        padding: 60px 0;
    }

}



.app-svg-map--world {
    svg {
        width: 100%;
        height: 100%;
    }

    path {
        fill: rgba(224, 234, 224, 1);
        stroke: #ffffff;
        opacity: 1;
        stroke-opacity: 1;
        stroke-width: 1;
        stroke-linejoin: round;
        transform: matrix(0.3474, 0, 0, 0.3474, 0, 0);
        cursor: pointer;
        fill-opacity: 1;
        transition: all 0.3s ease-in-out;
    }

    text {
        font-size: 3px;
        fill: #333;
        display: none;
        transition: all 0.3s ease-in-out;
        text-anchor: middle;
        font-family: Arial;
    }

    path,
    text {
        opacity: 1;
        display: block;
        z-index: 1;
    }

    path.is-show,
    text.is-show {
        opacity: 1;
    }

    path {

        &.is-show,
        &:hover {
            fill: rgba(65, 130, 76, 1);
        }
    }

    text {
        &.app-svg-map--world__name {}

        &.app-svg-map--world__num {
            font-size: 6px;
            transform: translate(0, 3px);
            fill: #fff;
            font-family: Arial;
        }
    }
}

@keyframes uix-cssAnim--map-dot {
    0% {
        stroke-width: 5;
    }

    50% {
        stroke-width: 0;
    }

    100% {
        stroke-width: 5;
    }
}




/* GLOWING LINES */
.path {
    fill: none;
    /* stroke: #ffffff; */
    stroke: #2563eb;
    stroke-width: 1.5;
    opacity: 0.7;
    filter: drop-shadow(0 0 6px rgba(255, 255, 255, 0.7));
}

/* MOVING PARTICLES */
.mover {
    /* fill: #ffffff; */
    fill: #2563eb;
    r: 3.5;
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 1));
}

/* DESTINATION DOTS */
.dot {
    /* fill: #111; */
    fill: #031849;
    opacity: 0.7;

}

/* INDIA HUB (MAIN FOCUS) */
.hub {
    /* fill: #ffffff; */
    fill: #2563eb;
    filter: drop-shadow(0 0 15px rgba(255, 255, 255, 1));

}

.map-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-top: 15px;
    height: 700px;


}




/* MAP (FADED BACKGROUND) */
.map-wrapper .map {
    filter: brightness(0);
    opacity: 0.15;
    width: 100%;
    min-height: fit-content;

}

.country-label {
    fill: #1e40af;
    font-size: 14px;
    font-weight: 600;
    font-family: Arial, sans-serif;
    pointer-events: none;
}


@media (max-width:991px) {

    .country-label {
        font-size: 10px;
    }

    .path {
        stroke-width: 1.2;
    }

    .hub {
        r: 6;
    }

    .dot {
        r: 3;
    }
}

@media (max-width:768px) {



    .map-wrapper {
        margin-top: 0;
    }
}



.country-point {
    cursor: pointer;
}

.dot {
    fill: red;
    stroke: #fff;
    stroke-width: 2;
    animation: blink 1.5s infinite;
}

@keyframes blink {

    0% {
        r: 4;
        opacity: 1;
    }

    50% {
        r: 7;
        opacity: .4;
    }

    100% {
        r: 4;
        opacity: 1;
    }

}

.country-point:hover .dot {
    fill: red;
}


#tooltip {
    position: fixed;
    background: #111827;
    color: #fff;
    padding: 8px 14px;
    border-radius: 8px;
    font-size: 14px;
    pointer-events: none;
    opacity: 0;
    transition: .2s;
    z-index: 9999;
    white-space: nowrap;
}


.hub {
    fill: red;
    stroke: #fff;
    stroke-width: 3;
    cursor: pointer;
    animation: hubPulse 1.8s infinite;
    filter: drop-shadow(0 0 10px #3b82f6);
}

.hub:hover {
    fill: red;
}

@keyframes hubPulse {

    0% {
        r: 7;
        opacity: 1;
        filter: drop-shadow(0 0 5px #5ceb1f);
    }

    50% {
        r: 11;
        opacity: .75;
        filter: drop-shadow(0 0 18px #3b82f6);
    }

    100% {
        r: 7;
        opacity: 1;
        filter: drop-shadow(0 0 5px #3b82f6);
    }

}



/* ==========================
   Footer Social Icons
========================== */

.footer-social .list-wrap{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0;
    padding:0;
    list-style:none;
}

.footer-social .list-wrap li{
    margin:0;
}

.footer-social .list-wrap li a{
    position:relative;
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:1px solid rgba(0,0,0,.08);
    border-radius:50%;
    overflow:hidden;
    transition:all .35s ease;
    box-shadow:0 5px 15px rgba(0,0,0,.08);
}

.footer-social .list-wrap li a::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:50%;
    transform:scale(0);
    transition:transform .35s ease;
    z-index:1;
}

.footer-social .list-wrap li a img{
    width:22px;
    height:22px;
    object-fit:contain;
    position:relative;
    z-index:2;
    transition:transform .35s ease, filter .35s ease;
    filter:none;
}

.footer-social .list-wrap li a:hover{
    transform:translateY(-6px);
    box-shadow:0 15px 30px rgba(255,107,0,.35);
}

.footer-social .list-wrap li a:hover::before{
    transform:scale(1);
}

.footer-social .list-wrap li a:hover img{
    transform:scale(1.1);
    filter:none;
}

/* Facebook */
.footer-social .list-wrap li:nth-child(1) a::before{
    background:#1877F2;
}

/* X (Twitter) */

.footer-social .list-wrap li:nth-child(2) a::before{
    background: linear-gradient(135deg, #2d2d2d, #000000);
}

.footer-social .list-wrap li:nth-child(2) a:hover{
    border-color:#000;
    box-shadow:0 15px 30px rgba(0,0,0,.35);
}

.footer-social .list-wrap li:nth-child(2) a:hover img{
    filter:brightness(0) invert(1); /* Black X icon -> White */
    transform:scale(1.1);
}

/* YouTube */
.footer-social .list-wrap li:nth-child(3) a::before{
    background:#FF0000;
}

/* LinkedIn */
.footer-social .list-wrap li:nth-child(4) a::before{
    background:#0A66C2;
}

/* Instagram */
.footer-social .list-wrap li:nth-child(5) a::before{
    background:linear-gradient(45deg,#F58529,#DD2A7B,#8134AF,#515BD4);
}

/* Responsive */

@media (max-width:767px){

    .footer-social .list-wrap{
        gap:10px;
    }

    .footer-social .list-wrap li a{
        width:42px;
        height:42px;
    }

    .footer-social .list-wrap li a img{
        width:18px;
        height:18px;
    }

}



.map-wrapper {
    margin-top: 60px;
}


@media (max-width: 768px) {
    .map-wrapper {
        display: none;
    }
}

@media (max-width: 576px) {
    .map-wrapper {
        display: none;
    }
}


.map-wrapper svg{
    width:100%;
    height:auto;
}

.map-wrapper path{

    fill:#bdbdbd;

    stroke:#ffffff;

    stroke-width:.6;

    transition:.3s;

    cursor:pointer;

}

.map-wrapper .active-country{
    pointer-events:auto;
    cursor:pointer;
}


.map-wrapper path.active-country{
    pointer-events:auto;
    cursor:pointer;
}


.map-wrapper path.active-country:hover{
    fill:#ff0d00 !important;
}


.marker {
    pointer-events: none;
}

/* Main Glow */
.marker-glow {
    fill: #ff3b30;
    opacity: .7;
    filter: blur(8px);
    animation: glow 1.5s ease-in-out infinite alternate;
}

/* Center Dot */
.marker-core {
    fill: #ff3b30;
    stroke: #fff;
    stroke-width: 2;
    animation: glowCore 1.5s ease-in-out infinite alternate;
}

/* Glow Animation */
@keyframes glow {
    0% {
        opacity: .3;
        filter: blur(6px);
    }

    100% {
        opacity: 1;
        filter: blur(14px);
    }
}

@keyframes glowCore {
    0% {
        filter: drop-shadow(0 0 2px #ff3b30)
                drop-shadow(0 0 5px #ff3b30);
    }

    100% {
        filter: drop-shadow(0 0 8px #ff3b30)
                drop-shadow(0 0 18px #ff3b30)
                drop-shadow(0 0 30px #ff3b30);
    }
}


