@font-face {
    font-family: pp-neue-machina-plain;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(../../../fonts/pp-neue-machina-plain-regular.woff2) format("woff2")
}

@font-face {
    font-family: pp-neue-machina-plain;
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url(../../../fonts/pp-neue-machina-plain-regular.woff2) format("woff2")
}

@font-face {
    font-family: neue-haas-grot-text;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(../../../fonts/neue-haas-grot-text-55-roman.woff2) format("woff2")
}

@font-face {
    font-family: neue-haas-grot-text;
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url(../../../fonts/neue-haas-grot-text-55-italic.woff2) format("woff2")
}

@font-face {
    font-family: neue-haas-grot-text;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url(../../../fonts/neue-haas-grot-text-65-medium.woff2) format("woff2")
}

@font-face {
    font-family: neue-haas-grot-text;
    font-style: italic;
    font-weight: 500;
    font-display: swap;
    src: url(../../../fonts/neue-haas-grot-text-66-medium-italic.woff2) format("woff2")
}

h1 {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase;
    text-transform: none
}

@media(min-width:768px) {
    h1 {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase
    }
}

h2 {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em
}

@media(min-width:768px) {
    h2 {
        font-size: 3.6rem
    }
}

h3 {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase;
    text-transform: none
}

@media(min-width:768px) {
    h3 {
        font-size: 5.2rem
    }
}

h4 {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    text-transform: uppercase;
    text-transform: none
}

@media(min-width:768px) {
    h4 {
        font-size: 2.4rem
    }
}

h5 {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em
}

@media(min-width:768px) {
    h5 {
        line-height: 1.1;
        font-size: 2.2rem
    }
}

.button {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    transition: color .3s ease-in-out, background-color .3s ease-in-out;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    align-self: flex-start;
    padding: 0 3.2rem;
    height: 4.4rem;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    background-color: #000000;
    border: none;
    border-radius: 2.2rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer
}

@media(min-width:768px) {
    .button {
        height: 4.8rem;
        border-radius: 2.4rem
    }
}

.button:disabled {
    background-color: hsla(0, 0%, 5%, .2);
    pointer-events: none
}

@media(pointer:fine) {
    .button:hover {
        background-color: #4a494b
    }
}

.button--with-loader {
    position: relative
}

.button--with-loader.is-loading {
    color: transparent
}

.button__loader {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    visibility: hidden
}

.button--with-loader.is-loading .button__loader {
    opacity: 1;
    visibility: visible
}

.button__icon {
    margin-left: 1rem;
    width: 1.3rem
}

.arrow-button {
    transition: background-size .3s ease-in-out;
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #0c0c0c;
    text-decoration: none;
    background: linear-gradient(90deg, hsla(0, 0%, 5%, 0), hsla(0, 0%, 5%, 0)), linear-gradient(90deg, #0c0c0c, #0c0c0c);
    background-size: 100% .1rem, 0 .1rem;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat
}

@media(pointer:fine) {

    .arrow-button.is-hover-state,
    .arrow-button:hover {
        background-size: 0 .1rem, 100% .1rem
    }
}

.arrow-button--light {
    color: #fff;
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0)), linear-gradient(90deg, #fff, #fff);
    background-size: 100% .1rem, 0 .1rem;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat
}

.arrow-button__icon {
    width: 1.4rem;
    margin-left: 1.2rem
}

.ticker {
    position: relative;
    font-size: 0;
    line-height: 1;
    overflow: hidden
}

.ticker__track {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center
}

.ticker__content-reference {
    display: inline-block;
    visibility: hidden;
    pointer-events: none
}

.rich-text-heading {
    position: relative
}

.rich-text-heading-anchor {
    position: absolute;
    top: -15rem;
    left: 0
}

.rich-text-heading--h2 {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 2rem auto
}

@media(min-width:768px) {
    .rich-text-heading--h2 {
        font-size: 3.6rem;
        margin: 3rem auto
    }
}

.rich-text-heading--h3 {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 2rem auto
}

@media(min-width:768px) {
    .rich-text-heading--h3 {
        line-height: 1.1;
        font-size: 2.2rem;
        margin: 3rem auto
    }
}

.rich-text-heading--h4 {
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em;
    font-weight: 500;
    margin: 2rem auto 1.5rem
}

@media(min-width:768px) {
    .rich-text-heading--h4 {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em;
        margin: 3rem auto 1.5rem
    }
}

.rich-text-link {
    text-decoration: underline;
    color: #0c0c0c
}

.rich-text-paragraph {
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em;
    margin: 1em auto 0
}

@media(min-width:768px) {
    .rich-text-paragraph {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.rich-text-blockquote,
.rich-text-blockquote>.rich-text-paragraph {
    line-height: 1.11;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    margin: 3rem auto;
    padding: 0;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    text-transform: uppercase
}

@media(min-width:768px) {

    .rich-text-blockquote,
    .rich-text-blockquote>.rich-text-paragraph {
        font-size: 5.2rem;
        margin: 5rem auto
    }
}

.rich-text-inline-responsive-image {
    margin: 3rem auto
}

.rich-text-ol,
.rich-text-ul {
    padding-left: 2.4rem
}

@media(min-width:768px) {

    .rich-text-ol,
    .rich-text-ul {
        padding-left: 2.8rem
    }
}

.rich-text-inline-static-timeline,
.rich-text-ol li,
.rich-text-ul li {
    margin: 3rem auto
}

.rich-text-inline-accordion {
    margin: 5rem auto
}

.inline-responsive-image {
    margin: 0
}

.inline-responsive-image__image {
    max-width: 48rem;
    margin: 0 auto;
    height: auto;
    width: 100%
}

@media(min-width:768px) {
    .inline-responsive-image__image {
        max-width: 100%
    }
}

.inline-responsive-image--mobile-only {
    display: block
}

@media(min-width:768px) {
    .inline-responsive-image--mobile-only {
        display: none
    }
}

.inline-responsive-image--desktop-only {
    display: none
}

@media(min-width:768px) {
    .inline-responsive-image--desktop-only {
        display: block
    }
}

.inline-static-timeline {
    background-color: #0c0c0c;
    color: #fff;
    padding: 4rem var(--content-padding);
    width: calc(100% + var(--content-padding)*2);
    margin-left: calc(var(--content-padding)*-1)
}

@media(min-width:768px) {
    .inline-static-timeline {
        margin-left: 0;
        width: 100%;
        padding: 8rem 4rem
    }
}

.inline-static-timeline__heading {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    text-transform: none;
    margin-bottom: 2.4rem;
    margin-top: 0;
    max-width: 51rem
}

@media(min-width:768px) {
    .inline-static-timeline__heading {
        font-size: 3.6rem;
        margin-bottom: 4rem
    }
}

.inline-static-timeline__sub-text {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2.4rem
}

.inline-static-timeline__sub-text-left,
.inline-static-timeline__sub-text-right,
.inline-static-timeline__sub-text-right-mobile {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em
}

.inline-static-timeline__sub-text-right {
    display: none
}

@media(min-width:768px) {
    .inline-static-timeline__sub-text-right {
        display: block
    }
}

@media(min-width:1024px) {
    .inline-static-timeline__sub-text-right {
        display: none
    }
}

@media(min-width:1440px) {
    .inline-static-timeline__sub-text-right {
        display: block
    }
}

.inline-static-timeline__sub-text-right-mobile {
    display: block;
    margin-top: 3.4rem
}

@media(min-width:768px) {
    .inline-static-timeline__sub-text-right-mobile {
        display: none
    }
}

@media(min-width:1024px) {
    .inline-static-timeline__sub-text-right-mobile {
        display: block
    }
}

@media(min-width:1440px) {
    .inline-static-timeline__sub-text-right-mobile {
        display: none
    }
}

.inline-static-timeline__items {
    padding: 0;
    margin: 0;
    list-style: none;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 3rem;
    gap: 3rem
}

@media(min-width:768px) {
    .inline-static-timeline__items {
        grid-template-columns: repeat(3, 1fr);
        column-gap: 2rem;
        row-gap: 3rem
    }
}

@media(min-width:1024px) {
    .inline-static-timeline__items {
        grid-template-columns: 1fr;
        gap: 3rem
    }
}

@media(min-width:1280px) {
    .inline-static-timeline__items {
        column-gap: 2rem;
        row-gap: 3rem
    }
}

@media(min-width:1440px) {
    .inline-static-timeline__items {
        gap: 2rem;
        grid-template-columns: repeat(3, 1fr)
    }
}

.inline-static-timeline__item {
    display: flex;
    flex-direction: column
}

.inline-static-timeline__inner-wrapper {
    height: 100%;
    display: flex;
    flex-direction: column
}

.inline-static-timeline__item-year {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0 0 2rem
}

@media(min-width:768px) {
    .inline-static-timeline__item-year {
        line-height: 1.1;
        font-size: 2.2rem
    }
}

.inline-static-timeline__item-inner {
    background: linear-gradient(180deg, #ff38bb 5%, #ff8038 55%, #f5be66 65%, #f1fff7 93%);
    position: relative;
    border-radius: .5rem;
    padding: 2.6rem 3.2rem;
    height: 100%
}

.inline-static-timeline__item-black-bg {
    z-index: 1;
    position: absolute;
    border-radius: .5rem;
    top: .1rem;
    left: .1rem;
    width: calc(100% - .2rem);
    height: calc(100% - .2rem);
    background-color: #0c0c0c
}

.inline-static-timeline__item-text-content {
    position: relative;
    z-index: 2
}

.inline-static-timeline__item-heading {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0
}

@media(min-width:768px) {
    .inline-static-timeline__item-heading {
        line-height: 1.1;
        font-size: 2.2rem
    }
}

.inline-static-timeline__item-highlights {
    padding: 0;
    margin: 0;
    list-style: none
}

.inline-static-timeline__item-highlight {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    margin-top: 2.4rem
}

.inline-accordion-item {
    border-top: .1rem solid #cecece;
    counter-increment: inline-accordion-counter
}

.inline-accordion-item:last-child {
    border-bottom: .1rem solid #cecece
}

.inline-accordion-item__heading-wrapper {
    margin: 0
}

.inline-accordion-item__heading {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    position: relative;
    display: grid;
    grid-template-columns: 2rem 1fr;
    align-items: center;
    padding: 1rem 0;
    grid-gap: 2rem;
    gap: 2rem;
    width: 100%;
    color: #0c0c0c;
    text-align: left;
    background-color: transparent;
    border: none;
    min-height: 8.5rem
}

@media(min-width:768px) {
    .inline-accordion-item__heading {
        line-height: 1.1;
        font-size: 2.2rem;
        min-height: 10.5rem
    }
}

.inline-accordion-item--has-description .inline-accordion-item__heading {
    cursor: pointer;
    grid-template-columns: 2rem 1fr 4.4rem
}

.inline-accordion-item__heading-counter:before {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    content: counter(inline-accordion-counter, decimal-leading-zero);
    display: block
}

.inline-accordion-item__heading-text-wrapper {
    position: relative
}

.inline-accordion-item__heading-text {
    transition: background-size .3s ease-in-out;
    background: linear-gradient(90deg, hsla(0, 0%, 5%, 0), hsla(0, 0%, 5%, 0)), linear-gradient(90deg, #0c0c0c, #0c0c0c);
    background-size: 100% .1rem, 0 .1rem;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat
}

@media(pointer:fine) {
    .inline-accordion-item--has-description:hover .inline-accordion-item__heading-text {
        background-size: 0 .1rem, 100% .1rem
    }
}

.inline-accordion-item__heading-icon-container {
    width: 4rem;
    position: inherit
}

.inline-accordion-item__heading-icon {
    width: 100%
}

.inline-accordion-item__description-wrapper {
    transition: height .3s ease-in-out;
    height: 0;
    overflow: hidden
}

@media(min-width:0)and (prefers-reduced-motion) {
    .inline-accordion-item__description-wrapper {
        transition-duration: 0s
    }
}

.inline-accordion-item__description {
    padding-bottom: 4rem
}

.inline-accordion-item__paragraph {
    margin: 0
}

.inline-accordion {
    counter-reset: inline-accordion-counter
}

.inline-accordion__kicker {
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em;
    font-weight: 500;
    margin: 0 0 3rem
}

@media(min-width:768px) {
    .inline-accordion__kicker {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.rich-text-media {
    display: flex;
    flex-direction: column;
    gap: .8rem;
    margin: 2rem auto 0;
    padding: 0 2rem;
    width: 100%;
    max-width: 96.5rem
}

@media(min-width:768px) {
    .rich-text-media {
        margin: 3rem auto 0
    }
}

.rich-text-media__image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto
}

.rich-text-media__video-wrapper {
    position: relative
}

.rich-text-media__video {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto
}

.rich-text-media__button {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    position: absolute;
    inset: 0;
    display: block;
    padding: 0;
    background-color: transparent;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    overflow: hidden;
    opacity: 0;
    visibility: hidden
}

.rich-text-media--with-active-video-cover .rich-text-media__button {
    opacity: 1;
    visibility: visible
}

.rich-text-media__cover-image {
    transition: transform .3s ease-in-out;
    object-fit: cover;
    width: 100%;
    height: 100%
}

@media(min-width:0)and (pointer:fine) {
    .rich-text-media__button:hover>.rich-text-media__cover-image {
        transform: scale(1.02)
    }
}

.rich-text-media__cover-icon-wrapper {
    transition: transform .3s ease-in-out;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 12rem;
    height: 12rem;
    background-color: color-mix(in srgb, transparent, #2e2e2e 20%);
    border-radius: 50%
}

@media(min-width:0)and (pointer:fine) {
    .rich-text-media__button:hover>.rich-text-media__cover-icon-wrapper {
        transform: translate(-50%, -50%) scale(1.02)
    }
}

.rich-text-media__cover-icon {
    width: 4.8rem;
    height: 4.8rem
}

.rich-text-media__caption {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0
}

.rich-text-i-frame {
    --rich-text-i-frame-current-aspect-ratio: var(--rich-text-i-frame-aspect-ratio, 16/9);
    display: flex;
    flex-direction: column;
    gap: .8rem;
    margin: 2rem auto 0;
    padding: 0 2rem;
    width: 100%;
    max-width: 96.5rem
}

@media(min-width:768px) {
    .rich-text-i-frame {
        margin: 3rem auto 0
    }
}

.rich-text-i-frame__code {
    display: block;
    aspect-ratio: var(--rich-text-i-frame-current-aspect-ratio);
    width: 100%;
    max-width: 100%;
    height: auto
}

.rich-text-i-frame__code>iframe {
    display: block;
    width: 100%;
    height: 100%
}

.rich-text-i-frame__caption {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0
}

.media-carousel-image-item {
    display: block;
    width: 100%;
    height: 100%
}

.media-carousel-image-item__image,
.media-carousel-video-item {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.media-carousel {
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
    margin: 2rem auto;
    padding: 0 2rem 0 1rem;
    width: 100%;
    max-width: 96.5rem
}

@media(min-width:768px) {
    .media-carousel {
        gap: 4rem
    }
}

@media(min-width:1280px) {
    .media-carousel {
        padding: 0 2rem 0 0
    }
}

@media(min-width:768px) {
    .media-carousel {
        margin: 3rem auto
    }
}

.media-carousel--small-tiles {
    margin: 2rem auto
}

@media(min-width:768px) {
    .media-carousel--small-tiles {
        margin: 3rem auto
    }
}

.media-carousel__carousel-wrapper {
    width: 100%;
    overflow: visible !important
}

.media-carousel__carousel {
    display: flex;
    align-items: stretch;
    aspect-ratio: 16/9
}

.media-carousel--small-tiles .media-carousel__carousel {
    aspect-ratio: unset;
    height: 14rem
}

@media(min-width:768px) {
    .media-carousel--small-tiles .media-carousel__carousel {
        height: 20rem
    }
}

.media-carousel__item {
    display: flex !important;
    flex-shrink: 0;
    flex-grow: 1;
    padding: 0 0 0 1rem;
    width: unset !important;
    height: unset !important;
    max-height: 100%
}

@media(min-width:1280px) {
    .media-carousel__item {
        padding: 0 0 0 2rem
    }
}

.media-carousel__item--image {
    display: flex !important;
    aspect-ratio: var(--media-carousel-image-item-aspect-ratio)
}

.media-carousel__item--video {
    aspect-ratio: 16/9;
    width: auto !important;
    height: 100% !important;
    max-height: unset
}

@media(min-width:1280px) {
    .media-carousel__item--video {
        padding: 0 0 0 2rem
    }
}

.media-carousel__actions {
    transition: height .3s ease-in-out, opacity .3s ease-in-out;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.5rem;
    padding: 0 0 0 1rem;
    height: 0;
    opacity: 0
}

@media(min-width:1280px) {
    .media-carousel__actions {
        padding: 0 0 0 2rem
    }
}

.media-carousel--has-actions .media-carousel__actions {
    height: 4.6rem;
    opacity: 1
}

@media(min-width:768px) {
    .media-carousel--has-actions .media-carousel__actions {
        height: 7.2rem
    }
}

.media-carousel__button {
    transition: opacity .3s ease-in-out;
    display: block;
    padding: 0;
    width: 4.6rem;
    height: 4.6rem;
    background-color: transparent;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer
}

@media(min-width:768px) {
    .media-carousel__button {
        width: 7.2rem;
        height: 7.2rem
    }
}

.media-carousel--small-tiles .media-carousel__button {
    width: 4.6rem;
    height: 4.6rem
}

.media-carousel--has-actions.media-carousel--small-tiles .media-carousel__actions {
    height: 4.6rem
}

.media-carousel__button:disabled {
    opacity: .6;
    pointer-events: none
}

.media-carousel__button-icon {
    width: 100%;
    height: 100%
}

.navigation-toggle {
    --current-navigation-toggle-color: var(--navigation-toggle-color, var(--color-white));
    --current-navigation-toggle-background-color: var(--navigation-toggle-background-color, transparent);
    --current-navigation-toggle-border-color: var(--navigation-toggle-border-color, var(--color-white));
    --current-navigation-toggle-box-shadow: var(--navigation-toggle-box-shadow, none);
    position: relative;
    padding: 0;
    width: 4.2rem;
    height: 4.2rem;
    background-color: var(--current-navigation-toggle-background-color);
    border: .1rem solid var(--current-navigation-toggle-border-color);
    border-radius: .8rem;
    box-shadow: var(--current-navigation-toggle-box-shadow);
    pointer-events: all;
    cursor: pointer;
    transition: background-color .3s ease-in-out, border-color .3s ease-in-out, box-shadow .3s ease-in-out
}

.navigation[data-is-mobile-navigation-active=true] .navigation-toggle {
    --navigation-toggle-color: var(--color-figure-black);
    --navigation-toggle-background-color: var(--color-white);
    --navigation-toggle-border-color: var(--color-figure-black);
    --navigation-toggle-box-shadow: none
}

.navigation-toggle:after,
.navigation-toggle:before {
    content: "";
    position: absolute;
    top: 1.2rem;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 2.3rem;
    height: .1rem;
    background-color: var(--current-navigation-toggle-color);
    transition: top .3s ease-in-out, background-color .3s ease-in-out, opacity .3s ease-in-out
}

.navigation-toggle:after {
    top: unset;
    bottom: 1.2rem;
    transition: bottom .3s ease-in-out, background-color .3s ease-in-out, opacity .3s ease-in-out
}

.navigation-toggle.is-active:before {
    top: 50%;
    opacity: 0
}

.navigation-toggle.is-active:after {
    bottom: 50%;
    opacity: 0
}

.navigation-toggle__icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 2.3rem;
    height: .1rem;
    background-color: var(--current-navigation-toggle-color);
    transition: transform .3s ease-in-out, background-color .3s ease-in-out
}

@media(min-width:1024px) {
    .navigation-toggle__icon {
        display: none
    }
}

.navigation-toggle.is-active .navigation-toggle__icon {
    transform: translate(-50%, -50%) rotate(45deg);
    width: 2.3rem
}

.navigation-toggle.is-active .navigation-toggle__icon--secondary {
    transform: translate(-50%, -50%) rotate(135deg);
    width: 2.3rem
}

.navigation-background {
    content: "";
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 200;
    width: 100%;
    height: 7.4rem;
    -webkit-backdrop-filter: blur(1.6rem);
    backdrop-filter: blur(1.6rem);
    -webkit-mask: linear-gradient(#000, transparent 100%);
    mask: linear-gradient(#000, transparent 100%);
    pointer-events: none;
    transition: opacity .3s ease-in-out
}

@media(min-width:768px) {
    .navigation-background {
        height: 9.8rem
    }
}

.navigation-background:has(+[data-is-scrolled=true]):not(:has(+[data-is-scrolling-back=true])) {
    opacity: 0
}

.navigation {
    --current-navigation-logo-color: var(--navigation-logo-color, var(--color-white));
    --current-navigation-logo-color-hover: var(--navigation-logo-color-hover, var(--color-figure-black));
    --current-navigation-logo-background-color: var(--navigation-logo-background-color, transparent);
    --current-navigation-logo-background-color-hover: var(--navigation-logo-background-color-hover, var(--color-white));
    --current-navigation-logo-border-color: var(--navigation-logo-border-color, transparent);
    --current-navigation-logo-border-color-hover: var(--navigation-logo-border-color-hover, color-mix(in srgb, transparent, var(--color-black) 10%));
    --current-navigation-logo-box-shadow: var(--navigation-logo-box-shadow, none);
    --current-navigation-logo-box-shadow-hover: var(--navigation-logo-box-shadow-hover, 0 0.4rem 2rem 0 color-mix(in srgb, transparent, var(--color-black) 8%));
    --current-navigation-link-color: var(--navigation-link-color, var(--color-white));
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 900;
    pointer-events: none;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

.navigation[data-is-scrolled=true] {
    opacity: 0;
    visibility: hidden
}

.navigation[data-is-scrolling-back=true] {
    opacity: 1;
    visibility: visible
}

@media(min-width:768px) {
    .navigation[data-is-scrolled=true][data-is-scrolling-back=true]:not([data-is-mobile-navigation-active=true]) {
        --navigation-logo-background-color: transparent;
        --navigation-logo-border-color: transparent;
        --navigation-logo-box-shadow: none
    }
}

.navigation[data-is-mobile-navigation-active=true] {
    --navigation-logo-color: var(--color-figure-black);
    --navigation-logo-color-hover: var(--color-figure-black);
    --navigation-logo-background-color: var(--color-white);
    --navigation-logo-background-color-hover: var(--color-white);
    --navigation-logo-box-shadow: 0 0.4rem 2rem color-mix(in srgb, transparent, var(--color-black) 8%)
}

.navigation__content {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.6rem 2rem
}

@media(min-width:768px) {
    .navigation__content {
        padding: 2.8rem 2rem
    }
}

@media(min-width:1024px) {
    .navigation__content {
        padding: 2.8rem 4.8rem
    }
}

.navigation__content:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 7.4rem;
    background: linear-gradient(180deg, color-mix(in srgb, var(--color-black), transparent 50%), transparent);
    pointer-events: none
}

@media(min-width:768px) {
    .navigation__content:before {
        height: 9.8rem
    }
}

.navigation__home-link {
    position: relative;
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4.2rem;
    height: 4.2rem;
    color: var(--current-navigation-logo-color);
    background-color: var(--current-navigation-logo-background-color);
    border: .1rem solid var(--current-navigation-logo-border-color);
    box-shadow: var(--current-navigation-logo-box-shadow);
    pointer-events: all;
    border-radius: .8rem;
    transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out, box-shadow .3s ease-in-out, opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:768px) {
    .navigation__home-link {
        left: -1.2rem
    }
}

@media(min-width:768px)and (pointer:fine) {
    .navigation__home-link:hover {
        color: var(--current-navigation-logo-color-hover);
        background-color: var(--current-navigation-logo-background-color-hover);
        border-color: var(--current-navigation-logo-border-color-hover);
        box-shadow: var(--current-navigation-logo-box-shadow-hover)
    }
}

.navigation__logo {
    width: 1.5rem;
    height: auto
}

.navigation__links-wrapper {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 975;
    background-color: var(--color-white);
    opacity: 0;
    visibility: hidden;
    overflow-y: auto;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:768px) {
    .navigation__links-wrapper {
        position: relative;
        top: -.2rem;
        right: unset;
        bottom: unset;
        left: unset;
        z-index: unset;
        background-color: unset;
        opacity: unset;
        visibility: unset;
        overflow-y: unset
    }
}

.navigation[data-is-mobile-navigation-active=true] .navigation__links-wrapper {
    opacity: 1;
    visibility: visible;
    pointer-events: all
}

.navigation__links {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4.1rem;
    padding: 8.8rem 2rem 2rem;
    counter-reset: navigation-counter
}

@media(min-width:768px) {
    .navigation__links {
        display: flex;
        flex-direction: unset;
        align-items: center;
        gap: 2.4rem;
        padding: unset;
        counter-reset: unset
    }
}

@media(min-width:1024px) {
    .navigation__links {
        gap: 5.6rem
    }
}

.navigation__link-wrapper {
    position: relative;
    width: 100%
}

@media(min-width:768px) {
    .navigation__link-wrapper {
        position: unset;
        width: unset
    }
}

.navigation__link-wrapper:not(:first-child):before {
    content: "";
    position: absolute;
    top: -2rem;
    right: 0;
    left: 0;
    transform: translateY(-.1rem);
    width: 100%;
    height: .1rem;
    background-color: color-mix(in srgb, transparent, var(--color-figure-black) 20%)
}

@media(min-width:768px) {
    .navigation__link-wrapper:not(:first-child):before {
        content: unset
    }
}

.navigation__link {
    position: relative;
    display: flex;
    align-items: center;
    line-height: 1.11;
    color: var(--color-figure-black);
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    text-decoration: none;
    text-transform: uppercase;
    overflow: hidden;
    counter-increment: navigation-counter
}

@media(min-width:768px) {
    .navigation__link {
        color: var(--current-navigation-link-color);
        line-height: 1;
        font-size: 1.4rem;
        letter-spacing: .02em;
        text-align: center;
        text-decoration: underline;
        text-underline-offset: .2rem;
        text-decoration-thickness: .125rem;
        -webkit-text-decoration-color: transparent;
        text-decoration-color: transparent;
        overflow: unset;
        counter-increment: unset;
        pointer-events: all;
        -webkit-text-stroke: .05rem transparent;
        transition: color .3s ease-in-out, text-decoration-color .3s ease-in-out, -webkit-text-stroke .3s ease-in-out
    }
}

@media(min-width:768px)and (pointer:fine) {
    .navigation__link:hover {
        -webkit-text-decoration-color: currentcolor;
        text-decoration-color: currentcolor;
        -webkit-text-stroke: .075rem var(--current-navigation-link-color)
    }
}

@media(min-width:768px) {
    .navigation__link.is-active {
        -webkit-text-stroke: .075rem var(--current-navigation-link-color)
    }
}

.navigation__link:before {
    content: counter(navigation-counter, decimal-leading-zero);
    position: relative;
    top: .3rem;
    margin: 0 2.4rem 0 0;
    letter-spacing: 0;
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    text-transform: uppercase
}

@media(min-width:768px) {
    .navigation__link:before {
        font-size: 2.4rem;
        content: "";
        position: absolute;
        inset: -1rem;
        margin: unset;
        font-family: unset;
        font-feature-settings: unset;
        letter-spacing: unset
    }
}

.navigation__link-label {
    position: relative;
    top: .4rem
}

@media(min-width:768px) {
    .navigation__link-label {
        top: .15rem
    }
}

.navigation__toggle {
    margin: 0 0 0 auto;
    z-index: 1000
}

@media(min-width:768px) {
    .navigation__toggle {
        display: none
    }
}

.contact-modal {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 5000;
    display: flex;
    justify-content: flex-end;
    background-color: hsla(0, 0%, 5%, .5);
    opacity: 0;
    visibility: hidden
}

.contact-modal.is-active {
    opacity: 1;
    visibility: visible
}

.contact-modal__content {
    transition: transform .3s ease-in-out;
    position: relative;
    transform: translateX(100%);
    width: 100%;
    max-width: 49.3rem;
    background-color: #f6f6ef
}

.contact-modal__button {
    transition: color .3s ease-in-out, background-color .3s ease-in-out;
    position: absolute;
    top: 2rem;
    right: 2rem;
    padding: 0;
    width: 3rem;
    height: 3rem;
    color: #0c0c0c;
    background-color: #fff;
    border-radius: .4rem;
    border: none;
    cursor: pointer
}

@media(min-width:768px) {
    .contact-modal__button {
        width: 4rem;
        height: 4rem
    }
}

.contact-modal__button:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 4.4rem;
    height: 4.4rem
}

@media(pointer:fine) {
    .contact-modal__button:hover {
        background-color: #797af2
    }
}

.contact-modal__button-icon:after,
.contact-modal__button-icon:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    display: block;
    width: 2rem;
    height: .1rem;
    background-color: currentcolor
}

@media(min-width:768px) {

    .contact-modal__button-icon:after,
    .contact-modal__button-icon:before {
        width: 2.3rem
    }
}

.contact-modal__button-icon:after {
    transform: translate(-50%, -50%) rotate(135deg)
}

.contact-modal.is-active .contact-modal__content {
    transform: translateX(0)
}

.contact-modal__main-wrapper {
    padding: 8rem 2rem;
    height: 100%;
    overflow-y: auto
}

@media(min-width:768px) {
    .contact-modal__main-wrapper {
        padding: 6rem 2rem
    }
}

.contact-modal__main {
    display: flex;
    flex-direction: column
}

.is-success .contact-modal__main {
    height: 100%;
    display: flex;
    justify-content: center
}

.contact-modal__main-inner {
    display: flex;
    flex-direction: column;
    gap: 3rem
}

@media(min-width:768px) {
    .contact-modal__main-inner {
        gap: 4.2rem
    }
}

.contact-modal__text-container {
    display: flex;
    flex-direction: column;
    gap: 2rem
}

@media(min-width:768px) {
    .contact-modal__text-container {
        gap: 3rem
    }
}

.contact-modal__heading {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0
}

@media(min-width:768px) {
    .contact-modal__heading {
        font-size: 3.6rem
    }
}

.contact-modal__description {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    margin: 0
}

@media(min-width:768px) {
    .contact-modal__description {
        font-size: 1.6rem
    }
}

.contact-modal__form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

@media(min-width:768px) {
    .contact-modal__form {
        gap: 2rem
    }
}

.contact-modal__fields {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    grid-gap: 2rem;
    gap: 2rem
}

.contact-modal__fields--2-col {
    grid-template-columns: 1fr
}

@media(min-width:768px) {
    .contact-modal__fields--2-col {
        grid-template-columns: repeat(2, .5fr)
    }
}

.contact-modal__field,
.contact-modal__submit {
    width: 100%
}

.contact-modal__success {
    display: flex;
    flex-direction: column;
    gap: 2.5rem
}

@media(min-width:768px) {
    .contact-modal__success {
        gap: 3rem
    }
}

.contact-modal__success-heading {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0
}

@media(min-width:768px) {
    .contact-modal__success-heading {
        font-size: 3.6rem
    }
}

.contact-modal__success-description {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .contact-modal__success-description {
        font-size: 1.6rem
    }
}

.contact-modal__state-text {
    line-height: 0;
    color: transparent;
    font-size: 0;
    text-align: center;
    margin: 0
}

.contact-modal__state-text.is-visible {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    color: #0c0c0c
}

.is-error .contact-modal__state-text.is-visible {
    color: #dd2424
}

.grecaptcha-badge {
    visibility: hidden
}

.contact-modal__recaptcha-text {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    color: hsla(0, 0%, 5%, .6);
    text-align: center;
    margin: 0
}

.contact-modal__recaptcha-text a {
    color: hsla(0, 0%, 5%, .6)
}

.footer {
    position: relative
}

.footer:before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #b2b2b2
}

.footer__content-wrapper {
    position: relative;
    z-index: 5;
    padding: 6rem 2rem 2rem;
    background-color: color-mix(in srgb, transparent, var(--color-white) 75%)
}

@media(min-width:768px) {
    .footer__content-wrapper {
        padding: 9.8rem 4.8rem 4rem
    }
}

.footer__content {
    width: 100%;
    margin: 0 auto
}

.footer__top {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 6rem;
    gap: 6rem
}

@media(min-width:1024px) {
    .footer__top {
        grid-template-columns: repeat(2, .5fr)
    }
}

.footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 3.2rem 0 0
}

@media(min-width:1024px) {
    .footer__bottom {
        margin: 9.6rem 0 0
    }
}

.footer__left-inner {
    width: 100%
}

.footer__logo {
    width: 100%;
    height: auto;
    margin: 0 0 6rem
}

@media(min-width:768px) {
    .footer__logo {
        margin: 0 0 8rem;
        max-width: 46.2rem
    }
}

.footer__newsletter-container {
    width: 100%;
    max-width: 45.2rem
}

.footer__newsletter-heading {
    margin: 0 0 .8rem;
    color: var(--color-figure-black);
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    text-transform: none
}

@media(min-width:768px) {
    .footer__newsletter-heading {
        line-height: 1.1;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 2.2rem;
        font-weight: 400;
        letter-spacing: -.01em;
        text-transform: none
    }
}

.footer__newsletter-description {
    margin: 0 0 2.4rem;
    color: var(--color-figure-black);
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .footer__newsletter-description {
        font-size: 1.6rem
    }
}

.footer__newsletter-component {
    margin: 2.4rem 0 0
}

.footer__newsletter-component.is-hidden {
    pointer-events: none;
    visibility: none;
    opacity: 0
}

.footer__social-links {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 2.4rem;
    margin: 4rem 0 0
}

@media(min-width:768px) {
    .footer__social-links {
        margin: 2.4rem 0 0
    }
}

.footer__social-link {
    transition: opacity .3s ease-in-out;
    transition-duration: .2s;
    display: block;
    color: var(--color-figure-black)
}

@media(pointer:fine) {
    .footer__social-link:hover {
        opacity: .6
    }
}

.footer__social-link-icon {
    display: block;
    width: 2rem
}

.footer__social-link--tik-tok .footer__social-link-icon {
    width: 1.3rem
}

.footer__social-link--instagram .footer__social-link-icon {
    width: 1.6rem
}

.footer__social-link--linked-in .footer__social-link-icon {
    width: 1.7rem
}

.footer__social-link--youtube .footer__social-link-icon {
    width: 2.1rem
}

.footer__contact-button {
    margin: 4rem 0 0;
    background-color: transparent;
    color: var(--color-figure-black);
    padding: 0;
    border-radius: 0;
    border: none;
    cursor: pointer
}

@media(min-width:1024px) {
    .footer__contact-button {
        margin: 8rem 0 0
    }
}

.footer__primary-links {
    counter-reset: footer-primary-links-counter
}

.footer__primary-link {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase;
    counter-increment: footer-primary-links-counter;
    text-decoration: none;
    color: var(--color-figure-black);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 1.6rem 0
}

@media(min-width:768px) {
    .footer__primary-link {
        font-size: 5.2rem;
        padding: 2rem 0
    }
}

.footer__primary-link:first-child {
    padding-top: 0
}

.footer__primary-link:not(:first-child) {
    border-top: .1rem solid color-mix(in srgb, transparent, var(--color-figure-black) 20%)
}

.footer__primary-link-label {
    transition: background-size .3s ease-in-out;
    display: inline-block;
    margin: 0 0 -.4rem;
    color: var(--color-figure-black);
    background: linear-gradient(to right, transparent, transparent), linear-gradient(to right, var(--color-figure-black), var(--color-figure-black));
    background-size: 100% .3rem, 0 .3rem;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat
}

@media(min-width:768px) {
    .footer__primary-link-label {
        margin: 0 0 -.2rem
    }
}

@media(min-width:768px)and (pointer:fine) {
    .footer__primary-link:hover .footer__primary-link-label {
        background-size: 0 .3rem, 100% .3rem
    }
}

.footer__primary-link:before {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    text-transform: uppercase;
    content: counter(footer-primary-links-counter, decimal-leading-zero);
    display: block;
    margin: 0 2rem 0 0;
    color: var(--color-figure-black)
}

@media(min-width:768px) {
    .footer__primary-link:before {
        font-size: 2.4rem;
        margin: 0 3rem 0 0
    }
}

.footer__secondary-links {
    display: grid;
    grid-template-columns: repeat(2, .5fr);
    width: 100%;
    grid-gap: 1.6rem 3.4rem;
    gap: 1.6rem 3.4rem
}

@media(min-width:768px) {
    .footer__secondary-links {
        display: flex
    }
}

.footer__copyright {
    letter-spacing: -.01em;
    margin: 0 auto 0 0
}

.footer__copyright,
.footer__secondary-link {
    color: color-mix(in srgb, transparent, var(--color-figure-black) 60%)
}

.footer__secondary-link {
    transition: opacity .3s ease-in-out;
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline
}

@media(min-width:0)and (pointer:fine) {
    .footer__secondary-link:hover {
        opacity: 1
    }
}

.footer__secondary-link:nth-child(2n) {
    text-align: right
}

.footer:has(.footer__extension-background) {
    overflow: hidden
}

.footer:has(.footer__extension-background) .hero-v3 {
    background-color: transparent
}

.footer.footer:has(.footer__extension-background) .footer__content-wrapper {
    -webkit-backdrop-filter: blur(1rem);
    backdrop-filter: blur(1rem)
}

.footer__extension-background {
    position: absolute;
    inset: 0;
    z-index: 5
}

.footer__extension-background-image {
    object-position: top center;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.section {
    position: relative
}

.section--large-margin {
    margin: 8rem 0
}

@media(min-width:768px) {
    .section--large-margin {
        margin: 16rem 0
    }
}

.section--small-margin {
    margin: 6rem 0
}

@media(min-width:768px) {
    .section--small-margin {
        margin: 12rem 0
    }
}

.section--with-background {
    margin: unset
}

.section--with-background.section--large-margin {
    padding: 8rem var(--content-padding)
}

@media(min-width:768px) {
    .section--with-background.section--large-margin {
        padding: 16rem var(--content-padding)
    }
}

.section--with-background.section--small-margin {
    padding: 6rem var(--content-padding)
}

@media(min-width:768px) {
    .section--with-background.section--small-margin {
        padding: 12rem var(--content-padding)
    }
}

.section--dark {
    background-color: #0c0c0c
}

.section--tan {
    background-color: #f6f6ef
}

.section--dark+.section--dark:not(.careers-listing-module),
.section--tan+.section--tan:not(.careers-listing-module) {
    padding-top: 0
}

@media(max-width:2559.98px) {
    .section--with-background+.section--full-width-image {
        margin-top: 0
    }
}

@media(min-width:768px) {
    .section--with-background.section--mission-module {
        padding-bottom: 12rem
    }
}

.section__anchor {
    position: absolute;
    top: -7.2rem
}

@media(min-width:768px) {
    .section__anchor {
        top: -12.8rem
    }
}

.hero-video-progress {
    transform: rotate(-90deg);
    margin: 0 0 -.35rem -.35rem;
    width: 5.2rem;
    height: 5.2rem
}

.hero-video-progress__progress-circle {
    transition-timing-function: linear;
    stroke: linear-gradient(180deg, #ff38bb 5%, #ff8038 55%, #f5be66 65%, #f1fff7 93%)
}

.hero-video-progress__progress-circle--blur {
    transition: opacity .3s ease-in-out;
    opacity: 0
}

@media(pointer:fine) {
    .hero-video-progress.is-hovering .hero-video-progress__progress-circle--blur {
        opacity: 1
    }
}

.hero-video-progress__linear-gradient-stop-1 {
    stop-color: #ff38bb
}

.hero-video-progress__linear-gradient-stop-2 {
    stop-color: #ff8038
}

.hero-video-progress__linear-gradient-stop-3 {
    stop-color: #f5be66
}

.hero-video-progress__linear-gradient-stop-4 {
    stop-color: #f1fff7
}

.hero__content {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    padding: 8.2rem var(--content-padding) 3rem;
    width: 100%;
    height: 100svh;
    min-height: 50rem;
    background-color: #0c0c0c
}

@media(min-width:768px) {
    .hero__content {
        flex-direction: row;
        justify-content: space-between;
        padding: 11.6rem var(--content-padding) 3rem;
        gap: 4rem;
        min-height: 60rem
    }
}

@media(max-width:767.98px) {
    .hero--is-home .hero__content {
        padding: 1.5rem 7.2rem 3rem var(--content-padding)
    }
}

.hero__content:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 36rem;
    background: linear-gradient(180deg, #000 14%, transparent 88%);
    opacity: .6;
    z-index: 5
}

@media(min-width:768px) {
    .hero__content:before {
        height: 46rem;
        top: unset;
        bottom: 0;
        background: linear-gradient(0deg, #000 24%, transparent 72%)
    }
}

.hero--layout-2 .hero__content:before {
    bottom: auto;
    top: 0;
    background: linear-gradient(180deg, #000 14%, transparent 88%)
}

.hero__main {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 54.4rem;
    z-index: 10;
    justify-content: flex-end
}

.hero__main:last-child {
    margin: auto 0 0
}

.hero--layout-2 .hero__main {
    height: 100%;
    justify-content: space-between;
    max-width: 61rem
}

.hero__heading {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0;
    color: #fff;
    text-transform: unset
}

@media(min-width:768px) {
    .hero__heading {
        font-size: 3.6rem
    }
}

.hero--layout-2 .hero__heading {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase;
    margin-bottom: 1.3rem
}

@media(min-width:768px) {
    .hero--layout-2 .hero__heading {
        font-size: 5.2rem;
        font-size: 3rem
    }
}

@media(min-width:1024px) {
    .hero--layout-2 .hero__heading {
        font-size: 5.2rem
    }
}

.hero__description {
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em;
    color: #fff
}

@media(min-width:768px) {
    .hero__description {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.hero__description:not(:first-child) {
    margin: 1.2rem 0 0
}

@media(min-width:768px) {
    .hero__description:not(:first-child) {
        margin: 3rem 0 0
    }
}

.hero__actions {
    display: flex;
    align-items: center;
    gap: 1rem
}

@media(min-width:768px) {
    .hero__actions {
        gap: 2.8rem
    }
}

.hero--layout-2 .hero__actions {
    margin-bottom: 2rem
}

@media(min-width:768px) {
    .hero--layout-2 .hero__actions {
        margin-bottom: 0
    }
}

.hero__actions:not(:first-child) {
    margin: 3rem 0 0
}

.hero__video-toggle {
    position: relative;
    padding: 0;
    background: none;
    border: none;
    cursor: pointer
}

.hero__icon-pause {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: space-between;
    width: .9rem;
    opacity: 0;
    visibility: hidden
}

.hero__icon-pause:after,
.hero__icon-pause:before {
    content: "";
    display: block;
    width: .1rem;
    height: 1.8rem;
    background: linear-gradient(180deg, #ff38bb 5%, #ff8038 55%, #f5be66 65%, #f1fff7 93%)
}

.hero__icon-pause.hero__icon-pause--blur {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    opacity: 0;
    filter: blur(.15rem)
}

.hero__video-toggle.is-playing>.hero__icon-pause:not(.hero__icon-pause--blur) {
    opacity: 1;
    visibility: visible
}

@media(pointer:fine) {
    .hero__video-toggle.is-playing.is-hovering>.hero__icon-pause.hero__icon-pause--blur {
        opacity: 1;
        visibility: visible
    }
}

.hero__icon-play {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) translateX(.2rem);
    width: 1.2rem;
    height: auto;
    opacity: 1;
    visibility: visible
}

.hero__video-toggle.is-playing>.hero__icon-play {
    opacity: 0;
    visibility: hidden
}

.hero__icon-play--blur {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    opacity: 0;
    filter: blur(.15rem)
}

@media(pointer:fine) {
    .hero__video-toggle:not(.is-playing).is-hovering>.hero__icon-play--blur {
        opacity: 1;
        visibility: visible
    }
}

.hero__image-wrapper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.hero__image,
.hero__video {
    object-position: center;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.hero__video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.hero__secondary-content {
    position: relative;
    z-index: 5;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3.4rem;
    margin: auto 0 0;
    padding: 2rem 0 0
}

@media(min-width:768px) {
    .hero__secondary-content {
        align-items: flex-end;
        padding: unset
    }
}

.hero__newsletter {
    display: flex;
    flex-direction: column;
    padding: 2.4rem 2rem;
    width: 100%;
    background-color: hsla(0, 0%, 5%, .4);
    z-index: 10;
    border-radius: .8rem
}

@media(min-width:480px) {
    .hero__newsletter {
        padding: 2.4rem;
        max-width: 38.7rem
    }
}

@media(min-width:768px) {
    .hero__newsletter {
        margin-left: 0;
        gap: .4rem
    }
}

@media(max-width:479.98px) {
    .hero__newsletter:last-child {
        margin: 0 calc(var(--content-padding)*-1) -3rem;
        width: calc(100% + var(--content-padding)*2);
        border-radius: 0
    }
}

.hero--layout-2 .hero__newsletter {
    background-color: #0c0c0c
}

@media(min-width:480px) {
    .hero--layout-2 .hero__newsletter {
        background-color: hsla(0, 0%, 5%, .4)
    }
}

.hero__newsletter-heading {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    margin: 0;
    color: #fff
}

@media(min-width:768px) {
    .hero__newsletter-heading {
        font-size: 1.6rem
    }
}

.hero__newsletter-description {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    margin: 0;
    color: #fff
}

.hero__newsletter-form {
    margin: 2rem 0 0
}

@media(min-width:768px) {
    .hero__newsletter-form {
        margin: 1.4rem 0 0
    }
}

.hero__newsletter-form.is-hidden {
    pointer-events: none;
    visibility: none;
    opacity: 0
}

.hero__social-media-links {
    position: relative;
    z-index: 5;
    display: flex;
    gap: .8rem;
    margin: auto 0 0
}

.hero__social-media-link {
    transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    width: 4.5rem;
    height: 4.5rem;
    color: #fff;
    border: .15rem solid color-mix(in srgb, transparent, #fff 20%);
    border-radius: 50%
}

@media screen and (pointer:fine) {
    .hero__social-media-link:hover {
        color: #0c0c0c;
        background-color: #fff;
        border-color: #fff
    }
}

.hero__social-media-icon {
    display: block;
    width: 1.6rem;
    height: auto
}

.text-hero {
    padding: 2rem
}

@media(min-width:768px) {
    .text-hero {
        padding: 2rem
    }
}

.text-hero:first-child {
    margin-top: 10.4rem
}

@media(min-width:768px) {
    .text-hero:first-child {
        margin-top: 20rem
    }
}

.text-hero__content {
    margin: 0 auto;
    width: 100%;
    max-width: 168rem
}

.text-hero__heading {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase;
    margin: 0;
    width: 100%;
    max-width: 104.4rem
}

@media(min-width:768px) {
    .text-hero__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase
    }
}

.legal-content {
    padding: 9rem var(--content-padding) 6rem
}

@media(min-width:768px) {
    .legal-content {
        padding: 22rem var(--content-padding) 12rem
    }
}

.legal-content__inner {
    max-width: 92.5rem;
    margin: 0 auto
}

.legal-content__heading {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase;
    margin: 0
}

@media(min-width:768px) {
    .legal-content__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase
    }
}

.legal-content__modified-at {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    margin: 3rem 0 6rem
}

@media(min-width:768px) {
    .legal-content__modified-at {
        margin: 4rem 0 6rem
    }
}

.cta {
    margin: 8rem 0;
    padding: 0 2rem
}

@media(min-width:768px) {
    .cta {
        margin: 12rem 0;
        padding: 0 4.8rem
    }
}

.cta--dark {
    color: var(--color-white)
}

.cta[data-theme=dark],
.cta[data-theme=tan] {
    margin: 0;
    padding: 8rem 2rem
}

@media(min-width:768px) {

    .cta[data-theme=dark],
    .cta[data-theme=tan] {
        padding: 12rem 4.8rem
    }
}

.cta__content {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    width: 100%
}

.cta__kicker {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500
}

.cta__heading,
.cta__kicker {
    width: 100%;
    max-width: 69rem;
    letter-spacing: 0
}

.cta__heading {
    margin: 0;
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 2rem;
    font-weight: 400;
    text-transform: uppercase
}

@media(min-width:768px) {
    .cta__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-feature-settings: "ss12" on;
        font-size: 2.8rem;
        font-weight: 400;
        letter-spacing: 0;
        text-transform: uppercase
    }
}

.cta__heading:not(:first-child) {
    margin: 2rem 0 0
}

@media(min-width:768px) {
    .cta__heading:not(:first-child) {
        margin: 1.6rem 0 0
    }
}

.cta__description {
    margin: 0;
    width: 100%;
    max-width: 69rem;
    white-space: pre-line
}

.cta__description:not(:first-child) {
    margin: 2rem 0 0
}

@media(min-width:768px) {
    .cta__description:not(:first-child) {
        margin: 1.6rem 0 0
    }
}

.cta__links {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem 3rem
}

@media(min-width:768px) {
    .cta__links {
        grid-area: links
    }
}

.cta__links:not(:first-child) {
    margin: 2rem 0 0
}

@media(min-width:768px) {
    .cta__links:not(:first-child) {
        margin: 4rem 0 0
    }
}

.values-module-item {
    display: flex;
    flex-flow: column;
    padding: 2rem 0 0;
    border-top: .1rem solid color-mix(in srgb, transparent, #0c0c0c 50%);
    gap: 2rem;
    counter-increment: values-module-counter
}

@media(min-width:768px) {
    .values-module-item {
        flex-flow: row;
        justify-content: space-between;
        padding: 4.2rem 0 0
    }
}

.values-module-item:not(:first-child) {
    margin: 4rem 0 0
}

@media(min-width:768px) {
    .values-module-item:not(:first-child) {
        margin: 4.2rem 0 0
    }
}

.values-module-item__index:before {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 5.2rem;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    content: counter(values-module-counter, decimal-leading-zero)
}

@media(min-width:1024px) {
    .values-module-item__index:before {
        font-size: 14.5rem
    }
}

@media(min-width:768px) {
    .values-module-item__index:before {
        position: relative;
        top: .1rem
    }
}

.values-module-item__main {
    display: flex;
    flex-direction: column;
    gap: .6rem;
    width: 100%;
    max-width: 50.5rem
}

@media(min-width:768px) {
    .values-module-item__main {
        gap: 1.2rem
    }
}

.values-module-item__heading {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-feature-settings: "ss12" on;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    text-transform: unset;
    margin: 0
}

@media(min-width:768px) {
    .values-module-item__heading {
        line-height: 1.1;
        font-family: neue-haas-grot-text, sans-serif;
        font-feature-settings: "ss12" on;
        font-size: 3.6rem;
        font-weight: 400;
        letter-spacing: -.01em;
        text-transform: unset
    }
}

.values-module-item__description {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    margin: 0;
    max-width: 45.2rem
}

@media(min-width:768px) {
    .values-module-item__description {
        font-size: 1.6rem
    }
}

.values-module {
    margin: 8rem 0 4rem;
    color: #0c0c0c;
    padding: 0 var(--content-padding)
}

@media(min-width:768px) {
    .values-module {
        margin: 16rem 0 8rem
    }
}

.values-module__inner {
    max-width: 168rem;
    width: 100%;
    margin: 0 auto
}

.values-module__kicker {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0
}

.values-module__heading {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    font-feature-settings: "ss12" on;
    text-transform: unset;
    margin: 1rem 0 0;
    max-width: 44rem;
    width: 100%
}

@media(min-width:768px) {
    .values-module__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-size: 5.2rem;
        font-weight: 400;
        letter-spacing: 0;
        font-feature-settings: "ss12" on;
        text-transform: unset
    }
}

.values-module__list {
    padding: 0;
    margin: 0;
    list-style: none;
    counter-reset: values-module-counter
}

.values-module__list:not(:first-child) {
    margin: 4rem 0 0
}

@media(min-width:768px) {
    .values-module__list:not(:first-child) {
        margin: 5.2rem 0 0
    }
}

.values-module__cta:not(:first-child) {
    margin: 8rem 0 0;
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .values-module__cta:not(:first-child) {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em;
        margin: 12rem 0 0
    }
}

.stats-item {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    padding: 3.8rem 0
}

@media(min-width:768px) {
    .stats-item {
        padding: 6rem 0;
        grid-template-columns: minmax(0, .35fr) minmax(0, .65fr)
    }
}

.stats-item:not(:first-child) {
    border-top: .1rem solid hsla(0, 0%, 5%, .1)
}

.stats-item:first-child {
    padding-top: 0
}

.stats-item:last-child {
    padding-bottom: 0
}

.stats-item__heading {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0 0 2.4rem
}

@media(min-width:768px) {
    .stats-item__heading {
        font-size: 3.6rem;
        margin: 0
    }
}

.stats-item__stat {
    display: flex;
    align-items: center;
    justify-content: flex-start
}

@media(min-width:768px) {
    .stats-item__stat {
        justify-content: flex-end
    }
}

.stats-item__stat-text {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 5.2rem;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    font-size: 15.8rem;
    text-align: right;
    white-space: nowrap;
    background: linear-gradient(270deg, #ff38bb 4.25%, #ff8038 51.61%, #f5be66 80.43%, #f4dca8 93.03%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent
}

@media(min-width:1024px) {
    .stats-item__stat-text {
        font-size: 14.5rem
    }
}

@media(min-width:768px) {
    .stats-item__stat-text {
        font-size: 25rem;
        margin-right: -1.5rem
    }
}

@media(min-width:1024px) {
    .stats-item__stat-text {
        font-size: 35rem;
        margin-right: -2rem
    }
}

@media(min-width:1280px) {
    .stats-item__stat-text {
        font-size: 44rem;
        margin-right: -2.8rem
    }
}

.stats-module {
    padding: 0 var(--content-padding);
    position: relative;
    overflow: hidden
}

.stats-module__inner {
    max-width: 168rem;
    width: 100%;
    margin: 0 auto
}

.four-oh-four-hero {
    position: relative;
    padding: 0 var(--content-padding);
    height: 80vh;
    min-height: 80rem
}

.four-oh-four-hero__inner {
    width: 100%;
    max-width: 168rem;
    margin: 0 auto;
    height: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding-top: 8rem
}

@media(min-width:768px) {
    .four-oh-four-hero__inner {
        padding-top: 0;
        align-items: center
    }
}

.four-oh-four-hero__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    aspect-ratio: 750/1310
}

@media(min-width:768px) {
    .four-oh-four-hero__image {
        aspect-ratio: 2880/1634
    }
}

.four-oh-four-hero__text-content {
    z-index: 2;
    color: #fff
}

.four-oh-four-hero__heading {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 15rem;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    position: relative;
    margin: 0;
    left: -.8rem
}

@media(min-width:768px) {
    .four-oh-four-hero__heading {
        font-size: 3.6rem
    }
}

@media(min-width:1024px) {
    .four-oh-four-hero__heading {
        font-size: 44rem
    }
}

@media(min-width:768px) {
    .four-oh-four-hero__heading {
        left: -1.8rem;
        font-size: 35rem
    }
}

@media(min-width:1024px) {
    .four-oh-four-hero__heading {
        left: -2.8rem;
        font-size: 50rem
    }
}

.four-oh-four-hero__description {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 1.4rem 0 0
}

@media(min-width:768px) {
    .four-oh-four-hero__description {
        line-height: 1.1;
        font-size: 2.2rem;
        margin: -6.4rem 0 0
    }
}

@media(min-width:1024px) {
    .four-oh-four-hero__description {
        margin: -9rem 0 0
    }
}

.four-oh-four-hero__cta {
    margin: 3rem 0 0;
    position: relative;
    z-index: 2
}

.news-card {
    color: #fff;
    position: relative;
    padding: 2.6rem 3.2rem;
    min-height: 22.2rem;
    height: 100%;
    text-decoration: none
}

@media(min-width:768px) {
    .news-card {
        min-height: 31.4rem
    }
}

.news-card__inner {
    height: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    direction: ltr
}

.news-card__black-bg,
.news-card__gradient-bg,
.news-card__gradient-bg-blur {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: .5rem
}

.news-card__gradient-bg {
    z-index: 2;
    background: linear-gradient(180deg, #ff38bb 5%, #ff8038 55%, #f5be66 65%, #f1fff7 93%)
}

.news-card__gradient-bg-blur {
    transition: opacity .3s ease-in-out;
    z-index: 3;
    border: .2rem solid;
    border-image-source: linear-gradient(180deg, #ff38bb 5%, #ff8038 55%, #f5be66 65%, #f1fff7 93%);
    border-image-slice: 1;
    filter: blur(.6rem);
    transform: translateZ(0);
    opacity: 0
}

@media(pointer:fine) {
    .news-card:hover .news-card__gradient-bg-blur {
        opacity: 1
    }
}

.news-card__black-bg {
    z-index: 2;
    position: absolute;
    top: .1rem;
    left: .1rem;
    width: calc(100% - .2rem);
    height: calc(100% - .2rem);
    background-color: #0c0c0c
}

.news-card__top {
    position: relative;
    z-index: 4;
    margin: 0 0 7rem
}

.news-card__source {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    margin: 0 0 2.3rem;
    display: block
}

@media(min-width:768px) {
    .news-card__source {
        margin: 0 0 3.2rem
    }
}

.news-card__heading {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    transition: background-size .3s ease-in-out;
    text-transform: none;
    display: inline;
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0)), linear-gradient(90deg, #fff, #fff);
    background-size: 100% .1rem, 0 .1rem;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat
}

@media(min-width:768px) {
    .news-card__heading {
        line-height: 1.1;
        font-size: 2.2rem
    }
}

@media(pointer:fine) {
    .news-card:hover .news-card__heading {
        background-size: 0 .1rem, 100% .1rem
    }
}

.news-card__bottom {
    position: relative;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-top: auto;
    width: 100%
}

.news-card__bottom-link {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.news-card__bottom-link-arrow {
    width: 1.4rem;
    margin-left: 1.2rem
}

.news-module {
    color: #fff
}

.news-module__inner {
    max-width: 168rem;
    width: 100%;
    margin: 0 auto
}

.news-module__heading {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0 0 4.2rem
}

@media(min-width:768px) {
    .news-module__heading {
        font-size: 3.6rem;
        margin: 0 0 16rem
    }
}

.news-module__items {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 2rem;
    gap: 2rem
}

@media(min-width:768px) {
    .news-module__items {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media(min-width:1024px) {
    .news-module__items {
        grid-template-columns: repeat(4, 1fr)
    }
}

.intro-worker-module {
    padding: 16rem var(--content-padding);
    color: #fff;
    position: relative;
    overflow: hidden
}

@media(min-width:1024px) {
    .intro-worker-module {
        padding: 20rem var(--content-padding)
    }
}

.intro-worker-module__inner {
    width: 100%;
    max-width: 32.5rem;
    margin: 0 auto
}

@media(min-width:768px) {
    .intro-worker-module__inner {
        max-width: 119rem
    }
}

.intro-worker-module__inner:after {
    content: "";
    display: block;
    background: linear-gradient(0deg, #0c0c0c 22.81%, hsla(0, 0%, 5%, 0) 70.16%);
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 22rem
}

.intro-worker-module__image {
    position: absolute;
    bottom: 0;
    left: 0;
    height: calc(100% - 6rem);
    width: 100%;
    z-index: 1;
    object-fit: cover
}

@media(min-width:768px) {
    .intro-worker-module__image {
        object-fit: contain
    }
}

.intro-worker-module__text {
    position: relative;
    z-index: 3
}

.intro-worker-module__kicker {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    text-align: center;
    margin-bottom: 2.6rem
}

@media(min-width:768px) {
    .intro-worker-module__kicker {
        margin-bottom: 4rem
    }
}

.intro-worker-module__title {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase;
    width: 100%;
    margin: 0
}

@media(min-width:768px) {
    .intro-worker-module__title {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase;
        font-size: 6rem
    }
}

@media(min-width:1024px) {
    .intro-worker-module__title {
        font-size: 8.5rem
    }
}

.intro-worker-module__title--desktop {
    display: none
}

@media(min-width:768px) {
    .intro-worker-module__title--desktop {
        display: block
    }
}

.intro-worker-module__title--mobile {
    display: block
}

@media(min-width:768px) {
    .intro-worker-module__title--mobile {
        display: none
    }
}

.intro-worker-module__title-line {
    display: block
}

.intro-worker-module__title-line--left {
    text-align: left
}

.intro-worker-module__title-line--right {
    text-align: right
}

.intro-worker-module__title-line-gradient {
    background-image: linear-gradient(270deg, #ff38bb 5%, #ff8038 55%, #f5be66 65%, #f1fff7 93%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent
}

.intro-worker-module__title-line-gradient--last {
    background: linear-gradient(270deg, #ff38bb 40%, #ff8038 75%, #f5be66);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent
}

.team-member.team-member--has-bio {
    cursor: pointer
}

.team-member__image {
    width: 100%;
    display: block;
    height: auto;
    aspect-ratio: 335/371;
    border-radius: .4rem
}

.team-member__text {
    padding-top: 2rem;
    display: block
}

.team-member--has-bio .team-member__text {
    display: grid;
    grid-template-columns: 1fr 4.4rem
}

.team-member__name-title-container {
    text-align: left;
    display: block
}

.team-member__name {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0 0 .7rem;
    display: block
}

@media(min-width:768px) {
    .team-member__name {
        line-height: 1.1;
        font-size: 2.2rem
    }
}

.team-member__title {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    margin: 0;
    display: block
}

.team-member__plus-icon-container {
    width: 100%;
    display: block
}

.team-member__plus-icon {
    width: 4.4rem
}

.team-modal__bio {
    white-space: pre-line
}

.team-modal {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 200;
    display: flex;
    justify-content: flex-end;
    background-color: hsla(0, 0%, 5%, .2);
    opacity: 0;
    visibility: hidden
}

.team-modal.is-active {
    opacity: 1;
    visibility: visible
}

.team-modal__content {
    transition: transform .3s ease-in-out;
    position: relative;
    transform: translateX(100%);
    width: 100%;
    max-width: 48rem;
    background-color: #f6f6ef
}

.team-modal__button {
    transition: color .3s ease-in-out, background-color .3s ease-in-out;
    position: absolute;
    top: 2rem;
    right: 2rem;
    padding: 0;
    width: 4.2rem;
    height: 4.2rem;
    color: #0c0c0c;
    background-color: #fff;
    border-radius: .4rem;
    border: none;
    cursor: pointer
}

.team-modal__button:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 4.4rem;
    height: 4.4rem
}

@media(pointer:fine) {
    .team-modal__button:hover {
        background-color: #797af2
    }
}

.team-modal__button-icon:after,
.team-modal__button-icon:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    display: block;
    width: 2rem;
    height: .1rem;
    background-color: currentcolor
}

@media(min-width:768px) {

    .team-modal__button-icon:after,
    .team-modal__button-icon:before {
        width: 2.3rem
    }
}

.team-modal__button-icon:after {
    transform: translate(-50%, -50%) rotate(135deg)
}

.team-modal.is-active .team-modal__content {
    transform: translateX(0)
}

.team-modal__main-wrapper {
    padding: 2rem;
    height: 100%;
    overflow-y: auto
}

@media(min-width:768px) {
    .team-modal__main-wrapper {
        padding: 6rem 2rem
    }
}

.team-modal__main {
    display: flex;
    flex-direction: column;
    gap: 3.2rem
}

@media(min-width:768px) {
    .team-modal__main {
        gap: 4.2rem
    }
}

.team-modal__heading-title-container {
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

.team-modal__heading {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0;
    order: 2
}

@media(min-width:768px) {
    .team-modal__heading {
        line-height: 1.1;
        font-size: 2.2rem;
        order: 1
    }
}

.team-modal__title {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    order: 1;
    margin: 0;
    width: 100%;
    max-width: calc(100% - 6rem);
    text-transform: uppercase
}

@media(min-width:768px) {
    .team-modal__title {
        font-size: 5.2rem;
        order: 2;
        max-width: unset
    }
}

.team-modal__image-wrapper {
    aspect-ratio: 1/1;
    width: 100%;
    height: auto;
    overflow: hidden;
    border-radius: .4rem
}

.team-modal__image {
    object-position: center;
    object-fit: cover;
    display: block;
    width: 100%;
    height: auto
}

.team-modal__bio {
    margin: 0
}

.team-module {
    padding: 0 var(--content-padding)
}

.team-module__inner {
    margin: 0 auto;
    width: 100%;
    max-width: 168rem
}

.team-module__heading {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0
}

@media(min-width:768px) {
    .team-module__heading {
        font-size: 3.6rem
    }
}

.team-module__filters-nav {
    margin-top: 1.6rem;
    position: relative;
    overflow: hidden;
    margin-left: calc(var(--content-padding)*-1);
    width: calc(100% + var(--content-padding)*2);
    padding: 0 var(--content-padding)
}

@media(min-width:768px) {
    .team-module__filters-nav {
        margin-left: 0;
        width: 100%
    }
}

.team-module__filters-nav:after {
    display: block;
    content: "";
    width: 6.6rem;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0), #fff);
    pointer-events: none
}

.team-module__filters-inner {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    overflow: auto;
    padding: 0 calc(var(--content-padding)*2) 0 var(--content-padding);
    margin-left: calc(var(--content-padding)*-1);
    width: calc(100% + var(--content-padding)*2)
}

@media(min-width:768px) {
    .team-module__filters-inner {
        padding: 0
    }
}

.team-module__filters-nav-button {
    transition: opacity .3s ease-in-out;
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    border: none;
    cursor: pointer;
    background-color: transparent;
    padding: 1rem 0;
    margin: 0;
    display: block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    text-decoration: none;
    color: #0c0c0c;
    opacity: .5;
    white-space: nowrap
}

.team-module__filters-nav-button:not(:last-child) {
    margin-right: 2.4rem
}

@media(pointer:fine) {
    .team-module__filters-nav-button:hover {
        opacity: 1
    }
}

.team-module__filters-nav-button.is-active {
    text-decoration: underline;
    opacity: 1
}

.team-module__list {
    margin: 1.7rem 0 0 calc(var(--content-padding)*-1);
    list-style: none;
    grid-template-columns: 1fr;
    column-gap: 2rem;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    overflow: auto;
    padding: .1rem var(--content-padding) 2rem;
    width: calc(100% + var(--content-padding)*2)
}

@media(min-width:768px) {
    .team-module__list {
        overflow: visible;
        width: 100%;
        padding: 0;
        display: grid;
        grid-row-gap: 6rem;
        row-gap: 6rem;
        margin: 6rem 0 0;
        grid-template-columns: repeat(3, 1fr)
    }
}

@media(min-width:1024px) {
    .team-module__list {
        grid-template-columns: repeat(4, 1fr)
    }
}

.team-module__list-item {
    flex: 0 0 24.5rem
}

.team-module__list-item-button {
    border: none;
    background-color: transparent;
    padding: 0;
    margin: 0;
    display: block;
    text-decoration: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    color: #0c0c0c
}

.rotating-text-item {
    display: inline
}

.rotating-text-module {
    padding: 0 var(--content-padding)
}

.rotating-text-module__inner {
    display: flex;
    flex-direction: column;
    gap: 4rem;
    max-width: 168rem;
    margin: 0 auto;
    width: 100%
}

.rotating-text-module__progress-bar {
    height: .1rem;
    width: 21.5rem;
    position: relative;
    background: linear-gradient(270deg, #ff38bb 4.25%, #ff8038 51.61%, #f5be66 80.43%, #f4dca8 93.03%)
}

.rotating-text-module__progress-bar-inner {
    background-color: #cecece;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    transform-origin: center right;
    transform: scaleX(1)
}

.rotating-text-module__progress-bar-inner.is-animating {
    transition: transform 5s;
    transition-timing-function: linear;
    transform: scaleX(0)
}

.rotating-text-module--dark .rotating-text-module__progress-bar-inner {
    background-color: #fff
}

.rotating-text-module__text-container {
    width: 100%;
    display: grid;
    grid-template: "a"
}

@media(min-width:0)and (prefers-reduced-motion) {
    .rotating-text-module__text-container {
        display: block
    }
}

.rotating-text-module__heading {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase;
    margin: 0;
    max-width: 111rem;
    grid-area: a
}

@media(min-width:768px) {
    .rotating-text-module__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase
    }
}

.rotating-text-module--dark .rotating-text-module__heading {
    color: #fff
}

@media(min-width:0)and (prefers-reduced-motion) {
    .rotating-text-module__heading:not(:first-child) {
        margin-top: 3rem;
        display: block
    }
}

@media(min-width:768px)and (prefers-reduced-motion) {
    .rotating-text-module__heading:not(:first-child) {
        margin-top: 6rem
    }
}

.rotating-text-module__text-prefix {
    opacity: 0
}

@media(min-width:0)and (prefers-reduced-motion) {
    .rotating-text-module__text-prefix {
        opacity: 1
    }
}

.rotating-text-module__heading:first-child .rotating-text-module__text-prefix {
    opacity: 1
}

.rotating-text-module__item {
    transition: opacity .3s ease-in-out;
    opacity: 0
}

@media(min-width:0)and (prefers-reduced-motion) {
    .rotating-text-module__item {
        opacity: 1
    }
}

.rotating-text-module__heading.is-active .rotating-text-module__item {
    opacity: 1
}

.human-form-item {
    position: relative;
    z-index: 10;
    text-align: right;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
    gap: max(1vw, .4rem);
    padding: 0 0 max(1vw, .4rem);
    width: 100%;
    border-bottom: .05rem solid color-mix(in srgb, transparent, var(--color-figure-black) 60%)
}

@media(min-width:768px) {
    .human-form-item {
        position: unset;
        z-index: unset;
        gap: max(.5vw, .8rem);
        padding: 0 0 max(.3vw, .4rem);
        width: 100%;
        max-width: 41vw
    }
}

@media(min-width:1024px) {
    .human-form-item {
        max-width: 44vw
    }
}

.human-form-item__title {
    line-height: 1.2;
    color: color-mix(in srgb, transparent, var(--color-figure-black) 60%);
    font-family: neue-haas-grot-text, sans-serif;
    font-size: max(3.2vw, 1.2rem);
    font-weight: 500;
    letter-spacing: 0
}

@media(min-width:768px) {
    .human-form-item__title {
        position: relative;
        z-index: 10;
        line-height: 1.2;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: max(1vw, 1.4rem);
        font-weight: 500;
        letter-spacing: 0
    }
}

.human-form-item__description {
    color: color-mix(in srgb, transparent, var(--color-figure-black) 60%);
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-size: max(9vw, 3.4rem);
    font-weight: 400;
    letter-spacing: 0;
    font-feature-settings: "ss12" on;
    text-transform: unset;
    white-space: nowrap
}

@media(min-width:768px) {
    .human-form-item__description {
        position: relative;
        z-index: 10;
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-size: max(3.6vw, 5.2rem);
        font-weight: 400;
        letter-spacing: 0;
        font-feature-settings: "ss12" on
    }
}

.human-form-module {
    display: grid;
    aspect-ratio: 375/1252;
    padding: 11rem 0 0
}

@media(min-width:768px) {
    .human-form-module {
        aspect-ratio: 1440/2550;
        padding: 11rem 0 0
    }
}

.human-form-module__background {
    position: relative;
    z-index: 5;
    grid-column: 1/-1;
    grid-row: 1/-1;
    padding: 21rem 0 0
}

@media(min-width:768px) {
    .human-form-module__background {
        padding: unset
    }
}

.human-form-module__image {
    display: none
}

@media(min-width:768px) {
    .human-form-module__image {
        object-fit: cover;
        display: block;
        width: 100%;
        height: 100%
    }
}

.human-form-module__mobile-image {
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%
}

@media(min-width:768px) {
    .human-form-module__mobile-image {
        display: none
    }
}

.human-form-module__content {
    display: flex;
    flex-direction: column;
    grid-column: 1/-1;
    grid-row: 1/-1;
    overflow: hidden
}

.human-form-module__introduction {
    position: relative;
    z-index: 10;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    min-height: 21rem;
    padding: 0 2rem 2rem
}

@media(min-width:768px) {
    .human-form-module__introduction {
        justify-content: flex-end;
        padding: 6rem 4.8rem;
        height: 48vw
    }
}

@media(min-width:1280px) {
    .human-form-module__introduction {
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        justify-content: center;
        align-items: flex-end;
        gap: 4rem;
        padding: 6rem 4.8rem;
        height: unset;
        min-height: 100svh
    }

    .human-form-module:first-child .human-form-module__introduction {
        padding: 10.2rem 4.8rem 6rem
    }
}

.human-form-module__introduction-text-wrapper {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 33.6rem
}

@media(min-width:768px) {
    .human-form-module__introduction-text-wrapper {
        margin: 0 auto;
        align-items: flex-end;
        max-width: unset
    }
}

@media(min-width:1280px) {
    .human-form-module__introduction-text-wrapper {
        max-width: 80vw
    }
}

.human-form-module__introduction-text {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
    width: 100%;
    max-width: 46.8rem
}

@media(min-width:1280px) {
    .human-form-module__introduction-text {
        max-width: 66.9rem;
        min-height: 26.8rem
    }
}

.human-form-module__heading {
    margin: 0 0 -1.6rem -.4rem;
    color: var(--color-figure-black);
    font-size: 6.3rem !important;
    white-space: nowrap;
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase
}

@media(min-width:768px) {
    .human-form-module__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase;
        margin: 0 0 -2rem -.4rem
    }
}

@media(min-width:1280px) {
    .human-form-module__heading {
        margin: 0 0 -3rem -.7rem;
        font-size: 12.2rem !important
    }
}

.human-form-module__description {
    margin: 0;
    color: var(--color-figure-black);
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .human-form-module__description {
        line-height: 1.5;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.6rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em;
        max-width: 46.1rem
    }
}

.hero-v3__actions {
    width: 100%;
    max-width: 46.8rem
}

.human-form-module__items {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: max(5.4vw, 2rem);
    margin: 0;
    padding: 63.2vw 2rem 2rem
}

@media(min-width:768px) {
    .human-form-module__items {
        padding: 13.2vw 4.8rem 4.8rem;
        gap: max(3.9vw, 5.6rem)
    }
}

@media(min-width:1280px) {
    .human-form-module__items {
        padding: 63.4vw 4.8rem 4.8rem
    }
}

.human-form-module__bottom {
    position: relative;
    z-index: 10;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin: auto 0 0;
    padding: 0 2rem 4rem
}

@media(min-width:768px) {
    .human-form-module__bottom {
        align-items: flex-end;
        gap: 1.6rem;
        padding: 0 4.8rem 6rem
    }
}

.human-form-module__bottom:before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: max(98vw, 36.8rem);
    opacity: .6;
    background: linear-gradient(180deg, transparent 0, var(--color-black) 100%)
}

@media(min-width:768px) {
    .human-form-module__bottom:before {
        height: 32rem
    }
}

@media(min-width:1280px) {
    .human-form-module__bottom:before {
        content: unset
    }
}

.human-form-module__secondary-heading {
    position: relative;
    z-index: 10;
    margin: unset;
    width: 100%;
    max-width: 45.2rem;
    color: var(--color-white);
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:768px) {
    .human-form-module__secondary-heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-feature-settings: "ss12" on;
        font-size: 2.8rem;
        font-weight: 400;
        letter-spacing: 0;
        text-transform: uppercase
    }
}

@media(min-width:1280px) {
    .human-form-module__secondary-heading {
        color: var(--color-figure-black)
    }
}

.human-form-module__secondary-text {
    position: relative;
    z-index: 10;
    margin: unset;
    width: 100%;
    max-width: 45.2rem;
    color: var(--color-white);
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:999999px) {
    .human-form-module__secondary-text {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

@media(min-width:1280px) {
    .human-form-module__secondary-text {
        color: var(--color-figure-black)
    }
}

.human-form-module[data-is-popover-active=true] .human-form-module__secondary-heading,
.human-form-module[data-is-popover-active=true] .human-form-module__secondary-text {
    opacity: 0;
    visibility: hidden
}

.human-form-module__bottom-actions {
    position: relative;
    z-index: 10;
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    width: 100%;
    max-width: 53.6rem;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:768px) {
    .human-form-module__bottom-actions {
        --action-color: var(--color-figure-black);
        --action-color-hover: var(--color-white);
        --action-background-color: transparent;
        --action-background-color-hover: var(--color-figure-black);
        --action-border-color: var(--color-figure-black);
        --action-border-color-hover: var(--color-figure-black);
        justify-content: flex-end
    }
}

.human-form-module[data-is-popover-active=true] .human-form-module__bottom-actions {
    opacity: 0;
    visibility: hidden
}

.human-form-module__popover {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 15;
    padding: 4rem 2rem;
    pointer-events: none
}

@media(min-width:768px) {
    .human-form-module__popover {
        padding: 4rem 3.2rem
    }
}

.author {
    display: grid;
    grid-template-columns: minmax(0, 11.5rem) 1fr;
    grid-gap: 2rem;
    gap: 2rem;
    align-items: center;
    margin-top: 3rem
}

.author__image-container {
    width: 100%
}

.author__image {
    width: 100%;
    height: auto
}

.author__about-content {
    margin-top: -.5rem
}

.author__signature {
    width: 17rem;
    height: auto
}

.author__name-title {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    font-style: normal;
    margin-top: .5rem
}

.author__name,
.author__title {
    display: block
}

.author__title {
    font-weight: 400;
    color: hsla(0, 0%, 5%, .6)
}

.side-navigation-item__link {
    text-decoration: none;
    color: #0c0c0c;
    background: transparent;
    border-radius: 0;
    padding: 0;
    height: 7.5rem;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    cursor: pointer;
    border: none;
    border-bottom: .1rem solid #cecece;
    text-align: left
}

.side-navigation-item__link-text {
    line-height: 1.11;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    text-transform: uppercase;
    grid-template-columns: minmax(0, 5rem) 1fr;
    line-height: 1;
    width: auto
}

@media(min-width:768px) {
    .side-navigation-item__link-text {
        font-size: 2.4rem
    }
}

.is-active .side-navigation-item__link-text {
    background: linear-gradient(90deg, #f5be66, #ff8038 25%, #ff38bb);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent
}

.side-navigation {
    display: none
}

@media(min-width:1024px) {
    .side-navigation {
        display: block
    }
}

.side-navigation__select {
    display: block
}

@media(min-width:1024px) {
    .side-navigation__select {
        display: none
    }
}

@media(min-width:768px) {
    .side-navigation__select .custom-select__el {
        height: 3.6rem
    }
}

.rich-text-page-content__intro {
    margin: 0 auto;
    width: 100%;
    background-color: #0c0c0c;
    padding: 9rem var(--content-padding) 6rem;
    color: #fff
}

@media(min-width:768px) {
    .rich-text-page-content__intro {
        padding: 14rem var(--content-padding) 9rem
    }
}

@media(min-width:1024px) {
    .rich-text-page-content__intro {
        padding: 14rem var(--content-padding) 12rem
    }
}

.rich-text-page-content__intro-inner {
    margin: 0 auto;
    width: 100%;
    max-width: 151.4rem
}

.rich-text-page-content__kicker {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0
}

.rich-text-page-content__heading {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase;
    margin: 4rem 0;
    max-width: 92rem
}

@media(min-width:768px) {
    .rich-text-page-content__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase;
        font-size: 6rem
    }
}

@media(min-width:1280px) {
    .rich-text-page-content__heading {
        font-size: 8.5rem
    }
}

.rich-text-page-content__description {
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .rich-text-page-content__description {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.rich-text-page-content__meta-info {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    margin-bottom: 3rem
}

.rich-text-page-content__meta-info-author {
    font-style: normal;
    display: inline
}

.rich-text-page-content__meta-info-author:after {
    content: "•";
    display: inline-block;
    margin: 0 1rem
}

.rich-text-page-content__content {
    padding: 0 var(--content-padding) 6rem
}

@media(min-width:768px) {
    .rich-text-page-content__content {
        padding: 0 var(--content-padding) 12rem
    }
}

.rich-text-page-content__content-inner {
    margin: 0 auto;
    width: 100%;
    max-width: 151.4rem
}

@media(min-width:1024px) {
    .rich-text-page-content--has-side-nav .rich-text-page-content__content-inner {
        display: grid;
        grid-gap: 6rem;
        gap: 6rem;
        grid-template-columns: minmax(50rem, 1fr) minmax(0, 45rem)
    }
}

@media(min-width:1280px) {
    .rich-text-page-content--has-side-nav .rich-text-page-content__content-inner {
        gap: 14rem
    }
}

.rich-text-page-content__rich-text-area {
    white-space: break-spaces
}

.rich-text-page-content__rich-text-area>:first-child {
    margin-top: 6rem
}

@media(min-width:768px) {
    .rich-text-page-content__rich-text-area>:first-child {
        margin-top: 9rem
    }
}

@media(min-width:1024px) {
    .rich-text-page-content__rich-text-area>:first-child {
        margin-top: 12rem
    }
}

.rich-text-page-content__side-nav-container {
    transition: opacity .3s ease-in-out;
    display: none;
    z-index: 250;
    position: fixed;
    top: 1.5rem;
    width: calc(100% - 14rem);
    left: 7rem
}

@media(min-width:768px) {
    .rich-text-page-content__side-nav-container {
        width: 28rem;
        top: 4rem;
        left: auto;
        right: 4rem
    }
}

@media(min-width:1024px) {
    .rich-text-page-content__side-nav-container {
        display: block;
        width: 100%;
        position: -webkit-sticky;
        position: sticky;
        height: max-content;
        right: auto;
        top: 8.4rem;
        margin-top: 10rem
    }
}

.is-navigation-active .rich-text-page-content__side-nav-container {
    opacity: 0;
    pointer-events: none
}

.rich-text-page-content__side-navigation {
    counter-reset: side-navigation-counter;
    display: none
}

@media(min-width:1024px) {
    .rich-text-page-content__side-navigation {
        display: block
    }
}

.rich-text-page-content__side-navigation-select {
    display: block
}

@media(min-width:1024px) {
    .rich-text-page-content__side-navigation-select {
        display: none
    }
}

@media(min-width:768px) {
    .rich-text-page-content__side-navigation-select .custom-select__el {
        height: 3.6rem
    }
}

.rich-text-bold {
    font-weight: 500
}

.careers-listing-module-item {
    border-top: .1rem solid color-mix(in srgb, transparent, var(--color-figure-black) 20%);
    width: 100%
}

.careers-listing-module-item:last-child {
    border-bottom: .1rem solid color-mix(in srgb, transparent, var(--color-figure-black) 20%)
}

.careers-listing-module-item__heading-wrapper {
    margin: 0
}

.careers-listing-module-item__heading {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    font-feature-settings: "ss12" on;
    text-transform: unset;
    position: relative;
    align-items: center;
    gap: 2rem;
    width: 100%;
    color: var(--color-figure-black);
    text-align: left;
    background-color: transparent;
    border: none;
    min-height: 0;
    padding: 4rem 0
}

@media(min-width:768px) {
    .careers-listing-module-item__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-size: 5.2rem;
        font-weight: 400;
        letter-spacing: 0;
        font-feature-settings: "ss12" on;
        text-transform: unset;
        min-height: 15rem;
        padding: 3.6rem 0
    }
}

.careers-listing-module-item--is-accordion .careers-listing-module-item__heading {
    cursor: pointer;
    display: grid;
    grid-template-columns: 1fr 4.4rem;
    grid-gap: 1rem;
    gap: 1rem
}

@media(min-width:768px) {
    .careers-listing-module-item--is-accordion .careers-listing-module-item__heading {
        gap: 2rem
    }
}

.careers-listing-module-item__superscript {
    margin: 0 0 0 .8rem;
    color: color-mix(in srgb, transparent, var(--color-figure-black) 60%);
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase
}

@media(min-width:768px) {
    .careers-listing-module-item__superscript {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-feature-settings: "ss12" on;
        font-size: 2.8rem;
        font-weight: 400;
        letter-spacing: 0;
        text-transform: uppercase
    }
}

.careers-listing-module-item__heading-text {
    position: relative;
    display: block;
    line-height: 1.1;
    margin-bottom: -.8rem
}

.careers-listing-module-item__heading-icon-container {
    width: 4.6rem;
    display: flex;
    align-items: center;
    justify-content: center
}

.careers-listing-module-item__heading-icon {
    width: 100%
}

.careers-listing-module-item__jobs-wrapper {
    transition: height .3s ease-in-out;
    height: 0;
    overflow: hidden
}

@media(min-width:0)and (prefers-reduced-motion) {
    .careers-listing-module-item__jobs-wrapper {
        transition-duration: 0s
    }
}

.careers-listing-module-item__jobs {
    padding: 0 0 1rem
}

.careers-listing-module-item__paragraph {
    margin: 0
}

.careers-listing-module-job {
    transition: background-color .3s ease-in-out;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 1.5rem;
    width: 100%;
    text-decoration: none;
    border-top: .1rem solid color-mix(in srgb, transparent, var(--color-figure-black) 20%);
    padding: 2rem 0;
    min-height: 8.5rem
}

@media(min-width:768px) {
    .careers-listing-module-job {
        padding: 1rem 0;
        justify-content: space-between;
        align-items: center;
        display: grid;
        grid-template-columns: 10rem 1fr 13rem;
        grid-gap: 4rem;
        gap: 4rem
    }
}

.careers-listing-module-job:last-child {
    padding: 2rem 0 0
}

@media(min-width:768px) {
    .careers-listing-module-job:last-child {
        padding: 1rem 0 0
    }
}

@media(min-width:768px)and (pointer:fine) {
    .careers-listing-module-job.is-hovering {
        background-color: color-mix(in srgb, transparent, var(--color-figure-black) 5%)
    }
}

.careers-listing-module-job__location {
    transition: opacity .3s ease-in-out;
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    color: var(--color-figure-black);
    opacity: .6;
    font-style: normal;
    display: block
}

@media(min-width:768px)and (pointer:fine) {
    .is-hovering .careers-listing-module-job__location {
        opacity: 1
    }
}

.careers-listing-module-job__heading {
    transition: background-size .3s ease-in-out;
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: 0;
    color: var(--color-figure-black)
}

@media(min-width:768px) {
    .careers-listing-module-job__heading {
        line-height: 1.1;
        font-size: 2.2rem
    }
}

.careers-listing-module-job__cta-container {
    justify-content: flex-end;
    display: flex;
    width: 100%
}

.careers-listing-module {
    position: relative;
    padding: 0 2rem;
    color: var(--color-figure-black);
    overflow: hidden
}

@media(min-width:768px) {
    .careers-listing-module {
        padding: 0 4.8rem
    }
}

.careers-listing-module__content {
    width: 100%;
    max-width: 134.4rem;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 6rem 2.4rem
}

@media(min-width:1024px) {
    .careers-listing-module__content {
        flex-direction: unset;
        justify-content: space-between
    }
}

.careers-listing-module__heading-description {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
    width: 100%;
    max-width: 30.8rem
}

.careers-listing-module__heading {
    margin: 0;
    color: var(--color-figure-black);
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-feature-settings: "ss12" on;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    text-transform: unset
}

@media(min-width:768px) {
    .careers-listing-module__heading {
        line-height: 1.1;
        font-family: neue-haas-grot-text, sans-serif;
        font-feature-settings: "ss12" on;
        font-size: 3.6rem;
        font-weight: 400;
        letter-spacing: -.01em;
        text-transform: unset;
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-size: 2rem;
        letter-spacing: 0;
        text-transform: uppercase
    }
}

@media(min-width:768px)and (min-width:768px) {
    .careers-listing-module__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-feature-settings: "ss12" on;
        font-size: 2.8rem;
        font-weight: 400;
        letter-spacing: 0;
        text-transform: uppercase
    }
}

.careers-listing-module__description {
    margin: 0;
    color: var(--color-figure-black);
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .careers-listing-module__description {
        line-height: 1.5;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.6rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.careers-listing-module__listings-container {
    width: 100%
}

@media(min-width:1024px) {
    .careers-listing-module__listings-container {
        max-width: 92.8rem
    }
}

.careers-listing-module__listings {
    margin: 0;
    padding: 0;
    list-style: none
}

.careers-listing-module__error,
.careers-listing-module__listing {
    margin: 0
}

.careers-listing-module__disclaimer {
    color: color-mix(in srgb, transparent, var(--color-figure-black) 60%);
    margin: 2.4rem 0 0;
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .careers-listing-module__disclaimer {
        line-height: 1.5;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.6rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em;
        margin: 5rem 0 0
    }
}

.mission-module {
    padding-left: var(--content-padding);
    padding-right: var(--content-padding);
    color: #fff
}

.mission-module__inner {
    width: 100%;
    margin: 0 auto;
    max-width: 168rem;
    display: grid;
    grid-template: "heading" "description" "cta";
    grid-gap: 2rem;
    gap: 2rem
}

@media(min-width:1024px) {
    .mission-module__inner {
        grid-template: "heading description" "cta description";
        grid-template-columns: 1fr minmax(30rem, 45.4rem);
        column-gap: 4rem;
        row-gap: 3.2rem
    }
}

@media(min-width:1280px) {
    .mission-module__inner {
        column-gap: 8rem
    }
}

.mission-module__heading {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase;
    grid-area: heading;
    margin: 0;
    max-width: 42rem
}

@media(min-width:1440px) {
    .mission-module__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase;
        max-width: 86.7rem
    }
}

.mission-module__description {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    grid-area: description;
    margin: 0;
    max-width: 40rem
}

@media(min-width:768px) {
    .mission-module__description {
        font-size: 1.6rem;
        max-width: 45.4rem
    }
}

.mission-module__link-container {
    grid-area: cta
}

.video-carousel-item {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
    aspect-ratio: 355/600;
    width: 100%;
    height: 100%;
    max-height: 100svh;
    padding: 0;
    background-color: var(--color-black);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    overflow: hidden;
    cursor: pointer
}

@media(min-width:768px) {
    .video-carousel-item {
        aspect-ratio: 540/676
    }
}

.video-carousel-item__thumbnail-wrapper {
    position: absolute;
    inset: 0;
    transition: transform .3s ease-in-out
}

@media(min-width:0)and (pointer:fine) {
    .video-carousel-item:hover .video-carousel-item__thumbnail-wrapper {
        transform: scale(1.04)
    }
}

.video-carousel-item__thumbnail-wrapper:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 5;
    background: linear-gradient(180deg, transparent, color-mix(in srgb, transparent, var(--color-black) 20%) 100%), linear-gradient(0deg, color-mix(in srgb, transparent, var(--color-black) 30%) 0, color-mix(in srgb, transparent, var(--color-black) 30%) 100%)
}

.video-carousel-item__image,
.video-carousel-item__video {
    position: absolute;
    inset: 0;
    object-position: center;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.video-carousel-item__description {
    position: absolute;
    inset: 0;
    z-index: 10;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 2.4rem;
    padding: 2.4rem
}

@media(min-width:768px) {
    .video-carousel-item__description {
        padding: 4.8rem
    }
}

.video-carousel-item__label {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: 0 1.2rem 0 .6rem;
    height: 3.2rem;
    line-height: 1;
    color: var(--color-white);
    white-space: nowrap;
    background-color: color-mix(in srgb, transparent, var(--color-grey-alt-2) 20%);
    border-radius: 1.6rem
}

.video-carousel-item__icon-wrapper {
    position: relative;
    width: 2rem;
    height: 2rem
}

.video-carousel-item__progress {
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(.44);
    transform-origin: -.2rem -.2rem
}

.video-carousel-item__progress .hero-video-progress__background-circle {
    stroke: #d9d9d9
}

.video-carousel__icon-play {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) translateX(.05rem);
    width: 1rem;
    height: auto;
    opacity: 1;
    visibility: visible
}

.video-carousel__video-toggle.is-playing>.video-carousel__icon-play {
    opacity: 0;
    visibility: hidden
}

.video-carousel__icon-play--blur {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    opacity: 0;
    filter: blur(.15rem)
}

@media(pointer:fine) {
    .video-carousel__video-toggle:not(.is-playing).is-hovering>.video-carousel__icon-play--blur {
        opacity: 1;
        visibility: visible
    }
}

.video-carousel-item__title {
    display: flex;
    align-items: center;
    margin: 0;
    min-height: 3.2rem;
    color: var(--color-white);
    text-align: left;
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .video-carousel-item__title {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.video-carousel {
    display: flex;
    flex-direction: column;
    gap: 4rem;
    margin: unset;
    padding: 0
}

@media(min-width:768px) {
    .video-carousel {
        gap: 6rem
    }
}

.video-carousel:has(.video-carousel__top) {
    margin: 8rem 0 0
}

@media(min-width:768px) {
    .video-carousel:has(.video-carousel__top) {
        margin: 12rem 0 0
    }
}

.section--dark.video-carousel:has(.video-carousel__top) {
    padding: 8rem 0 0
}

@media(min-width:768px) {
    .section--dark.video-carousel:has(.video-carousel__top) {
        padding: 12rem 0 0
    }
}

.section--dark+.section--dark.video-carousel {
    margin: unset;
    padding: unset
}

.video-carousel__top {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin: 0 auto;
    padding: 0 2rem;
    width: 100%
}

@media(min-width:768px) {
    .video-carousel__top {
        gap: 4rem;
        padding: 0 4.8rem
    }
}

.video-carousel__top-main {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    width: 100%;
    max-width: 33.6rem
}

@media(min-width:768px) {
    .video-carousel__top-main {
        gap: 1.6rem;
        max-width: 45.2rem
    }
}

.video-carousel__kicker {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    color: var(--color-figure-black)
}

.video-carousel--dark .video-carousel__kicker {
    color: var(--color-white)
}

.video-carousel__heading {
    margin: 0;
    width: 100%;
    max-width: 69rem;
    color: var(--color-figure-black);
    white-space: pre-line;
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase
}

@media(min-width:768px) {
    .video-carousel__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-feature-settings: "ss12" on;
        font-size: 2.8rem;
        font-weight: 400;
        letter-spacing: 0;
        text-transform: uppercase
    }
}

.video-carousel--dark .video-carousel__heading {
    color: var(--color-white)
}

.video-carousel__description {
    margin: 0;
    width: 100%;
    max-width: 66rem;
    color: var(--color-figure-black);
    white-space: pre-line;
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .video-carousel__description {
        line-height: 1.5;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.6rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.video-carousel--dark .video-carousel__description {
    color: var(--color-white)
}

.video-carousel__navigation {
    position: absolute;
    inset: 0;
    z-index: 20;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .8rem;
    pointer-events: none
}

@media(min-width:768px) {
    .video-carousel__navigation {
        padding: 2.4rem
    }
}

.video-carousel__navigation-button {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
    width: 4.6rem;
    height: 4.6rem;
    color: var(--color-white);
    background-color: transparent;
    border: .1rem solid var(--color-white);
    border-radius: 50%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    pointer-events: all;
    transition: color .3s ease-in-out, background-color .3s ease-in-out, opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:0)and (pointer:fine) {
    .video-carousel__navigation-button:hover {
        color: var(--color-figure-black);
        background-color: var(--color-white)
    }
}

.video-carousel__navigation-button:disabled {
    opacity: 0;
    visibility: hidden
}

.video-carousel__navigation-button:first-child>.video-carousel__icon {
    transform: rotate(-135deg)
}

.video-carousel__navigation-button:nth-child(2)>.video-carousel__icon {
    transform: rotate(45deg)
}

.video-carousel__items {
    position: relative;
    overflow: hidden
}

.video-carousel__carousel-wrapper {
    position: relative;
    width: 100%
}

.swiper.video-carousel__carousel-wrapper {
    position: relative;
    overflow: visible
}

.video-carousel__carousel {
    display: flex;
    align-items: flex-start;
    margin: 0 auto
}

.swiper-slide.video-carousel__item {
    display: flex;
    align-items: stretch;
    width: 95vw;
    height: auto
}

@media(min-width:768px) {
    .swiper-slide.video-carousel__item {
        width: 75vw
    }
}

@media(min-width:1280px) {
    .swiper-slide.video-carousel__item {
        width: 37.5vw
    }
}

.video-carousel__modal {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    position: fixed;
    inset: 0;
    max-height: 100svh;
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2.8rem;
    background-color: color-mix(in srgb, transparent, var(--color-figure-black) 80%);
    opacity: 0;
    visibility: hidden
}

.video-carousel__close-trigger {
    position: absolute;
    top: 1.5rem;
    right: 2rem;
    padding: 0;
    width: 4.2rem;
    height: 4.2rem;
    background-color: var(--color-white);
    border: none;
    border-radius: .4rem;
    box-shadow: 0 .4rem 2rem color-mix(in srgb, transparent, var(--color-black), 8%);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer
}

.video-carousel__close-trigger:after,
.video-carousel__close-trigger:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    display: block;
    width: 2.3rem;
    height: .1rem;
    background-color: var(--color-figure-black)
}

.video-carousel__close-trigger:after {
    transform: translate(-50%, -50%) rotate(-45deg)
}

.video-carousel__modal--active {
    opacity: 1;
    visibility: visible
}

.video-carousel__modal-content {
    display: flex;
    justify-content: stretch;
    align-items: center;
    width: 100%;
    height: 100%
}

.video-carousel__modal-content>iframe {
    aspect-ratio: 16/9;
    width: 100%;
    height: auto;
    max-height: 100%
}

.article-list-item {
    position: relative;
    display: block;
    padding: 2rem;
    width: 100%;
    height: 100%;
    color: #fff;
    text-decoration: none;
    background-color: var(--color-black);
    overflow: hidden
}

.article-list-item__background {
    position: absolute;
    inset: 0
}

.article-list-item__background:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, color-mix(in srgb, transparent, var(--color-black) 30%) 0, color-mix(in srgb, transparent, var(--color-black) 30%) 100%)
}

.article-list-item__thumbnail {
    position: absolute;
    inset: 0;
    transform: scale(1.02);
    object-fit: cover;
    width: 100%;
    height: 100%;
    transition: transform .3s ease-in-out
}

@media(min-width:0)and (pointer:fine) {
    .article-list-item:hover .article-list-item__thumbnail {
        transform: scale(1.06)
    }
}

.article-list-item__thumbnail-video {
    position: absolute;
    inset: 0;
    transform: scale(1.02);
    object-fit: cover;
    width: 100%;
    height: 100%;
    transition: transform .3s ease-in-out
}

.article-list-item__background--with-both-thumbnails>.article-list-item__thumbnail-video {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    opacity: 0;
    visibility: hidden
}

@media(min-width:0)and (pointer:fine) {
    .article-list-item:hover .article-list-item__thumbnail-video {
        transform: scale(1.06)
    }

    .article-list-item:hover .article-list-item__background--with-both-thumbnails>.article-list-item__thumbnail-video {
        opacity: 1;
        visibility: visible
    }
}

.article-list-item__content {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 1.6rem;
    height: 100%
}

.article-list-item__publication-date {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0
}

.article-list-item__heading {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-feature-settings: "ss12" on;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em;
    margin: unset;
    text-transform: unset
}

@media(min-width:768px) {
    .article-list-item__heading {
        line-height: 1.1;
        font-family: neue-haas-grot-text, sans-serif;
        font-feature-settings: "ss12" on;
        font-size: 3.6rem;
        font-weight: 400;
        letter-spacing: -.01em;
        text-transform: unset
    }
}

.article-list-item__external-source-name {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: .8rem 0 0
}

@media(min-width:768px) {
    .article-list-item__external-source-name {
        margin: 1.2rem 0 0
    }
}

.article-list-item__icon {
    width: 1.2rem;
    min-width: 1.2rem
}

.article-list {
    margin: 0;
    padding: 0;
    background-color: var(--color-black)
}

@media(min-width:768px) {
    .article-list {
        padding: 0
    }
}

.article-list__content {
    margin: 0 auto;
    width: 100%
}

.article-list__content,
.article-list__featured-articles {
    display: flex;
    flex-direction: column
}

.article-list__featured-articles-list {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin: unset;
    padding: 7.4rem 0;
    width: 100%;
    list-style: none
}

@media(min-width:768px) {
    .article-list__featured-articles-list {
        display: grid;
        grid-template: "article-0 article-0" 2fr "article-1 article-2" 1fr/1fr 1fr;
        flex-wrap: unset;
        padding: 9.8rem 0
    }
}

@media(min-width:1280px) {
    .article-list__featured-articles-list {
        grid-template: "article-0 article-0 article-1" 1fr "article-0 article-0 article-2" 1fr/1fr 1fr 1fr;
        flex-wrap: unset;
        gap: 2rem;
        padding: 9.8rem 0 4rem
    }
}

@media screen and (min-width:1280px)and (max-height:1440px) {
    .article-list__featured-articles-list {
        max-height: 100svh;
        min-height: max(68rem, 100svh)
    }
}

.article-list__featured-article {
    display: flex;
    justify-content: stretch;
    align-items: stretch;
    aspect-ratio: 962/720;
    width: 100%;
    max-width: 100%
}

@media(min-width:480px) {
    .article-list__featured-article {
        flex: 1 1
    }
}

@media(min-width:1024px) {
    .article-list__featured-article {
        width: 100%;
        height: 100%
    }
}

@media(min-width:768px) {
    .article-list__featured-article--0 {
        grid-area: article-0;
        aspect-ratio: 962/720;
        max-height: unset
    }

    .article-list__featured-article--1 {
        grid-area: article-1;
        aspect-ratio: unset
    }

    .article-list__featured-article--2 {
        grid-area: article-2;
        aspect-ratio: unset
    }
}

.article-list__main {
    display: flex;
    flex-direction: column;
    gap: 4rem
}

.article-list__heading {
    margin: unset;
    padding: 0 2rem;
    color: var(--color-white);
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em;
    text-transform: none
}

@media(min-width:768px) {
    .article-list__heading {
        line-height: 1.1;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 2.2rem;
        font-weight: 400;
        letter-spacing: -.01em;
        text-transform: none
    }
}

.article-list__list-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%
}

.article-list__list {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    width: 100%;
    list-style: none
}

@media(min-width:768px) {
    .article-list__list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        flex-direction: unset
    }
}

@media(min-width:1280px) {
    .article-list__list {
        grid-template-columns: 1fr 1fr 1fr
    }
}

.article-list__item {
    aspect-ratio: 962/720;
    width: 100%;
    max-width: 100%;
    overflow: hidden
}

.article-list__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 4rem 2rem
}

.hero-v2 {
    display: grid;
    margin: 0 auto;
    width: 100%;
    background-color: #0c0c0c
}

.hero-v2--cover {
    height: 100svh;
    min-height: 50rem
}

@media(min-width:768px) {
    .hero-v2--cover {
        min-height: 60rem
    }
}

.hero-v2__background {
    grid-column: 1/-1;
    grid-row: 1/-1
}

.hero-v2--cover .hero-v2__background {
    position: relative
}

.hero-v2--with-video:not(.hero-v2--cover) .hero-v2__background {
    aspect-ratio: var(--hero-v2-mobile-video-aspect-ratio, var(--hero-v2-video-aspect-ratio))
}

@media(min-width:480px) {
    .hero-v2--with-video:not(.hero-v2--cover) .hero-v2__background {
        aspect-ratio: var(--hero-v2-video-aspect-ratio)
    }
}

.hero-v2__image {
    object-fit: cover;
    display: block;
    width: 100%;
    height: auto
}

.hero-v2--cover .hero-v2__image {
    position: absolute;
    inset: 0;
    height: 100%
}

.hero-v2--with-mobile-image .hero-v2__image {
    display: none
}

@media(min-width:480px) {
    .hero-v2--with-mobile-image .hero-v2__image {
        display: block
    }
}

.hero-v2--with-video .hero-v2__image {
    height: 100%
}

.hero-v2__mobile-image {
    object-fit: cover;
    display: block;
    width: 100%;
    height: auto
}

@media(min-width:480px) {
    .hero-v2__mobile-image {
        display: none
    }
}

.hero-v2--cover .hero-v2__mobile-image,
.hero-v2--with-video .hero-v2__mobile-image {
    height: 100%
}

.hero-v2__video-background {
    position: relative;
    z-index: 5;
    grid-column: 1/-1;
    grid-row: 1/-1;
    aspect-ratio: var(--hero-v2-mobile-video-aspect-ratio, var(--hero-v2-video-aspect-ratio))
}

@media(min-width:480px) {
    .hero-v2__video-background {
        aspect-ratio: var(--hero-v2-video-aspect-ratio)
    }
}

.hero-v2--with-content .hero-v2__video-background:after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: color-mix(in srgb, transparent, #0c0c0c 20%)
}

.hero-v2--cover .hero-v2__video-background {
    aspect-ratio: unset
}

.hero-v2__video {
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%
}

.hero-v2--cover .hero-v2__video {
    position: absolute;
    inset: 0;
    height: 100%
}

.hero-v2--with-mobile-video .hero-v2__video {
    display: none
}

@media(min-width:480px) {
    .hero-v2--with-mobile-video .hero-v2__video {
        display: block
    }
}

.hero-v2__mobile-video {
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%
}

@media(min-width:480px) {
    .hero-v2__mobile-video {
        display: none
    }
}

.hero-v2--cover .hero-v2__mobile-video {
    position: absolute;
    inset: 0;
    height: 100%
}

.hero-v2__content {
    position: relative;
    z-index: 10;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 2rem;
    grid-column: 1/-1;
    grid-row: 1/-1;
    padding: 2rem
}

@media(min-width:480px) {
    .hero-v2__content {
        padding: 3rem 2rem
    }
}

@media(min-width:768px) {
    .hero-v2__content {
        gap: 3rem
    }
}

.hero-v2--aligned-to-top>.hero-v2__content {
    justify-content: flex-start
}

@media(min-width:768px) {
    .hero-v2--with-heading-2-style .hero-v2__content {
        gap: 2rem
    }
}

.hero-v2__heading {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase;
    margin: 0;
    width: 100%;
    max-width: 33.5rem;
    color: #fff
}

@media(min-width:768px) {
    .hero-v2__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase;
        max-width: 70.6rem
    }
}

.hero-v2--with-heading-1-extended-style .hero-v2__heading {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase
}

@media(min-width:768px) {
    .hero-v2--with-heading-1-extended-style .hero-v2__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase;
        max-width: 72.6rem;
        font-size: 9.6rem
    }
}

.hero-v2--with-heading-2-style .hero-v2__heading {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    font-feature-settings: "ss12" on;
    text-transform: unset
}

@media(min-width:768px) {
    .hero-v2--with-heading-2-style .hero-v2__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-size: 5.2rem;
        font-weight: 400;
        letter-spacing: 0;
        font-feature-settings: "ss12" on;
        text-transform: unset;
        max-width: 50rem
    }
}

.two-up-media {
    --current-two-up-media-item-aspect-ratio: var(--two-up-media-item-aspect-ratio, 1/1);
    --current-two-up-media-item-mobile-aspect-ratio: var(--two-up-media-item-mobile-aspect-ratio, var(--current-two-up-media-item-aspect-ratio));
    --current-two-up-media-second-item-aspect-ratio: var(--two-up-media-second-item-aspect-ratio, 1/1);
    --current-two-up-media-second-item-mobile-aspect-ratio: var(--two-up-media-second-item-mobile-aspect-ratio, var(--current-two-up-media-second-item-aspect-ratio));
    padding: 0 2rem
}

.two-up-media--with-image:not(.two-up-media--with-video) {
    --two-up-media-item-aspect-ratio: none;
    --two-up-media-item-mobile-aspect-ratio: none
}

.two-up-media--with-second-image {
    --two-up-media-second-item-aspect-ratio: none;
    --two-up-media-second-item-mobile-aspect-ratio: none
}

.two-up-media__content {
    display: flex;
    flex-direction: column;
    gap: 10.4rem;
    margin: 0 auto;
    width: 100%;
    max-width: 168rem
}

@media(min-width:768px) {
    .two-up-media__content {
        gap: 10rem
    }
}

.two-up-media__heading {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    font-feature-settings: "ss12" on;
    text-transform: unset;
    margin: 0;
    width: 100%;
    max-width: 65rem
}

@media(min-width:768px) {
    .two-up-media__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-size: 5.2rem;
        font-weight: 400;
        letter-spacing: 0;
        font-feature-settings: "ss12" on;
        text-transform: unset;
        max-width: 99.8rem
    }
}

.two-up-media__media {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    width: 100%
}

@media(min-width:768px) {
    .two-up-media__media {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        flex-direction: unset;
        align-items: flex-start
    }

    .two-up-media--with-wide-first-column .two-up-media__media {
        grid-template-columns: minmax(0, 1.34fr) minmax(0, .66fr)
    }
}

.two-up-media__item {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
    background-color: #0c0c0c;
    border-radius: 1.2rem;
    overflow: hidden
}

.two-up-media__item:first-child {
    aspect-ratio: var(--current-two-up-media-item-mobile-aspect-ratio)
}

@media(min-width:768px) {
    .two-up-media__item:first-child {
        aspect-ratio: var(--current-two-up-media-item-aspect-ratio)
    }
}

.two-up-media__item:nth-child(2) {
    aspect-ratio: var(--current-two-up-media-second-item-mobile-aspect-ratio)
}

@media(min-width:768px) {
    .two-up-media__item:nth-child(2) {
        aspect-ratio: var(--current-two-up-media-second-item-aspect-ratio)
    }
}

.two-up-media__item.two-up-media__item--as-figure {
    margin: 0
}

.two-up-media__background {
    grid-column: 1/-1;
    grid-row: 1/-1;
    width: 100%;
    height: 100%
}

.two-up-media__image {
    object-fit: cover;
    display: block;
    width: 100%;
    height: auto
}

.two-up-media--with-mobile-image .two-up-media__item:first-child .two-up-media__image {
    display: none
}

@media(min-width:480px) {
    .two-up-media--with-mobile-image .two-up-media__item:first-child .two-up-media__image {
        display: block
    }
}

.two-up-media--with-second-mobile-image .two-up-media__item:nth-child(2) .two-up-media__image {
    display: none
}

@media(min-width:480px) {
    .two-up-media--with-second-mobile-image .two-up-media__item:nth-child(2) .two-up-media__image {
        display: block
    }
}

.two-up-media__mobile-image {
    object-fit: cover;
    display: block;
    width: 100%;
    height: auto
}

@media(min-width:480px) {
    .two-up-media__mobile-image {
        display: none
    }
}

.two-up-media__video-background {
    position: relative;
    z-index: 5;
    grid-column: 1/-1;
    grid-row: 1/-1;
    aspect-ratio: var(--current-two-up-media-item-mobile-aspect-ratio);
    width: 100%;
    height: 100%
}

@media(min-width:480px) {
    .two-up-media__video-background {
        aspect-ratio: var(--current-two-up-media-item-aspect-ratio)
    }
}

.two-up-media__video {
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%
}

.two-up-media--with-mobile-video .two-up-media__item:first-child .two-up-media__video,
.two-up-media--with-second-mobile-video .two-up-media__item:nth-child(2) .two-up-media__video {
    display: none
}

@media(min-width:480px) {

    .two-up-media--with-mobile-video .two-up-media__item:first-child .two-up-media__video,
    .two-up-media--with-second-mobile-video .two-up-media__item:nth-child(2) .two-up-media__video {
        display: block
    }
}

.two-up-media__mobile-video {
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%
}

@media(min-width:480px) {
    .two-up-media__mobile-video {
        display: none
    }
}

.two-up-media__title-wrapper {
    position: relative;
    z-index: 10;
    display: flex;
    align-items: flex-end;
    grid-column: 1/-1;
    grid-row: 1/-1;
    padding: 2.4rem 2rem
}

@media(min-width:768px) {
    .two-up-media__title-wrapper {
        padding: 2rem
    }
}

.two-up-media__title {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    font-feature-settings: "ss12" on;
    text-transform: unset;
    width: 100%;
    max-width: 32rem;
    color: #fff;
    white-space: pre-line
}

@media(min-width:1024px) {
    .two-up-media__title {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-size: 5.2rem;
        font-weight: 400;
        letter-spacing: 0;
        font-feature-settings: "ss12" on;
        text-transform: unset;
        max-width: 52rem
    }
}

.generations {
    overflow: clip
}

.generations__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 0 auto;
    width: 100%;
    max-width: 133rem
}

@media(min-width:480px) {
    .generations__content {
        align-items: center
    }
}

.generations__heading {
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase;
    margin: 0;
    width: 100%;
    max-width: 30rem;
    color: #fff;
    text-align: left
}

@media(min-width:1024px) {
    .generations__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase
    }
}

@media(min-width:480px) {
    .generations__heading {
        margin: 0 auto;
        max-width: 62rem;
        text-align: center
    }
}

@media(min-width:1024px) {
    .generations__heading {
        max-width: 82rem
    }
}

.generations__heading strong:last-child {
    display: block
}

@media screen and (min-width:370px) {
    .generations__heading strong:last-child {
        position: relative;
        right: -10rem
    }
}

@media(min-width:480px) {
    .generations__heading strong:last-child {
        position: unset;
        right: unset;
        display: inline
    }
}

.generations__text {
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em;
    margin: 0;
    width: 100%;
    max-width: 32rem;
    color: #fff;
    text-align: left
}

@media(min-width:768px) {
    .generations__text {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

@media(min-width:480px) {
    .generations__text {
        margin: 0 auto;
        max-width: 52rem;
        text-align: center
    }
}

.generations__text:not(:first-child) {
    margin: 2.4rem 0 0
}

.generations__cta {
    margin: 0
}

@media(min-width:480px) {
    .generations__cta {
        margin: 0 auto
    }
}

.generations__cta:not(:first-child) {
    margin: 2.4rem 0 0
}

@media(min-width:480px) {
    .generations__cta:not(:first-child) {
        margin: 2.4rem auto 0
    }
}

.generations__items {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8rem 6rem
}

@media(min-width:480px) {
    .generations__items {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        flex-direction: unset;
        align-items: unset
    }
}

.generations__items:not(:first-child) {
    margin: 4rem auto 0
}

@media(min-width:768px) {
    .generations__items:not(:first-child) {
        margin: 2rem auto 0
    }
}

.generations__item {
    position: relative;
    display: block;
    max-width: 100%
}

@media(min-width:480px) {
    .generations__item {
        max-width: unset
    }
}

.generations__item--figure {
    margin: 0
}

.generations__image {
    display: block;
    width: 100%;
    height: auto;
    mix-blend-mode: lighten
}

.generations__figcaption {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 0;
    font-feature-settings: "ss12" on;
    text-transform: unset;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    color: #fff;
    text-align: center
}

@media(min-width:768px) {
    .generations__figcaption {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-size: 5.2rem;
        font-weight: 400;
        letter-spacing: 0;
        font-feature-settings: "ss12" on;
        text-transform: unset
    }
}

.lottie {
    --current-lottie-aspect-ratio: var(--lottie-aspect-ratio, none);
    --current-lottie-mobile-aspect-ratio: var(--lottie-mobile-aspect-ratio, none);
    display: flex;
    justify-content: center;
    padding: 0 2rem
}

.cta.section--dark+.lottie.section--dark,
.cta.section--tan+.lottie.section--tan,
.cta:not(.section--with-background)+.lottie:not(.section--with-background) {
    margin-top: -4rem
}

@media(min-width:768px) {

    .cta.section--dark+.lottie.section--dark,
    .cta.section--tan+.lottie.section--tan,
    .cta:not(.section--with-background)+.lottie:not(.section--with-background) {
        margin-top: -8rem
    }
}

.lottie__player {
    aspect-ratio: var(--current-lottie-aspect-ratio);
    margin: 0 auto;
    width: 100%
}

.lottie--with-mobile>.lottie__player {
    display: none
}

@media(min-width:480px) {
    .lottie--with-mobile>.lottie__player {
        display: block
    }
}

.lottie__mobile-player {
    aspect-ratio: var(--current-lottie-mobile-aspect-ratio);
    margin: 0 auto;
    width: 100%
}

@media(min-width:480px) {
    .lottie__mobile-player {
        display: none
    }
}

.hero-v3 {
    display: grid;
    margin: 0 auto;
    width: 100%;
    background-color: var(--color-black);
    overflow: hidden
}

.hero-v3[data-size=cover] {
    min-height: 100svh
}

.hero-v3__background {
    grid-column: 1/-1;
    grid-row: 1/-1;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

.hero-v3[data-size=cover] .hero-v3__background {
    position: relative
}

.hero-v3[data-has-video=true]:not([data-size=cover]) .hero-v3__background {
    aspect-ratio: var(--hero-v3-mobile-video-aspect-ratio, var(--hero-v3-video-aspect-ratio))
}

@media(min-width:480px) {
    .hero-v3[data-has-video=true]:not([data-size=cover]) .hero-v3__background {
        aspect-ratio: var(--hero-v3-video-aspect-ratio)
    }
}

.hero-v3:not([data-is-second-scene-active=true]) .hero-v3__background[data-scene-background=second],
.hero-v3[data-is-second-scene-active=true] .hero-v3__background[data-scene-background=first] {
    opacity: 0;
    visibility: hidden
}

.hero-v3[data-is-second-scene-active=true] .hero-v3__background[data-scene-background=second] {
    opacity: 1;
    visibility: visibile
}

.hero-v3__image {
    object-fit: cover;
    display: block;
    width: 100%;
    height: auto
}

.hero-v3[data-size=cover] .hero-v3__image {
    position: absolute;
    inset: 0;
    height: 100%
}

.hero-v3__background:has(.hero-v3__mobile-image) .hero-v3__image {
    display: none
}

@media(min-width:480px) {
    .hero-v3__background:has(.hero-v3__mobile-image) .hero-v3__image {
        display: block
    }
}

.hero-v3[data-has-video=true] .hero-v3__image {
    height: 100%
}

.hero-v3__mobile-image {
    object-fit: cover;
    display: block;
    width: 100%;
    height: auto
}

@media(min-width:480px) {
    .hero-v3__mobile-image {
        display: none
    }
}

.hero-v3[data-has-video=true] .hero-v3__mobile-image,
.hero-v3[data-size=cover] .hero-v3__mobile-image {
    height: 100%
}

.hero-v3__video-background {
    position: relative;
    z-index: 5;
    grid-column: 1/-1;
    grid-row: 1/-1;
    aspect-ratio: var(--hero-v3-mobile-video-aspect-ratio, var(--hero-v3-video-aspect-ratio));
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:480px) {
    .hero-v3__video-background {
        aspect-ratio: var(--hero-v3-video-aspect-ratio)
    }
}

.hero-v3[data-size=cover] .hero-v3__video-background {
    aspect-ratio: unset
}

.hero-v3:not([data-is-second-scene-active=true]) .hero-v3__video-background[data-scene-video-background=second],
.hero-v3[data-is-second-scene-active=true] .hero-v3__video-background[data-scene-video-background=first] {
    opacity: 0;
    visibility: hidden
}

.hero-v3[data-is-second-scene-active=true] .hero-v3__video-background[data-scene-video-background=second] {
    opacity: 1;
    visibility: visibile
}

.hero-v3__video {
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%
}

.hero-v3[data-size=cover] .hero-v3__video {
    position: absolute;
    inset: 0;
    height: 100%
}

.hero-v3__video-background:has(.hero-v3__mobile-video) .hero-v3__video {
    display: none
}

@media(min-width:480px) {
    .hero-v3__video-background:has(.hero-v3__mobile-video) .hero-v3__video {
        display: block
    }
}

.hero-v3__mobile-video {
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%
}

@media(min-width:480px) {
    .hero-v3__mobile-video {
        display: none
    }
}

.hero-v3[data-size=cover] .hero-v3__mobile-video {
    position: absolute;
    inset: 0;
    height: 100%
}

.hero-v3__content-wrapper {
    position: relative;
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    grid-column: 1/-1;
    grid-row: 1/-1;
    padding: 4rem 2rem;
    pointer-events: none;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:768px) {
    .hero-v3__content-wrapper {
        padding: 6rem 4.8rem
    }
}

.hero-v3__content-wrapper:has(.hero-v3__tag) {
    gap: 2rem
}

@media(min-width:768px) {
    .hero-v3__content-wrapper:has(.hero-v3__tag) {
        gap: unset
    }
}

.hero-v3[data-is-popover-active=true] .hero-v3__content-wrapper,
.hero-v3[data-is-second-scene-popover-active=true] .hero-v3__content-wrapper {
    opacity: 0;
    visibility: hidden
}

.hero-v3:first-child .hero-v3__content-wrapper {
    padding: 10rem 2rem 4rem
}

@media(min-width:768px) {
    .hero-v3:first-child .hero-v3__content-wrapper {
        padding: 10.6rem 4.8rem 6rem
    }
}

.hero-v3:not([data-is-second-scene-active=true]) .hero-v3__content-wrapper[data-scene=second],
.hero-v3[data-is-second-scene-active=true] .hero-v3__content-wrapper[data-scene=first] {
    opacity: 0;
    visibility: hidden
}

.hero-v3[data-is-second-scene-active=true] .hero-v3__content-wrapper[data-scene=second] {
    opacity: 1;
    visibility: visibile
}

.hero-v3[data-has-gradient=true] .hero-v3__content-wrapper:before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 22rem;
    background: linear-gradient(0deg, rgba(0, 0, 0, .6), transparent);
    pointer-events: none
}

.hero-v3__content {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-self: stretch;
    flex: 1 1;
    gap: 2rem;
    width: 100%;
    pointer-events: all
}

@media(min-width:768px) {
    .hero-v3__content {
        flex-direction: unset;
        align-items: flex-end;
        gap: 4rem 2rem
    }
}

.hero-v3__description {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    width: 100%;
    max-width: 33.6rem
}

@media(min-width:768px) {
    .hero-v3__description {
        gap: 1.6rem;
        max-width: var(--hero-v3-text-content-max-width)
    }
}

.hero-v3__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem
}

.hero-v3__heading {
    margin: 0;
    color: var(--color-white);
    white-space: pre-line;
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase
}

@media(min-width:768px) {
    .hero-v3__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-feature-settings: "ss12" on;
        font-size: 2.8rem;
        font-weight: 400;
        letter-spacing: 0;
        text-transform: uppercase
    }
}

.hero-v3__text {
    margin: 0;
    color: var(--color-white);
    white-space: pre-line;
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .hero-v3__text {
        line-height: 1.5;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.6rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em;
        line-height: 1.6;
        font-size: 1.7rem
    }
}

@media(min-width:768px)and (min-width:999999px) {
    .hero-v3__text {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

@media(min-width:768px) {
    .hero-v3[data-layout="text vertically centered and aligned to right / cta aligned to bottom"] .hero-v3__content {
        display: grid;
        grid-template-rows: 5rem 1fr 5rem;
        justify-content: flex-end;
        align-self: stretch
    }

    .hero-v3[data-layout="text vertically centered and aligned to right / cta aligned to bottom"] .hero-v3__content:before {
        content: ""
    }

    .hero-v3[data-layout="text vertically centered and aligned to right / cta aligned to bottom"] .hero-v3__description {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-self: stretch
    }

    .hero-v3[data-layout="text vertically centered and aligned to right / cta aligned to bottom"] .hero-v3__heading,
    .hero-v3[data-layout="text vertically centered and aligned to right / cta aligned to bottom"] .hero-v3__text {
        text-align: right
    }

    .hero-v3[data-layout="text vertically centered and aligned to right / cta aligned to bottom"] .hero-v3__actions {
        justify-content: flex-end;
        align-items: flex-end
    }

    .hero-v3[data-layout="text aligned to left / cta aligned to right"] .hero-v3__content {
        justify-content: space-between
    }

    .hero-v3[data-layout="text aligned to left / cta aligned to right"] .hero-v3__actions {
        justify-content: flex-end
    }

    .hero-v3[data-layout="text aligned to right / cta aligned to left"] .hero-v3__content {
        flex-direction: row-reverse;
        justify-content: space-between
    }

    .hero-v3[data-layout="text aligned to right / cta aligned to right"] .hero-v3__content {
        flex-direction: column;
        justify-content: flex-end
    }

    .hero-v3[data-layout="text aligned to right / cta aligned to right"] .hero-v3__actions {
        width: 100%;
        max-width: var(--hero-v3-text-content-max-width)
    }

    .hero-v3[data-layout="text aligned and justified to right / cta aligned to right"] .hero-v3__content {
        flex-direction: column
    }

    .hero-v3[data-layout="text aligned and justified to right / cta aligned to right"] .hero-v3__description {
        text-align: right
    }

    .hero-v3[data-layout="text aligned and justified to right / cta aligned to right"] .hero-v3__actions {
        justify-content: flex-end
    }

    .hero-v3[data-layout="text aligned to left / cta aligned to left"] .hero-v3__content {
        flex-direction: column;
        align-items: flex-start
    }
}

@media(max-width:767.98px) {
    .hero-v3[data-mobile-layout="text aligned to top / cta aligned to bottom"] .hero-v3__content {
        justify-content: space-between;
        align-self: stretch
    }

    .hero-v3[data-mobile-layout="text and cta aligned to top"] .hero-v3__content {
        justify-content: flex-start;
        align-self: stretch
    }
}

.hero-v3__popover {
    position: relative;
    z-index: 15;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    grid-column: 1/-1;
    grid-row: 1/-1;
    padding: 4rem 2rem;
    pointer-events: none
}

@media(min-width:768px) {
    .hero-v3__popover {
        padding: 4rem 3.2rem
    }
}

.hero-v3__tag {
    justify-self: flex-start;
    align-self: flex-start;
    color: var(--color-white);
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase
}

@media(min-width:768px) {
    .hero-v3__tag {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase
    }

    .hero-v3__scene-selector-placeholder+.hero-v3__tag {
        margin: 2rem 0 0
    }
}

.hero-v3__scene-selector-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%
}

.hero-v3__scene-selector-placeholder {
    width: 100%;
    height: 5rem
}

.hero-v3__scene-selector {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(12rem, 1fr));
    min-height: 5rem;
    border-radius: 2.6rem;
    background-color: color-mix(in srgb, transparent, var(--color-white) 50%);
    -webkit-backdrop-filter: blur(.6rem);
    backdrop-filter: blur(.6rem)
}

@media(min-width:768px) {
    .hero-v3__scene-selector {
        grid-template-columns: repeat(2, minmax(18rem, 1fr))
    }
}

.hero-v3__scene-trigger {
    position: relative;
    z-index: 5;
    padding: 0 .8rem;
    color: var(--color-figure-black);
    background-color: transparent;
    border: unset;
    border-radius: 2.6rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    pointer-events: all;
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0;
    transition: opacity .3s ease-in-out
}

@media(min-width:768px) {
    .hero-v3__scene-trigger {
        line-height: 1.2;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.4rem;
        font-weight: 500;
        letter-spacing: 0
    }
}

.hero-v3__scene-trigger:first-child {
    grid-column: 1;
    grid-row: 1
}

.hero-v3__scene-trigger:nth-child(2) {
    grid-column: 2;
    grid-row: 1
}

.hero-v3:not([data-is-second-scene-active=true]) .hero-v3__scene-trigger:nth-child(2):not(:hover),
.hero-v3[data-is-second-scene-active=true] .hero-v3__scene-trigger:first-child:not(:hover) {
    opacity: .6
}

.hero-v3__scene-indicator {
    display: flex;
    padding: .1rem;
    grid-column: 1;
    grid-row: 1;
    background: linear-gradient(180deg, #ff38bb 4.58%, #ff8038 55.48%, #f5be66 86.46%, #f4dca8);
    border-radius: 2.6rem;
    overflow: hidden;
    transition: transform .3s ease-in-out, width .3s ease-in-out
}

.hero-v3__scene-indicator:before {
    content: "";
    width: 100%;
    align-self: stretch;
    background-color: var(--color-white);
    border-radius: 2.6rem
}

.hero-v3[data-is-scene-indicator-active=true] .hero-v3__scene-indicator {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateX(var(--hero-v3-scene-indicator-translate-x, 0));
    grid-column: unset;
    grid-row: unset;
    width: var(--hero-v3-scene-indicator-width);
    height: 5rem
}

.hero-v4 {
    display: flex;
    align-items: flex-start;
    margin: 0 auto;
    padding: 4rem 2.4rem;
    width: 100%;
    min-height: 100svh;
    background-color: var(--color-white)
}

@media(min-width:768px) {
    .hero-v4 {
        align-items: center;
        padding: 6rem 4.8rem
    }
}

.hero-v4:first-child {
    padding: 11.4rem 2rem 4rem
}

@media(min-width:768px) {
    .hero-v4:first-child {
        padding: 10.2rem 4.8rem 6rem
    }
}

.hero-v4:has(.hero-v4__media) {
    position: relative
}

.hero-v4__image-wrapper,
.hero-v4__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%
}

.hero-v4__image-wrapper {
    z-index: 2
}

.hero-v4__image {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.hero-v4:has(.hero-v4__mobile-image) .hero-v4__image {
    display: none
}

@media(min-width:768px) {
    .hero-v4:has(.hero-v4__mobile-image) .hero-v4__image {
        display: block
    }
}

.hero-v4__mobile-image {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%
}

@media(min-width:768px) {
    .hero-v4__mobile-image {
        display: none
    }
}

.hero-v4__video-wrapper {
    position: absolute;
    inset: 0;
    z-index: 4;
    width: 100%;
    height: 100%
}

.hero-v4__video {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.hero-v4:has(.hero-v4__mobile-video) .hero-v4__video {
    display: none
}

@media(min-width:768px) {
    .hero-v4:has(.hero-v4__mobile-video) .hero-v4__video {
        display: block
    }
}

.hero-v4__mobile-video {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%
}

@media(min-width:768px) {
    .hero-v4__mobile-video {
        display: none
    }
}

.hero-v4__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin: 0 auto;
    width: 100%
}

@media(min-width:1024px) {
    .hero-v4__content {
        max-width: 80vw
    }
}

.hero-v4.hero-v4:has(.hero-v4__media) .hero-v4__content {
    position: relative;
    z-index: 5
}

.hero-v4__description {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 33.6rem
}

@media(min-width:768px) {
    .hero-v4__description {
        max-width: var(--hero-v4-text-content-max-width)
    }
}

.hero-v4__logo-image-wrapper {
    width: 100%;
    height: 5rem
}

@media(min-width:768px) {
    .hero-v4__logo-image-wrapper {
        height: 8.7rem
    }
}

.hero-v4__logo-image {
    display: block;
    width: auto;
    height: 100%
}

.hero-v4__heading {
    margin: 0;
    color: var(--color-figure-black);
    line-height: 1;
    font-family: pp-neue-machina-plain, serif;
    font-size: 4.2rem;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    letter-spacing: -.01em;
    text-transform: uppercase
}

@media(min-width:768px) {
    .hero-v4__heading {
        line-height: 1;
        font-family: pp-neue-machina-plain, serif;
        font-size: 8.5rem;
        font-weight: 400;
        font-feature-settings: "ss12" on;
        letter-spacing: -.01em;
        text-transform: uppercase
    }
}

.hero-v4__heading:not(:first-child) {
    margin: 1.6rem 0 0
}

.hero-v4__text {
    margin: 0;
    color: var(--color-figure-black);
    text-transform: unset;
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .hero-v4__text {
        line-height: 1.5;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.6rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.hero-v4__text:not(:first-child) {
    margin: 1.6rem 0 0
}

.hero-v4__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem
}

.hero-v4__actions:not(:first-child) {
    margin: 2rem 0 0
}

@media(min-width:768px) {
    .hero-v4__actions:not(:first-child) {
        margin: 4rem 0 0
    }
}

.gradient-stop--1--1 {
    stop-color: #ff38bb
}

.gradient-stop--1--2 {
    stop-color: #ff8038
}

.gradient-stop--1--3 {
    stop-color: #f5be66
}

.gradient-stop--1--4 {
    stop-color: #f1fff7
}

.gradient-stop--2--1 {
    stop-color: #ff38bb
}

.gradient-stop--2--2 {
    stop-color: #ff8038
}

.gradient-stop--2--3 {
    stop-color: #f5be66
}

.gradient-stop--2--4 {
    stop-color: #f4dca8
}

.loader {
    display: block;
    width: 2rem;
    height: 2rem;
    border: .2rem solid hsla(0, 0%, 5%, .2);
    border-left-color: #0c0c0c;
    border-radius: 50%;
    animation: loader .5s linear infinite
}

@keyframes loader {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

.newsletter-form {
    width: 100%;
    min-width: 30rem
}

.newsletter-form .custom-input__label-input-container:focus-within {
    border-color: var(--color-figure-black)
}

.newsletter-form__button {
    height: 100%;
    color: var(--color-white);
    background-color: var(--color-figure-black);
    border: .1rem solid var(--color-figure-black)
}

.newsletter-form__button:hover {
    color: var(--color-figure-black)
}

.newsletter-form__button:disabled,
.newsletter-form__button:hover {
    background-color: transparent;
    border-color: var(--color-figure-black)
}

.newsletter-form__button:disabled {
    color: transparent
}

.newsletter-form__loader {
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 2rem;
    height: 2rem;
    opacity: 0;
    visibility: hidden
}

.newsletter-form.is-loading .newsletter-form__loader {
    opacity: 1;
    visibility: visible
}

.newsletter-form__description {
    line-height: 0;
    color: transparent;
    font-size: 0;
    text-align: left
}

.newsletter-form__description.is-visible {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    margin: .6rem 0 0 2.5rem
}

.newsletter-form.is-error .newsletter-form__description {
    color: #dd2424
}

.newsletter-form.is-success .newsletter-form__description {
    color: #49d219
}

.custom-input__label-input-container {
    transition: border-color .3s ease-in-out;
    display: flex;
    align-items: center;
    padding: .5rem .5rem .5rem 2.4rem;
    height: 5.8rem;
    background-color: #fff;
    border: .1rem solid #fff;
    border-radius: 2.9rem
}

.custom-input__label-input-container:focus-within {
    border-color: #000000
}

.is-error .custom-input__label-input-container {
    border-color: #dd2424
}

.custom-input__field--is-textarea .custom-input__label-input-container {
    height: auto;
    min-height: 5.8rem;
    border-radius: 1rem
}

.custom-input__label {
    position: relative;
    display: flex;
    align-items: center;
    margin: 0 .5rem 0 0;
    width: 100%;
    height: 100%
}

.custom-input__label-text {
    transition: top .3s ease-in-out, transform .3s ease-in-out, color .3s ease-in-out, font-size .3s ease-in-out;
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    position: absolute;
    top: 2.9rem;
    transform: translateY(-100%);
    color: hsla(0, 0%, 5%, .6);
    white-space: nowrap;
    pointer-events: none;
    line-height: 1
}

.custom-input__field.is-filled .custom-input__label-text,
.custom-input__field:focus-within .custom-input__label-text {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0;
    top: .9rem;
    transform: unset;
    color: #0c0c0c
}

.custom-input__input {
    transition: transform .3s ease-in-out;
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    display: block;
    padding: 0;
    width: 100%;
    height: 2rem;
    background-color: transparent;
    border: none;
    outline: none
}

.custom-input__field--is-textarea .custom-input__input {
    min-height: 13rem;
    padding-top: 1.5rem;
    resize:none;
}

.custom-input__field.is-filled .custom-input__input,
.custom-input__field:focus-within .custom-input__input {
    transform: translateY(.8rem)
}

.custom-input__error {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    color: #dd2424;
    padding-left: 2.4rem;
    margin-top: .6rem
}

.custom-select {
    position: relative;
    background: #fff;
    box-shadow: 0 .4rem 2rem hsla(0, 0%, 5%, .08);
    border-radius: .8rem;
    overflow: hidden
}

.custom-select__el {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    background-color: #fff;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    text-transform: uppercase;
    height: 4.2rem;
    line-height: 4.2rem;
    width: 100%;
    border: none;
    padding: 0 5rem 0 1rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #0c0c0c
}

@media(max-width:767.98px) {
    .custom-select__el {
        line-height: 4.5rem
    }
}

.custom-select__caret {
    position: absolute;
    top: 50%;
    right: 2rem;
    transform: translateY(-50%);
    pointer-events: none;
    width: 1.2rem
}

.gradient-rich-text__gradient-text {
    background: linear-gradient(270deg, #ff38bb 4.25%, #ff8038 51.61%, #f5be66 80.43%, #f4dca8 93.03%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-weight: 400
}

.icon {
    position: relative;
    display: inline-block
}

.icon__blur,
.icon__solid,
.icon__solid-icon {
    display: block;
    width: 100%;
    height: 100%
}

.icon__blur {
    transition: opacity .3s ease-in-out;
    filter: blur(.2rem);
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0
}

@media(pointer:fine) {
    .is-hovering .icon__blur {
        opacity: .75
    }

    .icon--arrow.is-hovering .icon__blur {
        opacity: 1
    }
}

.icon__blur-icon {
    width: 100%;
    height: 100%
}

.preview-helper {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    background-color: #dd2424;
    border-color: #fff;
    z-index: 75;
    padding: 1rem;
    border-radius: 1rem;
    color: #0c0c0c
}

@media(pointer:fine) {
    .preview-helper:hover {
        color: #fff;
        background-color: #dd2424;
        border-color: #fff
    }
}

.article {
    --current-article-color: var(--article-color, #fff);
    --current-article-background-color: var(--article-background-color, #0c0c0c);
    color: var(--current-article-color);
    background-color: var(--current-article-background-color)
}

.article--light {
    --article-color: #0c0c0c;
    --article-background-color: #fff
}

.article__hero {
    display: flex;
    align-items: flex-end;
    aspect-ratio: 934/1434;
    padding: 8rem 2rem;
    width: 100%;
    height: auto;
    max-height: 100svh;
    min-height: 50rem;
    background-color: #0c0c0c
}

@media(min-width:480px) {
    .article__hero {
        aspect-ratio: 1920/955;
        min-height: 60rem
    }
}

.article__hero--with-cover {
    position: relative
}

.article-hero__cover,
.article-hero__cover:after {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%
}

.article-hero__cover:after {
    content: "";
    display: block;
    background-color: color-mix(in srgb, #0c0c0c, transparent 40%)
}

.article-hero__cover-image,
.article-hero__cover-image-mobile {
    position: absolute;
    inset: 0;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.article-hero__cover--with-mobile-cover>.article-hero__cover-image {
    display: none
}

@media(min-width:768px) {
    .article-hero__cover--with-mobile-cover>.article-hero__cover-image {
        display: block
    }

    .article-hero__cover--with-mobile-cover>.article-hero__cover-image-mobile {
        display: none
    }
}

.article-hero__cover-video {
    position: absolute;
    inset: 0;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.article__hero-content {
    position: relative;
    z-index: 5;
    display: flex;
    flex-direction: column;
    gap: 4rem;
    margin: 0 auto;
    width: 100%;
    max-width: 116.4rem
}

.article__kicker {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500
}

.article__heading,
.article__kicker {
    letter-spacing: 0;
    color: #fff;
    text-align: left
}

.article__heading {
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-weight: 400;
    font-feature-settings: "ss12" on;
    text-transform: unset;
    margin: 0;
    font-size: 3.4rem
}

@media(min-width:768px) {
    .article__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-size: 5.2rem;
        font-weight: 400;
        letter-spacing: 0;
        font-feature-settings: "ss12" on;
        text-transform: unset
    }
}

.article__details {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem
}

.article__author {
    font-style: normal
}

.article__author,
.article__publication-date {
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    color: #fff
}

.article__author+.article__publication-date {
    display: flex;
    align-items: center;
    gap: 1rem
}

.article__author+.article__publication-date:before {
    content: "";
    position: relative;
    top: .1rem;
    display: block;
    width: .5rem;
    min-width: .5rem;
    height: .5rem;
    background-color: #fff;
    border-radius: 50%
}

.article__content-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 4rem 0;
    overflow: clip
}

@media(min-width:768px) {
    .article__content-wrapper {
        padding: 8rem 0
    }
}

.article__content {
    width: 100%
}

.article__content>.rich-text-blockquote,
.article__content>.rich-text-heading,
.article__content>.rich-text-ol,
.article__content>.rich-text-paragraph,
.article__content>.rich-text-ul {
    padding: 0 2rem;
    width: 100%;
    max-width: 96.5rem
}

.article__content>.rich-text-heading--h2 {
    line-height: 1.1;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .article__content>.rich-text-heading--h2 {
        font-size: 3.6rem
    }
}

.article__content>.rich-text-heading--h3 {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .article__content>.rich-text-heading--h3 {
        line-height: 1.1;
        font-size: 2.2rem
    }
}

.article__content>.rich-text-paragraph {
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .article__content>.rich-text-paragraph {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.article__content>.rich-text-ol,
.article__content>.rich-text-ul {
    margin: 1em auto;
    padding: 0 2rem 0 4rem
}

.article__content>:first-child {
    margin-top: 0
}

.article__content .rich-text-link {
    color: var(--current-article-color)
}

.action {
    --current-action-color: var(--action-color, var(--color-white));
    --current-action-color-hover: var(--action-color-hover, var(--color-figure-black));
    --current-action-background-color: var(--action-background-color, transparent);
    --current-action-background-color-hover: var(--action-background-color-hover, var(--color-white));
    --current-action-border-color: var(--action-border-color, var(--color-white));
    --current-action-border-color-hover: var(--action-border-color-hover, var(--color-white));
    position: relative;
    display: inline-flex;
    align-items: center;
    padding: 0 1.6rem;
    min-height: 4rem;
    color: var(--current-action-color);
    font-size: 1.2rem !important;
    white-space: nowrap;
    background-color: var(--current-action-background-color);
    border: 1px solid var(--current-action-border-color);
    border-radius: 1.2rem;
    pointer-events: all;
    line-height: 1.2;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 0;
    transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out
}

@media(min-width:768px) {
    .action {
        padding: 0 2rem;
        min-height: 4.9rem;
        font-size: 1.4rem !important
    }
}

.action[data-color=black] {
    --current-action-color: var(--color-figure-black);
    --current-action-color-hover: var(--color-white);
    --current-action-background-color: transparent;
    --current-action-background-color-hover: var(--color-figure-black);
    --current-action-border-color: var(--color-figure-black);
    --current-action-border-color-hover: var(--color-figure-black)
}

.action[data-is-loading=true] {
    pointer-events: none
}

@media(min-width:0)and (pointer:fine) {
    .action:hover {
        color: var(--current-action-color-hover);
        background-color: var(--current-action-background-color-hover);
        border-color: var(--current-action-border-color-hover)
    }
}

.action__label {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:768px) {
    .action__label {
        gap: 2.4rem
    }
}

.action[data-is-loading=true]>.action__label {
    opacity: 0;
    visibility: hidden
}

.action__dot {
    width: .6rem;
    min-width: .6rem;
    height: .6rem;
    background-color: currentcolor;
    border-radius: 50%
}

.action__icon {
    width: 1.2rem;
    min-width: 1.2rem;
    height: auto;
    color: currentcolor
}

.action__icon--flipped-vertically {
    transform: scaleY(-1)
}

a:not([target=_blank])>.action>.action__icon[data-icon-type=diagonal-arrow] {
    transform: rotate(45deg)
}

button:has(>.action) {
    padding: unset;
    background-color: unset;
    border: unset;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer
}

a:has(>.action[data-is-loading=true]),
button:has(>.action[data-is-loading=true]) {
    pointer-events: none
}

.action__plus {
    position: relative;
    width: 1.6rem;
    min-width: 1.6rem;
    height: 1.6rem;
    transition: transform .3s ease-in-out
}

@media(min-width:0)and (pointer:fine) {
    .action:hover .action__plus {
        transform: rotate(90deg)
    }
}

.action__plus:after,
.action__plus:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 2rem;
    height: .1rem;
    background-color: currentcolor
}

.action__plus:after {
    transform: translate(-50%, -50%) rotate(90deg)
}

.action__close {
    position: relative;
    width: 1.6rem;
    min-width: 1.6rem;
    height: 1.6rem
}

.action__close:after,
.action__close:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
    width: 2rem;
    height: .1rem;
    background-color: currentcolor
}

.action__close:after {
    transform: translate(-50%, -50%) rotate(45deg)
}

.action__loader-wrapper {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease-in-out
}

.action[data-is-loading=true] .action__loader-wrapper {
    opacity: 1
}

.action__loader {
    display: block;
    width: 2rem;
    height: 2rem;
    border: .2rem solid color-mix(in srgb, transparent, currentcolor 20%);
    border-left-color: currentcolor;
    border-radius: 50%;
    animation: action-loader .5s linear infinite
}

@keyframes action-loader {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

.popover {
    position: relative;
    display: flex;
    transform: translate(2rem, 4rem);
    width: 100%;
    max-width: 51.4rem;
    max-height: calc(100svh - 4rem - 10.8rem);
    background-color: color-mix(in srgb, transparent, var(--color-black-alt) 72%);
    border-radius: .8rem;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    pointer-events: all;
    transition: transform .3s ease-in-out, opacity .3s ease-in-out, visibility .3s ease-in-out
}

@media(min-width:768px) {
    .popover {
        transform: translate(3.2rem, 4rem);
        max-height: calc(100svh - 4rem - 10.8rem)
    }
}

@media screen and (min-width:768px)and (max-height:600px) {
    .popover {
        max-height: 45.2rem
    }
}

.popover[data-state=active] {
    transform: unset;
    opacity: 1;
    visibility: visible
}

.popover__button {
    position: absolute;
    top: 2.4rem;
    right: 2.4rem;
    z-index: 5
}

@media(min-width:768px) {
    .popover__button {
        top: 4.4rem;
        right: 4rem
    }
}

.popover__content-wrapper {
    padding: 0 2rem 0 2.4rem;
    min-width: calc(100% + 2rem);
    overflow-y: auto;
    -webkit-mask-image: linear-gradient(180deg, transparent 6rem, var(--color-black) 12rem, var(--color-black) 96%, transparent 100%);
    mask-image: linear-gradient(180deg, transparent 6rem, var(--color-black) 12rem, var(--color-black) 96%, transparent 100%)
}

@media(min-width:768px) {
    .popover__content-wrapper {
        padding: 0 2rem 0 4rem;
        -webkit-mask-image: linear-gradient(180deg, transparent 9.4rem, var(--color-black) 13.4rem, var(--color-black) 96%, transparent 100%);
        mask-image: linear-gradient(180deg, transparent 9.4rem, var(--color-black) 13.4rem, var(--color-black) 96%, transparent 100%)
    }
}

.popover__content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    padding: 11rem 0 8rem
}

@media(min-width:768px) {
    .popover__content {
        gap: 12rem;
        padding: 15.2rem 0 8rem
    }
}

.popover__heading {
    margin: 0;
    color: var(--color-white);
    white-space: pre-line;
    line-height: 1.11;
    font-family: pp-neue-machina-plain, serif;
    font-feature-settings: "ss12" on;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase
}

@media(min-width:768px) {
    .popover__heading {
        line-height: 1.11;
        font-family: pp-neue-machina-plain, serif;
        font-feature-settings: "ss12" on;
        font-size: 2.8rem;
        font-weight: 400;
        letter-spacing: 0;
        text-transform: uppercase
    }
}

.popover__rich-text {
    color: var(--color-white);
    white-space: pre-line;
    line-height: 1.6;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.7rem;
    font-weight: var(--font-weight, 400);
    letter-spacing: -.01em
}

@media(min-width:768px) {
    .popover__rich-text {
        line-height: 1.6;
        font-family: neue-haas-grot-text, sans-serif;
        font-size: 1.9rem;
        font-weight: var(--font-weight, 400);
        letter-spacing: -.01em
    }
}

.rich-text-v2__paragraph {
    margin: 0
}

.rich-text-v2__paragraph:not(:first-child) {
    margin: 1em 0 0
}

.text-link-with-underline {
    color: currentcolor;
    text-decoration: underline
}

:root {
    --color-white: #fff;
    --color-black: #000;
    --color-black-alt: #1d1d1d;
    --color-figure-black: #0c0c0c;
    --color-figure-white: #f6f6ef;
    --color-grey-alt-2: #2e2e2e;
    font-size: 62.5%
}

body {
    line-height: 1.5;
    font-family: neue-haas-grot-text, sans-serif;
    font-size: 1.4rem;
    letter-spacing: -.01em;
    margin: 0;
    color: #0c0c0c;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    --content-padding: 2rem
}

@media(min-width:768px) {
    body {
        font-size: 1.6rem;
        --content-padding: 2rem
    }
}

* {
    box-sizing: border-box
}

body.is-unscrollable {
    overflow: hidden
}

img,
svg {
    display: block
}