@media screen and (max-width:1000px) {
    .MediaArea.gallery.inline .MediaArea--slide {
        width: calc(50% - 15px)
    }
}

@media screen and (max-width:750px) {
    .MediaArea.gallery.inline .MediaArea--slide {
        width: calc(50% - 7.5px)
    }
}

@media screen and (max-width:580px) {
    .MediaArea.gallery.inline .MediaArea--slide {
        width: calc(90% - 15px)
    }
}

.MediaArea.gallery.inline .SectionTitle {
    margin-left: 0;
    margin-right: 0
}

.MediaArea.gallery .MediaArea--sliderControls {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 45px;
    padding-bottom: 0
}

@media screen and (max-width:580px) {
    .MediaArea.gallery .MediaArea--sliderControls {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }

    .MediaArea.gallery .flickity-page-dots {
        display: none
    }
}

.MediaArea.width-narrow {
    margin-bottom: 180px
}

@media screen and (max-width:1000px) {
    .MediaArea.width-narrow {
        margin-bottom: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .MediaArea.width-narrow {
        margin-bottom: 90px
    }
}

.MediaArea.width-narrow .MediaArea--single,
.MediaArea.width-narrow .MediaArea--slider {
    max-width: 735px;
    padding-left: 60px;
    padding-right: 60px;
    margin-left: auto;
    margin-right: auto
}

.MediaArea.sitewidth {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px)
}

@media(max-width:1430px) {
    .MediaArea.sitewidth {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .MediaArea.sitewidth {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .MediaArea.sitewidth {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .MediaArea.sitewidth {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .MediaArea.sitewidth {
        max-width: 100%;
        margin: 0
    }
}

.MediaArea.fullwidth .MediaArea--header {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px)
}

@media(max-width:1430px) {
    .MediaArea.fullwidth .MediaArea--header {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .MediaArea.fullwidth .MediaArea--header {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .MediaArea.fullwidth .MediaArea--header {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .MediaArea.fullwidth .MediaArea--header {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .MediaArea.fullwidth .MediaArea--header {
        max-width: 100%;
        margin: 0
    }
}

.MediaArea.fullwidth .MediaSlide--caption {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    padding-right: 25%
}

@media(max-width:1430px) {
    .MediaArea.fullwidth .MediaSlide--caption {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .MediaArea.fullwidth .MediaSlide--caption {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .MediaArea.fullwidth .MediaSlide--caption {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .MediaArea.fullwidth .MediaSlide--caption {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .MediaArea.fullwidth .MediaSlide--caption {
        max-width: 100%;
        margin: 0
    }
}

.MediaArea.fullwidth .MediaSlide--media {
    max-height: 100vh
}

.Accordion .MediaArea {
    margin-top: 0;
    margin-bottom: 45px
}

@media screen and (max-width:1000px) {
    .Accordion .MediaArea {
        margin-bottom: 5.625vw
    }
}

@media screen and (max-width:400px) {
    .Accordion .MediaArea {
        margin-bottom: 22.5px
    }
}

.ArticleSection .MediaArea {
    margin-top: 45px;
    margin-bottom: 45px
}

@media screen and (max-width:1000px) {
    .ArticleSection .MediaArea {
        margin-top: 5.625vw
    }
}

@media screen and (max-width:400px) {
    .ArticleSection .MediaArea {
        margin-top: 22.5px
    }
}

@media screen and (max-width:1000px) {
    .ArticleSection .MediaArea {
        margin-bottom: 5.625vw
    }
}

@media screen and (max-width:400px) {
    .ArticleSection .MediaArea {
        margin-bottom: 22.5px
    }
}

.ArticleSection .ArticleSection--title+.MediaArea {
    margin-top: 0
}

.MediaArea--header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end
}

.MediaArea--wrapper {
    will-change: transform
}

.MediaArea--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    padding-bottom: 1em
}

[lang=zh] .MediaArea--title,
[lang=zh-Hant] .MediaArea--title,
[lang=zh-Hans] .MediaArea--title,
[lang=zh-CN] .MediaArea--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .MediaArea--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.MediaArea--slider .MediaArea--title {
    max-width: calc(100% - 130px)
}

@media screen and (max-width:580px) {
    .MediaArea--slider .MediaArea--title {
        max-width: none
    }
}

.MediaArea--sliderControls {
    margin-left: auto;
    padding-bottom: 30px;
    line-height: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media screen and (max-width:580px) {
    .MediaArea--sliderControls {
        display: none
    }
}

.MediaArea--sliderControls .RoundIconButton {
    display: block;
    margin-left: 8px
}

.MediaArea--sliderControls .RoundIconButton:first-child {
    margin-left: 0
}

.MediaArea--slider:not(.is-draggable) .MediaArea--sliderControls {
    display: none
}

.MediaArea--slider .flickity-page-dots {
    display: none;
    text-align: center;
    padding-top: 5px
}

@media screen and (max-width:580px) {
    .MediaArea--slider .flickity-page-dots {
        display: block
    }
}

.MediaArea--slide {
    width: 100%;
    margin-right: 30px;
    display: none
}

@media screen and (max-width:750px) {
    .MediaArea--slide {
        margin-right: 15px
    }
}

.MediaArea--slide:first-of-type {
    display: block
}

.is-slider-ready .MediaArea--slide,
.MediaArea--slide.is-visible {
    display: block
}

.MediaSlide--media {
    position: relative;
    overflow: hidden
}

.MediaSlide--media.video {
    background-color: #f9f9fa
}

.MediaSlide--media .Media img {
    -o-object-fit: cover;
    object-fit: cover
}

.MediaSlide.fullwidth .MediaSlide--media {
    height: 800px;
    max-height: calc(100vh - 150px)
}

.MediaSlide.fullwidth .MediaSlide--media>.Media {
    height: calc(100% + 200px);
    top: -100px;
    -webkit-transform: translateY(100px);
    transform: translateY(100px)
}

@media screen and (max-width:1200px) {
    .MediaSlide.fullwidth .MediaSlide--media {
        height: 67vw
    }
}

.MediaSlide--link {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1)
}

html:not(.can-touch) .MediaSlide--link:active,
html:not(.can-touch) .MediaSlide--link:hover {
    opacity: 1
}

.MediaSlide--media .MediaSlide--link {
    width: 100%;
    height: 100%
}

.is-selected .MediaSlide--link,
.MediaArea--single .MediaSlide--link {
    display: block
}

.MediaSlide--media.video .MediaSlide--link {
    display: none
}

.MediaSlide--link>.Icon {
    font-size: 13px
}

.MediaSlide--zoomIcon {
    position: absolute;
    top: 15px;
    left: auto;
    right: 15px
}

.MediaSlide--zoomIcon>.Icon {
    font-size: 13px
}

.MediaSlide--caption {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363;
    padding-top: 1.25em;
    opacity: 0;
    transition: opacity .4s
}

[lang=zh] .MediaSlide--caption,
[lang=zh-Hant] .MediaSlide--caption,
[lang=zh-Hans] .MediaSlide--caption,
[lang=zh-CN] .MediaSlide--caption {
    line-height: 1.5
}

.is-visible.is-selected .MediaSlide--caption,
.MediaArea--single .MediaSlide--caption {
    opacity: 1
}

@media screen and (max-width:750px) {
    .MediaSlide--caption {
        padding-top: 15px
    }
}

.MediaOverlay--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    overflow: hidden;
    height: 100vh;
    max-width: 100%;
    background-color: #3c4150;
    color: #fff
}

.Overlay .MediaOverlay--inner {
    padding-top: 0
}

.Overlay .MediaOverlay--inner .MediaOverlay--meta {
    padding-right: 90px
}

.Overlay .MediaOverlay--inner .MediaOverlay--content {
    margin-bottom: 45px
}

.Overlay .MediaOverlay--inner .MediaOverlay--homeButton {
    display: none
}

.Overlay .MediaOverlay--inner .MediaOverlay--footer {
    display: none
}

.Overlay .MediaOverlay--inner.arts .MediaOverlay--content {
    margin-top: 30px;
    margin-bottom: 30px
}

.Overlay .MediaOverlay--inner.arts-fullsize .MediaOverlay--content {
    margin: 0
}

.MediaOverlay--meta {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding: 1em 30px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1
}

@media screen and (max-width:1000px) {
    .MediaOverlay--meta {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.MediaOverlay--header {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    margin-bottom: 15px
}

[lang=zh] .MediaOverlay--header,
[lang=zh-Hant] .MediaOverlay--header,
[lang=zh-Hans] .MediaOverlay--header,
[lang=zh-CN] .MediaOverlay--header {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .MediaOverlay--header {
        width: 100%
    }
}

.MediaOverlay--title {
    font-weight: 700;
    padding-right: 2em
}

@media screen and (max-width:750px) {
    .MediaOverlay--title {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        padding-right: 0
    }

    .MediaOverlay--title>br {
        display: none
    }
}

.MediaOverlay--date {
    color: #b1b3b9;
    display: block
}

.MediaOverlay--social {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.MediaOverlay--social>.RoundIconButton {
    display: block;
    margin-right: 10px;
    margin-bottom: 15px
}

.MediaOverlay--social>.RoundIconButton:last-child {
    margin-right: 0
}

.MediaOverlay--content {
    margin: 0 30px;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    position: relative
}

@media screen and (max-width:750px) {
    .MediaOverlay--content {
        margin: 0
    }
}

.MediaOverlay--image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow: hidden
}

.MediaOverlay--image picture {
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow: hidden
}

.MediaOverlay--image img {
    width: auto;
    margin: 0 auto;
    max-height: 100%;
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.MediaOverlay--video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.MediaOverlay--video--inner {
    width: 100%;
    max-width: calc(164vh - 240px)
}

.MediaOverlay--video--inner>.Iframe {
    width: 100%;
    background-color: transparent
}

.MediaOverlay--footer {
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200;
    margin-top: 15px;
    padding-top: 1em;
    padding-bottom: 1em;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    text-align: center
}

@media(max-width:1430px) {
    .MediaOverlay--footer {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .MediaOverlay--footer {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .MediaOverlay--footer {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .MediaOverlay--footer {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .MediaOverlay--footer {
        max-width: 100%;
        margin: 0
    }
}

.MediaOverlay--homeButton {
    margin-bottom: 15px
}

.MediaOverlay--footer--text>span:first-child {
    margin-right: 30px
}

@media screen and (max-width:750px) {
    .MediaOverlay--footer--text>span:first-child {
        margin-right: .5em
    }
}

.MsDynamicsForm div[data-form-block-id] .formLoader {
    border-width: 5px;
    border-color: #ececee;
    border-top-color: #223362
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback {
    margin-top: 120px;
    margin-bottom: 120px;
    position: relative;
    background: 0 0 !important;
    width: auto !important;
    max-width: 12em;
    height: auto !important
}

@media screen and (max-width:1000px) {
    .MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback {
        margin-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback {
        margin-top: 60px
    }
}

@media screen and (max-width:1000px) {
    .MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback {
        margin-bottom: 60px
    }
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse] .onFormSubmittedFeedbackInternalContainerStyle {
    padding: 0 !important
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse] .onFormSubmittedFeedbackMessage.onFormSubmittedFeedbackMessage {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    font-weight: 700;
    font-family: inherit !important;
    padding: 60px 0 0;
    text-align: center;
    color: inherit
}

[lang=zh] .MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse] .onFormSubmittedFeedbackMessage.onFormSubmittedFeedbackMessage,
[lang=zh-Hant] .MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse] .onFormSubmittedFeedbackMessage.onFormSubmittedFeedbackMessage,
[lang=zh-Hans] .MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse] .onFormSubmittedFeedbackMessage.onFormSubmittedFeedbackMessage,
[lang=zh-CN] .MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse] .onFormSubmittedFeedbackMessage.onFormSubmittedFeedbackMessage {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse] .onFormSubmittedFeedbackMessage.onFormSubmittedFeedbackMessage {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse] .onFormSubmittedFeedbackIcon {
    display: none !important
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse] .onFormSubmittedFeedbackButtonSuccess {
    display: none !important
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse=success]:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: 1.8em;
    height: .7em;
    margin-left: -1em;
    margin-top: -.8em;
    border-color: currentColor;
    border-width: .3em;
    border-style: none none solid solid;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse=success]:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse=success]::before,
.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse=success]::after {
    font-size: 16px;
    border-width: .2em;
    color: #223362
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse=success]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 70px;
    height: 70px;
    border-style: solid;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.MsDynamicsForm div[data-form-block-id] .onFormSubmittedFeedback [data-submissionresponse=success]::after {
    top: 0;
    left: 50%
}

.PageHeader {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    padding-top: 240px;
    margin-bottom: 60px;
    padding-bottom: 30px
}

@media(max-width:1430px) {
    .PageHeader {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .PageHeader {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .PageHeader {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .PageHeader {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .PageHeader {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .PageHeader {
        padding-top: 30vw
    }
}

@media screen and (max-width:400px) {
    .PageHeader {
        padding-top: 120px
    }
}

@media screen and (max-width:1000px) {
    .PageHeader {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .PageHeader {
        margin-bottom: 30px
    }
}

@media screen and (max-width:1000px) {
    .PageHeader {
        padding-top: 210px;
        padding-bottom: 0
    }
}

@media screen and (max-width:580px) {
    .PageHeader {
        padding-top: 150px
    }
}

.PageHeaderImage+.PageHeader {
    padding-top: 0
}

.PageHeader.background,
.PageHeader.backgroundLight {
    padding-bottom: 60px;
    position: relative;
    min-height: 600px;
    z-index: 0
}

@media screen and (max-width:1000px) {

    .PageHeader.background,
    .PageHeader.backgroundLight {
        padding-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {

    .PageHeader.background,
    .PageHeader.backgroundLight {
        padding-bottom: 30px
    }
}

@media screen and (max-width:1000px) {

    .PageHeader.background,
    .PageHeader.backgroundLight {
        min-height: 350px
    }
}

@media screen and (max-width:750px) {

    .PageHeader.background,
    .PageHeader.backgroundLight {
        min-height: 280px
    }
}

.PageHeader.background {
    color: #fff
}

.PageHeader.background .Breadcrumbs--item {
    color: #fff
}

html:not(.can-touch) .PageHeader.background .Breadcrumbs--item .Breadcrumbs--link:active,
html:not(.can-touch) .PageHeader.background .Breadcrumbs--item .Breadcrumbs--link:hover {
    color: #fff
}

.PageHeader.noGap {
    padding-top: 0;
    padding-bottom: 0
}

@media screen and (max-width:1000px) {
    .PageHeader.noGap {
        margin-bottom: 60px
    }
}

.PageHeader.noGapTop {
    padding-top: 0
}

.PageHeader.medium .PageHeader--inner {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.PageHeader.medium .PageHeader--content {
    width: 66.66667%
}

@media screen and (max-width:1200px) {
    .PageHeader.medium .PageHeader--content {
        width: 60%
    }
}

@media screen and (max-width:1000px) {
    .PageHeader.medium .PageHeader--content {
        width: 100%
    }
}

.PageHeader.medium .PageHeader--aside {
    width: 33.33333%;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

@media screen and (max-width:1200px) {
    .PageHeader.medium .PageHeader--aside {
        width: 40%
    }
}

@media screen and (max-width:1000px) {
    .PageHeader.medium .PageHeader--aside {
        width: 100%;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.PageHeader.large .PageHeader--content {
    width: 66.66667%
}

@media screen and (max-width:1000px) {
    .PageHeader.large .PageHeader--content {
        width: 100%
    }
}

.PageHeader.large .PageHeader--aside {
    width: 33.33333%
}

@media screen and (max-width:1000px) {
    .PageHeader.large .PageHeader--aside {
        width: 100%
    }
}

.PageHeader--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: -30px;
    margin-top: 0;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.PageHeader--inner>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 50%;
    margin-top: 0;
    padding-right: 30px
}

.PageHeader--inner:after {
    content: '';
    display: table;
    clear: both
}

@media screen and (max-width:1000px) {
    .PageHeader--inner {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-right: 0
    }

    .PageHeader--inner .PageHeader--content,
    .PageHeader--inner .PageHeader--aside {
        width: 100%;
        padding: 0;
        max-width: 100%
    }
}

.PageHeader--content {
    -webkit-flex-shrink: 1;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    max-width: 66.66667%
}

.PageHeader--content>.SectionTitle.large {
    margin-bottom: 0
}

@media screen and (max-width:1000px) {
    .PageHeader--content {
        margin-bottom: 30px
    }
}

.PageHeader--aside {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.PageHeader--aside--inner {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 100%
}

@media screen and (max-width:1000px) {
    .PageHeader--aside--inner {
        width: auto
    }
}

.PageHeader--aside--inner img {
    max-width: 100%
}

.PageHeader--background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden
}

.PageHeader--background>.Media {
    height: calc(100% + 100px);
    top: -50px
}

.PageHeaderImage {
    margin-bottom: 30px;
    height: 600px;
    max-height: 50vh;
    overflow: hidden;
    position: relative
}

@media screen and (max-width:1000px) {
    .PageHeaderImage {
        margin-bottom: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .PageHeaderImage {
        margin-bottom: 15px
    }
}

.PageHeaderImage::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.3) 85%, rgba(0, 0, 0, 0.4) 100%)
}

.PageHeaderImage>.Media.image,
.PageHeaderImage>.ImmediateImage {
    height: calc(100% + 100px);
    top: -50px;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px)
}

.PageHeaderImage>.Media.video {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    background-color: #000
}

@media screen and (max-width:1000px) {
    .PageHeaderImage {
        height: 350px
    }
}

@media screen and (max-width:750px) {
    .PageHeaderImage {
        height: 280px
    }
}

@media screen and (min-width:1001px) {
    .PageHeaderImage.large {
        height: 900px;
        max-height: 70vh
    }
}

.PageHeaderImage.artwork-commissioned::after {
    content: none
}

@media screen and (min-width:1001px) {
    .PageHeaderImage.artwork-commissioned {
        height: 700px
    }
}

@media screen and (max-width:1000px) {
    .PageHeaderImage.artwork-commissioned {
        height: 500px
    }
}

@media screen and (max-width:750px) {
    .PageHeaderImage.artwork-commissioned {
        height: 400px;
        max-height: none
    }
}

.PageHeaderImage--link {
    display: block
}

.PageHeaderImage--zoomIcon {
    position: absolute;
    right: 30px;
    bottom: 30px
}

@media screen and (min-width:1570px) {
    .PageHeaderImage--zoomIcon {
        right: calc(50% - 770px)
    }
}

.PageHeaderImage--zoomIcon>.Icon {
    font-size: 13px
}

.PageShare--overlay.is-expanded {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

.PageShare--overlay>.Overlay--content {
    padding-left: calc(50% - 405px);
    padding-right: calc(50% - 405px);
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

@media(max-width:1010px) {
    .PageShare--overlay>.Overlay--content {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .PageShare--overlay>.Overlay--content {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .PageShare--overlay>.Overlay--content {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .PageShare--overlay>.Overlay--content {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .PageShare--overlay>.Overlay--content {
        max-width: 100%;
        margin: 0
    }
}

.PageShare--linkList {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    margin-right: -30px
}

.PageShare--linkList--item {
    padding-right: 30px
}

.ProfileContact .RoundIconButton {
    margin-right: .5em
}

.ProfileContact--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid #d4d4d4;
    border-bottom: 1px solid #d4d4d4
}

.ProfileContact--inner:after {
    content: '';
    display: table;
    clear: both
}

@media screen and (max-width:750px) {
    .ProfileContact--inner {
        padding-top: 15px;
        padding-bottom: 15px
    }
}

.ProfileContact--left {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    float: left;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 60px;
    margin-right: auto
}

[lang=zh] .ProfileContact--left,
[lang=zh-Hant] .ProfileContact--left,
[lang=zh-Hans] .ProfileContact--left,
[lang=zh-CN] .ProfileContact--left {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ProfileContact--left {
        font-size: 12px;
        font-size: .75rem;
        font-weight: 400;
        line-height: 1.66;
        padding-right: 30px
    }
}

@media screen and (max-width:750px) {
    .ProfileContact--left {
        padding-right: 15px
    }
}

.ProfileContact--right {
    float: right;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: right
}

.ProfileContact--right>.Button {
    margin-left: 30px
}

.ProfileFacts--group {
    margin-bottom: 60px
}

@media screen and (max-width:1000px) {
    .ProfileFacts--group {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .ProfileFacts--group {
        margin-bottom: 30px
    }
}

@media screen and (max-width:1000px) {
    .ProfileFacts--group {
        margin-bottom: 0;
        border-top: 1px solid #d4d4d4;
        border-bottom: 1px solid #d4d4d4;
        margin-top: -1px
    }

    .ProfileFacts--group--header {
        position: relative
    }
}

.ProfileFacts--group--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3
}

[lang=zh] .ProfileFacts--group--title,
[lang=zh-Hant] .ProfileFacts--group--title,
[lang=zh-Hans] .ProfileFacts--group--title,
[lang=zh-CN] .ProfileFacts--group--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ProfileFacts--group--title {
        font-size: 18px;
        font-size: 1.125rem;
        position: relative;
        padding-top: 30px;
        padding-bottom: 30px
    }
}

@media screen and (max-width:750px) {
    .ProfileFacts--group--title {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .ProfileFacts--group--title {
        padding-left: 20px;
        padding-right: 20px
    }
}

.ProfileFacts--group--toggle {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.ProfileFacts--group--toggle:after {
    content: "";
    position: absolute;
    font-size: .7em;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
    transform: rotate(90deg) translateX(50%) rotate(135deg);
    right: 0;
    top: 50%;
    transition: -webkit-transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1), -webkit-transform .2s cubic-bezier(.77, 0, .175, 1)
}

.ProfileFacts--group--toggle:before {
    content: "";
    position: absolute;
    font-size: .7em;
    top: 50%;
    content: none;
    right: 0;
    top: 50%;
    transition: -webkit-transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1), -webkit-transform .2s cubic-bezier(.77, 0, .175, 1)
}

.ProfileFacts--group--toggle[aria-expanded=true]:after {
    content: "";
    position: absolute;
    font-size: .7em;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg)
}

.ProfileFacts--group--toggle[aria-expanded=true]:before {
    content: "";
    position: absolute;
    font-size: .7em;
    top: 50%;
    content: none
}

@media screen and (max-width:1000px) {
    .ProfileFacts--group--toggle {
        display: block
    }
}

@media screen and (max-width:750px) {
    .ProfileFacts--group--toggle::after {
        right: 30px
    }
}

@media screen and (max-width:580px) {
    .ProfileFacts--group--toggle::after {
        right: 20px
    }
}

@media screen and (max-width:1000px) {
    .ProfileFacts--group--content {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .ProfileFacts--group--content {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media screen and (max-width:1000px) {
    .ProfileFacts--group--content[data-hidden=true]>* {
        display: none
    }
}

.ProfileFacts--group--list {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200;
    color: #3c4150;
    margin-top: 1em
}

@media screen and (max-width:1000px) {
    .ProfileFacts--group--list {
        margin-top: 0;
        padding: 1em 0
    }
}

.ProfileFacts--group--list>li {
    margin-bottom: .75em
}

.ProfileHeader {
    margin-bottom: 60px
}

@media screen and (max-width:1000px) {
    .ProfileHeader {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .ProfileHeader {
        margin-bottom: 30px
    }
}

@media screen and (min-width:1001px) {
    .ProfileHeader {
        min-height: 240px
    }
}

.ProfileHeader--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: -30px;
    margin-top: 0;
    position: relative
}

.ProfileHeader--inner>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: 0;
    padding-right: 30px
}

.ProfileHeader--inner:after {
    content: '';
    display: table;
    clear: both
}

@media screen and (max-width:1000px) {
    .ProfileHeader--inner {
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center
    }
}

@media screen and (max-width:580px) {
    .ProfileHeader--inner {
        margin-right: -10px
    }

    .ProfileHeader--inner>* {
        padding-right: 10px
    }
}

.ProfileHeader--image {
    margin-bottom: 30px
}

@media screen and (min-width:1001px) {
    .ProfileHeader--image {
        position: absolute;
        width: 33.33333%
    }
}

.ProfileHeader--image--inner {
    width: 240px;
    height: 240px;
    overflow: hidden;
    max-width: 100%
}

.ProfileHeader--image--inner>.ImmediateImage {
    border-radius: 100%;
    overflow: hidden
}

@media screen and (max-width:1000px) {
    .ProfileHeader--image--inner {
        width: 150px;
        height: 150px
    }
}

@media screen and (max-width:750px) {
    .ProfileHeader--image--inner {
        width: 75px;
        height: 75px
    }
}

.ProfileHeader--content {
    width: 66.66667%;
    margin-bottom: 30px
}

@media screen and (min-width:1001px) {
    .ProfileHeader--content {
        margin-left: auto
    }
}

@media screen and (max-width:1000px) {
    .ProfileHeader--content {
        width: calc(100% - 180px)
    }
}

@media screen and (max-width:750px) {
    .ProfileHeader--content {
        width: calc(100% - 105px)
    }
}

@media screen and (max-width:580px) {
    .ProfileHeader--content {
        width: calc(100% - 85px)
    }
}

.ProfileHeader--title {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375
}

[lang=zh] .ProfileHeader--title,
[lang=zh-Hant] .ProfileHeader--title,
[lang=zh-Hans] .ProfileHeader--title,
[lang=zh-CN] .ProfileHeader--title {
    line-height: 1.5
}

.ProfileHeader--name {
    font-size: 50px;
    font-size: 3.125rem;
    font-weight: 200;
    line-height: 1.16;
    display: block;
    margin-bottom: 15px
}

@media screen and (max-width:1000px) {
    .ProfileHeader--name {
        font-size: 30px;
        font-size: 1.875rem;
        line-height: 1.53333
    }
}

@media screen and (max-width:750px) {
    .ProfileHeader--name {
        font-size: 30px;
        font-size: 1.875rem;
        font-weight: 200;
        line-height: 1.26667;
        margin-bottom: 5px
    }

    [lang=zh] .ProfileHeader--name,
    [lang=zh-Hant] .ProfileHeader--name,
    [lang=zh-Hans] .ProfileHeader--name,
    [lang=zh-CN] .ProfileHeader--name {
        line-height: 1.5
    }

    .ProfileHeader--name {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.ProfileHeader--position {
    color: #636363;
    display: block
}

.ProfileHeader--company {
    display: block
}

.ProfileHeader--info {
    width: 66.66667%;
    margin-left: auto
}

@media screen and (max-width:1000px) {
    .ProfileHeader--info {
        width: 100%
    }
}

.ProfileHeader--summary {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    font-weight: 200;
    margin-bottom: 30px
}

[lang=zh] .ProfileHeader--summary,
[lang=zh-Hant] .ProfileHeader--summary,
[lang=zh-Hans] .ProfileHeader--summary,
[lang=zh-CN] .ProfileHeader--summary {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ProfileHeader--summary {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.Quote {
    margin-top: 60px;
    margin-bottom: 60px;
    white-space: normal
}

@media screen and (max-width:1000px) {
    .Quote {
        margin-top: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .Quote {
        margin-top: 30px
    }
}

@media screen and (max-width:1000px) {
    .Quote {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .Quote {
        margin-bottom: 30px
    }
}

.template-red .Quote {
    color: #9b14b4
}

.template-green .Quote {
    color: #1455b4
}

.template-blue .Quote {
    color: #1455b4
}

.template-purple .Quote {
    color: #9b14b4
}

.template-violet .Quote {
    color: #9b14b4
}

.l-Page.campaign .Quote {
    margin-left: calc(50% - 405px);
    margin-right: calc(50% - 405px);
    margin-top: 180px;
    margin-bottom: 180px
}

@media(max-width:1010px) {
    .l-Page.campaign .Quote {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .Quote {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .l-Page.campaign .Quote {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .l-Page.campaign .Quote {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .l-Page.campaign .Quote {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .Quote {
        margin-top: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .Quote {
        margin-top: 90px
    }
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .Quote {
        margin-bottom: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .Quote {
        margin-bottom: 90px
    }
}

.Quote.green .Quote--quote,
.Quote.blue .Quote--quote {
    color: #1455b4
}

.Quote.red .Quote--quote,
.Quote.pink .Quote--quote,
.Quote.purple .Quote--quote {
    color: #9b14b4
}

.Quote.small .Quote--quote {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667
}

[lang=zh] .Quote.small .Quote--quote,
[lang=zh-Hant] .Quote.small .Quote--quote,
[lang=zh-Hans] .Quote.small .Quote--quote,
[lang=zh-CN] .Quote.small .Quote--quote {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .Quote.small .Quote--quote {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.Quote.center {
    margin-top: 120px;
    margin-bottom: 120px;
    text-align: center
}

@media screen and (max-width:1000px) {
    .Quote.center {
        margin-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .Quote.center {
        margin-top: 60px
    }
}

@media screen and (max-width:1000px) {
    .Quote.center {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .Quote.center {
        margin-bottom: 60px
    }
}

.Quote.center .Quote--quote {
    padding-left: .7em;
    padding-right: .7em
}

.Quote.center .Quote--portrait {
    margin-left: auto;
    margin-right: auto
}

.Quote.center .Quote--caption {
    margin: 0 auto
}

.Quote--quote {
    font-size: 50px;
    font-size: 3.125rem;
    font-weight: 200;
    line-height: 1.16;
    quotes: "«" "»";
    margin-bottom: .6em;
    padding-right: .7em
}

@media screen and (max-width:1000px) {
    .Quote--quote {
        font-size: 30px;
        font-size: 1.875rem;
        line-height: 1.53333
    }
}

.Quote--quote::before {
    content: open-quote
}

.Quote--quote::after {
    content: close-quote;
    position: absolute;
    margin-left: .25em
}

.Quote--caption {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    max-width: 40%
}

[lang=zh] .Quote--caption,
[lang=zh-Hant] .Quote--caption,
[lang=zh-Hans] .Quote--caption,
[lang=zh-CN] .Quote--caption {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .Quote--caption {
        max-width: 60%
    }
}

@media screen and (max-width:580px) {
    .Quote--caption {
        max-width: 100%
    }
}

.Quote--portrait {
    width: 75px;
    height: 75px;
    margin-bottom: .5em;
    border-radius: 50%;
    overflow: hidden
}

.Quote--author {
    color: #3c4150
}

.Quote--portrait~.Quote--author {
    display: block;
    margin-bottom: .5em
}

.Quote--share {
    margin-top: 60px
}

@media screen and (max-width:1000px) {
    .Quote--share {
        margin-top: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .Quote--share {
        margin-top: 30px
    }
}

.QuoteArea {
    background-color: #f9f9fa
}

.QuoteArea .Quote {
    margin-bottom: 0;
    margin-top: 0
}

.QuoteArea .Quote--share .Button::before {
    background-color: transparent
}

.QuoteArea--inner {
    padding-left: calc(50% - 405px);
    padding-right: calc(50% - 405px);
    padding-top: 120px;
    padding-bottom: 120px
}

@media(max-width:1010px) {
    .QuoteArea--inner {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .QuoteArea--inner {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .QuoteArea--inner {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .QuoteArea--inner {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .QuoteArea--inner {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .QuoteArea--inner {
        padding-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .QuoteArea--inner {
        padding-top: 60px
    }
}

@media screen and (max-width:1000px) {
    .QuoteArea--inner {
        padding-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .QuoteArea--inner {
        padding-bottom: 60px
    }
}

.QuoteSlider {
    position: relative;
    width: 100%;
    padding-bottom: 2px;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.QuoteSlider:not(.is-draggable) .QuoteSlider--controls {
    display: none
}

.QuoteSlider .Quote {
    margin-top: 0 !important;
    margin-bottom: 0 !important
}

.QuoteSlider--wrapper {
    white-space: nowrap;
    -webkit-transform: none !important;
    transform: none !important
}

@supports(display:flex) {
    .QuoteSlider--wrapper {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        white-space: inherit
    }
}

.QuoteSlider--item {
    width: 100%;
    left: 120% !important;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    visibility: hidden
}

.QuoteSlider.is-slider-ready .QuoteSlider--item {
    visibility: visible;
    transition: left 0s 1s
}

.QuoteSlider.is-slider-ready .QuoteSlider--item.is-selected {
    left: 0 !important;
    transition: left 0s 0s;
    z-index: 9
}

.QuoteSlider--item .QuoteSlider--item--counter,
.QuoteSlider--item .Quote--quote,
.QuoteSlider--item .Quote--caption {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    transition: opacity .2s, -webkit-transform 0s .2s;
    transition: opacity .2s, transform 0s .2s;
    transition: opacity .2s, transform 0s .2s, -webkit-transform 0s .2s
}

.QuoteSlider--item.is-selected .QuoteSlider--item--counter,
.QuoteSlider--item.is-selected .Quote--quote,
.QuoteSlider--item.is-selected .Quote--caption {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: opacity .4s .4s, -webkit-transform .4s .4s;
    transition: opacity .4s .4s, transform .4s .4s;
    transition: opacity .4s .4s, transform .4s .4s, -webkit-transform .4s .4s
}

.QuoteSlider--item.is-selected .Quote--quote {
    transition-delay: .4s .5s, .4s .5s
}

.QuoteSlider--item.is-selected .Quote--caption {
    transition-delay: .4s .6s, .4s .6s
}

.QuoteSlider--item--counter {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 15px
}

[lang=zh] .QuoteSlider--item--counter,
[lang=zh-Hant] .QuoteSlider--item--counter,
[lang=zh-Hans] .QuoteSlider--item--counter,
[lang=zh-CN] .QuoteSlider--item--counter {
    line-height: 1.5
}

.QuoteSlider--item--counter--total {
    font-weight: 200;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-left: .125em
}

.QuoteSlider--item--counter--total::before {
    content: "/";
    margin-right: .125em
}

.QuoteSlider--controls {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    padding-bottom: 3px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    z-index: 3
}

.QuoteSlider--controls .RoundIconButton {
    display: block;
    margin-left: 4px;
    margin-right: 4px
}

.QuoteSliderArea {
    margin-left: calc(50% - 405px);
    margin-right: calc(50% - 405px)
}

@media(max-width:1010px) {
    .QuoteSliderArea {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .QuoteSliderArea {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .QuoteSliderArea {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .QuoteSliderArea {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .QuoteSliderArea {
        max-width: 100%;
        margin: 0
    }
}

.QuoteSliderArea .SectionTitle--headline {
    color: inherit !important
}

.SectionContainer {
    margin-top: 90px;
    margin-bottom: 90px
}

@media screen and (max-width:1000px) {
    .SectionContainer {
        margin-top: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .SectionContainer {
        margin-top: 45px
    }
}

@media screen and (max-width:1000px) {
    .SectionContainer {
        margin-bottom: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .SectionContainer {
        margin-bottom: 45px
    }
}

@media screen and (max-width:1000px) {
    .SectionContainer {
        margin-top: 120px;
        margin-bottom: 120px;
        margin-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .SectionContainer {
        margin-top: 60px
    }
}

@media screen and (max-width:1000px) {
    .SectionContainer {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .SectionContainer {
        margin-bottom: 60px
    }
}

.SectionContainer.noGap {
    margin-top: 0;
    margin-bottom: 0
}

.SectionContainer.noGapTop {
    margin-top: 0
}

.SectionContainer.gradient {
    padding-top: 90px;
    position: relative;
    z-index: 0
}

@media screen and (max-width:1000px) {
    .SectionContainer.gradient {
        padding-top: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .SectionContainer.gradient {
        padding-top: 45px
    }
}

@media screen and (max-width:1000px) {
    .SectionContainer.gradient {
        padding-top: 120px;
        padding-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .SectionContainer.gradient {
        padding-top: 60px
    }
}

.SectionContainer.gradient::before {
    background-image: linear-gradient(to bottom, #F9F9FA, #ffffff);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    max-height: 700px;
    max-width: 1400px;
    z-index: -1
}

@media(max-width:1600px) {
    .SectionContainer.gradient::before {
        max-width: calc(100% - 120px)
    }
}

@media(max-width:1430px) {
    .SectionContainer.gradient::before {
        max-width: calc(100% - 60px)
    }
}

@media screen and (max-width:1000px) {
    .SectionContainer.gradient::before {
        max-width: 100%
    }
}

.SectionContainer.fullGradient {
    padding-top: 0px;
    position: relative;
    margin-top: 0;
    z-index: 0
}

@media screen and (max-width:1000px) {
    .SectionContainer.fullGradient {
        padding-top: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .SectionContainer.fullGradient {
        padding-top: 45px
    }
}

@media screen and (max-width:1000px) {
    .SectionContainer.fullGradient {
        padding-top: 120px;
        padding-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .SectionContainer.fullGradient {
        padding-top: 60px
    }
}

.SectionContainer.fullGradient::before {
    background-image: linear-gradient(to bottom, #F9F9FA, #ffffff);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    max-height: 300px;
    z-index: -1
}

.SectionContainer.fullGradient.noGap {
    padding-top: 0;
    padding-bottom: 0
}

.SectionContainer.fullGradient.noGapTop {
    padding-top: 0
}

.SectionContainer.reverseFullGradient {
    padding-bottom: 90px;
    position: relative;
    margin-bottom: 0;
    z-index: 0
}

@media screen and (max-width:1000px) {
    .SectionContainer.reverseFullGradient {
        padding-bottom: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .SectionContainer.reverseFullGradient {
        padding-bottom: 45px
    }
}

.SectionContainer.reverseFullGradient::before {
    background-image: linear-gradient(to bottom, #ffffff, #F9F9FA);
    content: "";
    position: absolute;
    top: 15%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    height: 30%;
    max-height: 300px;
    z-index: -1
}

.SectionContainer.dark,
.SectionContainer.green,
.SectionContainer.red,
.SectionContainer.blue,
.SectionContainer.pink {
    background-color: #3c4150;
    color: #fff
}

.SectionContainer.dark .SectionTitle--title,
.SectionContainer.green .SectionTitle--title,
.SectionContainer.red .SectionTitle--title,
.SectionContainer.blue .SectionTitle--title,
.SectionContainer.pink .SectionTitle--title {
    color: #fff
}

.SectionContainer.gray {
    background-color: #f9f9fa
}

.SectionContainer.dark,
.SectionContainer.gray,
.SectionContainer.green,
.SectionContainer.red,
.SectionContainer.blue,
.SectionContainer.pink {
    padding-top: 90px;
    padding-bottom: 90px;
    margin-top: 0;
    margin-bottom: 0
}

@media screen and (max-width:1000px) {

    .SectionContainer.dark,
    .SectionContainer.gray,
    .SectionContainer.green,
    .SectionContainer.red,
    .SectionContainer.blue,
    .SectionContainer.pink {
        padding-top: 11.25vw
    }
}

@media screen and (max-width:400px) {

    .SectionContainer.dark,
    .SectionContainer.gray,
    .SectionContainer.green,
    .SectionContainer.red,
    .SectionContainer.blue,
    .SectionContainer.pink {
        padding-top: 45px
    }
}

@media screen and (max-width:1000px) {

    .SectionContainer.dark,
    .SectionContainer.gray,
    .SectionContainer.green,
    .SectionContainer.red,
    .SectionContainer.blue,
    .SectionContainer.pink {
        padding-bottom: 11.25vw
    }
}

@media screen and (max-width:400px) {

    .SectionContainer.dark,
    .SectionContainer.gray,
    .SectionContainer.green,
    .SectionContainer.red,
    .SectionContainer.blue,
    .SectionContainer.pink {
        padding-bottom: 45px
    }
}

@media screen and (max-width:1000px) {

    .SectionContainer.dark,
    .SectionContainer.gray,
    .SectionContainer.green,
    .SectionContainer.red,
    .SectionContainer.blue,
    .SectionContainer.pink {
        padding-top: 120px;
        padding-bottom: 120px;
        padding-top: 15vw
    }
}

@media screen and (max-width:400px) {

    .SectionContainer.dark,
    .SectionContainer.gray,
    .SectionContainer.green,
    .SectionContainer.red,
    .SectionContainer.blue,
    .SectionContainer.pink {
        padding-top: 60px
    }
}

@media screen and (max-width:1000px) {

    .SectionContainer.dark,
    .SectionContainer.gray,
    .SectionContainer.green,
    .SectionContainer.red,
    .SectionContainer.blue,
    .SectionContainer.pink {
        padding-bottom: 15vw
    }
}

@media screen and (max-width:400px) {

    .SectionContainer.dark,
    .SectionContainer.gray,
    .SectionContainer.green,
    .SectionContainer.red,
    .SectionContainer.blue,
    .SectionContainer.pink {
        padding-bottom: 60px
    }
}

.SectionContainer--footer {
    text-align: center;
    margin-top: 60px
}

@media screen and (max-width:1000px) {
    .SectionContainer--footer {
        margin-top: 30px
    }
}

.SectionTitle {
    margin-left: calc(50% - 307.5px);
    margin-right: calc(50% - 307.5px);
    margin-bottom: 60px;
    text-align: center
}
.SectionTitle1 {
    margin-left: calc(50% - 307.5px);
    margin-right: calc(50% - 307.5px);
    text-align: center
}

@media(max-width:815px) {
    .SectionTitle {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .SectionTitle {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .SectionTitle {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .SectionTitle {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .SectionTitle {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .SectionTitle {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .SectionTitle {
        margin-bottom: 30px
    }
}

.SectionTitle.inline,
.SectionTitle.medium,
.SectionTitle.large {
    margin-bottom: 30px;
    margin-left: 0;
    margin-right: 0;
    text-align: left
}

@media screen and (max-width:1000px) {

    .SectionTitle.inline,
    .SectionTitle.medium,
    .SectionTitle.large {
        margin-bottom: 3.75vw
    }
}

@media screen and (max-width:400px) {

    .SectionTitle.inline,
    .SectionTitle.medium,
    .SectionTitle.large {
        margin-bottom: 15px
    }
}

.SectionTitle.large .SectionTitle--headline {
    font-size: 80px;
    font-size: 5rem;
    font-weight: 200;
    line-height: 1.1;
    margin-top: 0;
}

@media screen and (max-width:1000px) {
    .SectionTitle.large .SectionTitle--headline {
        font-size: 50px;
        font-size: 2.125rem;
        line-height: 1.14
    }
}

@media screen and (max-width:750px) {
    .SectionTitle.large .SectionTitle--headline {
        font-size: 40px;
        font-size: 2.5rem;
        line-height: 1.15
    }
}

.SectionTitle.large .SectionTitle--content {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    font-weight: 200
}

[lang=zh] .SectionTitle.large .SectionTitle--content,
[lang=zh-Hant] .SectionTitle.large .SectionTitle--content,
[lang=zh-Hans] .SectionTitle.large .SectionTitle--content,
[lang=zh-CN] .SectionTitle.large .SectionTitle--content {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SectionTitle.large .SectionTitle--content {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.SectionTitle.wide {
    margin-left: calc(50% - 384.375px);
    margin-right: calc(50% - 384.375px)
}

@media(max-width:968.75px) {
    .SectionTitle.wide {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .SectionTitle.wide {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .SectionTitle.wide {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .SectionTitle.wide {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .SectionTitle.wide {
        max-width: 100%;
        margin: 0
    }
}

.SectionTitle.small:not(.inline) {
    max-width: 430px;
    padding-left: 20px;
    padding-right: 20px;
    margin-left: auto;
    margin-right: auto
}

.SectionTitle.small .SectionTitle--headline {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    margin-top: 15px
}

[lang=zh] .SectionTitle.small .SectionTitle--headline,
[lang=zh-Hant] .SectionTitle.small .SectionTitle--headline,
[lang=zh-Hans] .SectionTitle.small .SectionTitle--headline,
[lang=zh-CN] .SectionTitle.small .SectionTitle--headline {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SectionTitle.small .SectionTitle--headline {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.SectionTitle.medium .SectionTitle--content {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    font-weight: 200
}

[lang=zh] .SectionTitle.medium .SectionTitle--content,
[lang=zh-Hant] .SectionTitle.medium .SectionTitle--content,
[lang=zh-Hans] .SectionTitle.medium .SectionTitle--content,
[lang=zh-CN] .SectionTitle.medium .SectionTitle--content {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SectionTitle.medium .SectionTitle--content {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.SectionTitle.white .SectionTitle--title,
.SectionTitle.white .SectionTitle--headline,
.SectionTitle.white .SectionTitle--content {
    color: #fff
}

.SectionTitle--title {
    font-size: 15px;
    font-size: 1rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: #636363;
    display: block
}

.SectionTitle--headline {
    font-size: 50px;
    font-size: 2.125rem;
    font-weight: 800;
    line-height: 1.5;
    display: block
}

.template-red .SectionTitle--headline {
    color: #9b14b4
}

.template-green .SectionTitle--headline {
    color: #1455b4
}

.template-blue .SectionTitle--headline {
    color: #1455b4
}

.template-purple .SectionTitle--headline {
    color: #9b14b4
}

.template-violet .SectionTitle--headline {
    color: #9b14b4
}

@media screen and (max-width:1000px) {
    .SectionTitle--headline {
        font-size: 30px;
        font-size: 1.875rem;
        line-height: 1.53333
    }
}

.SectionTitle--title+.SectionTitle--headline {
    margin-top: 30px
}

@media screen and (max-width:1000px) {
    .SectionTitle--title+.SectionTitle--headline {
        margin-top: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .SectionTitle--title+.SectionTitle--headline {
        margin-top: 15px
    }
}

.SectionTitle--content {
    margin-top: 30px;
    color: #3c4150
}

@media screen and (max-width:1000px) {
    .SectionTitle--content {
        margin-top: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .SectionTitle--content {
        margin-top: 15px
    }
}

.SharePrice {
    color: #3c4150;
    position: relative
}

.SharePrice>* {
    opacity: 1;
    transition: opacity .4s
}

.SharePrice.is-loading {}

.SharePrice.is-loading>* {
    opacity: .2;
    transition-duration: 0s
}

.SharePrice--chart {
    display: block;
    margin-bottom: 30px;
    max-width: 100%
}

.SharePrice--value {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    display: inline-block;
    line-height: 1;
    margin-right: .375em;
    margin-bottom: 15px
}

[lang=zh] .SharePrice--value,
[lang=zh-Hant] .SharePrice--value,
[lang=zh-Hans] .SharePrice--value,
[lang=zh-CN] .SharePrice--value {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SharePrice--value {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364;
        font-size: 30px;
        line-height: 1
    }
}

.SharePrice--change {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    display: inline-block;
    background-color: #f9f9fa;
    padding: .3em .825em .2em;
    border-radius: .95em;
    vertical-align: bottom;
    margin-bottom: 15px
}

[lang=zh] .SharePrice--change,
[lang=zh-Hant] .SharePrice--change,
[lang=zh-Hans] .SharePrice--change,
[lang=zh-CN] .SharePrice--change {
    line-height: 1.5
}

.SharePrice--change.is-positive {
    color: #007934;
    background-color: #e5f1ea
}

.SharePrice--datetime {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    display: block;
    clear: both
}

[lang=zh] .SharePrice--datetime,
[lang=zh-Hant] .SharePrice--datetime,
[lang=zh-Hans] .SharePrice--datetime,
[lang=zh-CN] .SharePrice--datetime {
    line-height: 1.5
}

.SharePrice--date:after {
    content: ","
}

.SharePrice--text {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200;
    margin-top: 30px
}

.SharePrice--text p {
    margin-top: 1em;
    margin-bottom: 1em;
    color: #3c4150
}

.SharePrice--text ul {
    margin: 1em 0;
    display: block
}

.SharePrice--text ul>li {
    padding-left: 25px;
    padding-left: 1.5625rem;
    position: relative;
    list-style-type: none;
    margin-bottom: .75ex;
    text-align: left;
    color: #3c4150
}

.SharePrice--text ul>li:before {
    position: absolute;
    left: 0;
    display: inline-block;
    content: "\2022";
    color: #636363
}

.SharePrice--text ol {
    margin: 1em 0;
    display: block;
    display: block;
    counter-reset: ol--counter
}

.SharePrice--text ol>li {
    padding-left: 25px;
    padding-left: 1.5625rem;
    position: relative;
    list-style-type: none;
    margin-bottom: .75ex;
    text-align: left;
    color: #3c4150
}

.SharePrice--text ol>li:before {
    position: absolute;
    left: 0;
    display: inline-block;
    content: "\2022";
    color: #636363
}

.SharePrice--text ol>li {
    list-style-type: none;
    padding-left: 20px;
    padding-left: 1.25rem;
    margin-left: 4ex
}

.SharePrice--text ol>li:before {
    counter-increment: ol--counter;
    content: counters(ol--counter, ".") ".";
    left: auto;
    right: 100%;
    text-align: right;
    width: 4ex
}

html.ie .SharePrice--text ol>li {
    list-style: decimal inside none
}

.SharePrice--text li>:first-child {
    margin-top: 0
}

.SharePrice--text li>:last-child {
    margin-bottom: 0
}

.SharePrice--text table {
    border-collapse: collapse;
    border-spacing: 0;
    overflow: hidden;
    float: none;
    width: 100%
}

.SharePrice--text table caption {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    padding: 1em 0
}

[lang=zh] .SharePrice--text table caption,
[lang=zh-Hant] .SharePrice--text table caption,
[lang=zh-Hans] .SharePrice--text table caption,
[lang=zh-CN] .SharePrice--text table caption {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SharePrice--text table caption {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.SharePrice--text table thead {
    background-color: #f9f9fa
}

.SharePrice--text table tfoot tr {
    border-bottom: none
}

.SharePrice--text table tr {
    border-top: 1px solid #d4d4d4;
    border-bottom: 1px solid #d4d4d4
}

.SharePrice--text table th {
    font-weight: 700
}

.SharePrice--text table th [data-picto] {
    margin-bottom: 5px
}

.SharePrice--text table th [data-picto]>svg {
    height: 22px
}

.SharePrice--text table th,
.SharePrice--text table td {
    padding: 1.2em;
    vertical-align: top;
    border-left: 1px solid #d4d4d4;
    border-right: 1px solid #d4d4d4
}

@media screen and (max-width:1200px) {

    .SharePrice--text table th,
    .SharePrice--text table td {
        padding: 1em
    }
}

@media screen and (max-width:750px) {

    .SharePrice--text table th,
    .SharePrice--text table td {
        padding: .5em 1em
    }
}

.SharePrice--text table th:first-child,
.SharePrice--text table td:first-child {
    border-left: none
}

.SharePrice--text table th:last-child,
.SharePrice--text table td:last-child {
    border-right: none
}

.SharePrice--text table a:not([class]) {
    color: #223362;
    border-bottom: 1px solid;
    transition: border-color .1s cubic-bezier(.39, .575, .565, 1)
}

.template-red .SharePrice--text table a:not([class]) {
    color: #9b14b4
}

.template-green .SharePrice--text table a:not([class]) {
    color: #1455b4
}

.template-blue .SharePrice--text table a:not([class]) {
    color: #1455b4
}

.template-purple .SharePrice--text table a:not([class]) {
    color: #9b14b4
}

.template-violet .SharePrice--text table a:not([class]) {
    color: #9b14b4
}

html:not(.can-touch) .SharePrice--text table a:not([class]):active,
html:not(.can-touch) .SharePrice--text table a:not([class]):hover {
    border-color: #cce2e3
}

html.template-red:not(.can-touch) .SharePrice--text table a:not([class]):active,
html.template-red:not(.can-touch) .SharePrice--text table a:not([class]):hover {
    border-color: rgba(255, 160, 47, .5)
}

html.template-green:not(.can-touch) .SharePrice--text table a:not([class]):active,
html.template-green:not(.can-touch) .SharePrice--text table a:not([class]):hover {
    border-color: rgba(201, 221, 3, .5)
}

html.template-blue:not(.can-touch) .SharePrice--text table a:not([class]):active,
html.template-blue:not(.can-touch) .SharePrice--text table a:not([class]):hover {
    border-color: rgba(145, 200, 255, .5)
}

html.template-violet:not(.can-touch) .SharePrice--text table a:not([class]):active,
html.template-violet:not(.can-touch) .SharePrice--text table a:not([class]):hover {
    border-color: rgba(250, 140, 255, .5)
}

.SharePrice--text table p {
    margin-top: 0
}

.SharePrice--text table p:last-child {
    margin-bottom: 0
}

.SharePrice--text table tr.is-highlighted {
    background-color: rgba(249, 249, 250, .8)
}

.SharePrice--text table th.is-highlighted {
    background-color: #e6f1f1;
    color: #223362
}

.SharePrice--text s {
    text-decoration: line-through
}

.SharePrice--text u {
    text-decoration: none
}

.SharePrice--text em {
    font-style: italic
}

.SharePrice--text small {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4
}

[lang=zh] .SharePrice--text small,
[lang=zh-Hant] .SharePrice--text small,
[lang=zh-Hans] .SharePrice--text small,
[lang=zh-CN] .SharePrice--text small {
    line-height: 1.5
}

.SharePrice--text strong,
.SharePrice--text b {
    font-weight: 700
}

.SharePrice--text a:not([class]) {
    color: #223362;
    border-bottom: 1px solid;
    transition: border-color .1s cubic-bezier(.39, .575, .565, 1)
}

.template-red .SharePrice--text a:not([class]) {
    color: #9b14b4
}

.template-green .SharePrice--text a:not([class]) {
    color: #1455b4
}

.template-blue .SharePrice--text a:not([class]) {
    color: #1455b4
}

.template-purple .SharePrice--text a:not([class]) {
    color: #9b14b4
}

.template-violet .SharePrice--text a:not([class]) {
    color: #9b14b4
}

html:not(.can-touch) .SharePrice--text a:not([class]):active,
html:not(.can-touch) .SharePrice--text a:not([class]):hover {
    border-color: #cce2e3
}

html.template-red:not(.can-touch) .SharePrice--text a:not([class]):active,
html.template-red:not(.can-touch) .SharePrice--text a:not([class]):hover {
    border-color: rgba(255, 160, 47, .5)
}

html.template-green:not(.can-touch) .SharePrice--text a:not([class]):active,
html.template-green:not(.can-touch) .SharePrice--text a:not([class]):hover {
    border-color: rgba(201, 221, 3, .5)
}

html.template-blue:not(.can-touch) .SharePrice--text a:not([class]):active,
html.template-blue:not(.can-touch) .SharePrice--text a:not([class]):hover {
    border-color: rgba(145, 200, 255, .5)
}

html.template-violet:not(.can-touch) .SharePrice--text a:not([class]):active,
html.template-violet:not(.can-touch) .SharePrice--text a:not([class]):hover {
    border-color: rgba(250, 140, 255, .5)
}

.SharePrice--text>*:first-child {
    margin-top: 0
}

@media screen and (max-width:1000px) {
    .SharePrice--text {
        margin-top: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .SharePrice--text {
        margin-top: 15px
    }
}

.SharePrice--link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.SimpleTable {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200;
    margin-bottom: 45px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch
}

@media screen and (max-width:1000px) {
    .SimpleTable {
        margin-bottom: 5.625vw
    }
}

@media screen and (max-width:400px) {
    .SimpleTable {
        margin-bottom: 22.5px
    }
}

@media screen and (max-width:750px) {
    .SimpleTable {
        font-size: 16px;
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.375;
        margin-bottom: 30px
    }

    [lang=zh] .SimpleTable,
    [lang=zh-Hant] .SimpleTable,
    [lang=zh-Hans] .SimpleTable,
    [lang=zh-CN] .SimpleTable {
        line-height: 1.5
    }
}

.SimpleTable td {
    min-width: 6em
}

.StickyBottomBar--inner {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    position: fixed;
    bottom: 0;
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 15px;
    padding-bottom: 15px;
    background-color: #242730;
    color: #fff;
    z-index: 9;
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
}

@media(max-width:1430px) {
    .StickyBottomBar--inner {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .StickyBottomBar--inner {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .StickyBottomBar--inner {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .StickyBottomBar--inner {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .StickyBottomBar--inner {
        max-width: 100%;
        margin: 0
    }
}

.StickyBottomBar.is-ready .StickyBottomBar--inner {
    transition: -webkit-transform .4s;
    transition: transform .4s;
    transition: transform .4s, -webkit-transform .4s
}

.StickyBottomBar.is-visible .StickyBottomBar--inner {
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.template-red .StickyBottomBar--inner {
    background-color: #3c4150
}

.template-blue .StickyBottomBar--inner {
    background-color: #3c4150
}

.template-green .StickyBottomBar--inner {
    background-color: #3c4150
}

.template-violet .StickyBottomBar--inner {
    background-color: #3c4150
}

.StickyBottomBar--text {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3
}

[lang=zh] .StickyBottomBar--text,
[lang=zh-Hant] .StickyBottomBar--text,
[lang=zh-Hans] .StickyBottomBar--text,
[lang=zh-CN] .StickyBottomBar--text {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .StickyBottomBar--text {
        font-size: 18px;
        font-size: 1.125rem
    }
}

@media screen and (max-width:750px) {
    .StickyBottomBar--text {
        font-size: 14px;
        font-size: .875rem;
        font-weight: 400;
        line-height: 1.4;
        font-weight: 700
    }

    [lang=zh] .StickyBottomBar--text,
    [lang=zh-Hant] .StickyBottomBar--text,
    [lang=zh-Hans] .StickyBottomBar--text,
    [lang=zh-CN] .StickyBottomBar--text {
        line-height: 1.5
    }
}

.StickyBottomBar--buttons {
    margin-left: auto;
    padding-left: 15px
}

.StickyBottomBar--buttons>* {
    margin-left: 15px
}

@media screen and (max-width:1000px) {
    .StickyBottomBar--buttons {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        padding-left: 5px
    }

    .StickyBottomBar--buttons>* {
        margin-left: 10px
    }
}

.StickyChapterNavigation {
    position: relative;
    height: 100%
}

.StickyChapterNavigation--inner {
    display: block;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s, -webkit-transform .2s;
    -webkit-transform: translateY(4.125rem);
    transform: translateY(4.125rem)
}

.StickyChapterNavigation--inner:not(.is-expanded) {
    transition: -webkit-transform 0s;
    transition: transform 0s;
    transition: transform 0s, -webkit-transform 0s;
    -webkit-transform: none;
    transform: none
}

.StickyChapterNavigation--inner:not(.is-expanded) .StickyChapterNavigation--link:not(.is-active) {
    display: none
}

@media screen and (max-width:750px) {
    .StickyChapterNavigation--inner:not(.is-expanded) {
        width: 100%
    }

    .StickyChapterNavigation--inner {
        width: 100vw;
        -webkit-transform: translateY(3.75rem);
        transform: translateY(3.75rem);
        transition: none
    }
}

.StickyChapterNavigation--list {
    position: relative;
    left: -1px;
    margin-right: -2px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    transition: border-color 0s, border-width 0s
}

.StickyChapterNavigation--inner.is-expanded .StickyChapterNavigation--list {
    background-color: #fff;
    border: 1px solid #d4d4d4;
    border-top: 0
}

@media screen and (max-width:750px) {
    .StickyChapterNavigation--list {
        border: none
    }

    .StickyChapterNavigation--inner.is-expanded .StickyChapterNavigation--list {
        border: none
    }

    .StickyChapterNavigation--inner.is-expanded .StickyChapterNavigation--list>li {
        border-bottom: 1px solid #d4d4d4
    }
}

.StickyChapterNavigation--link {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    line-height: 1.25rem;
    display: block;
    padding: 1em 1.25rem;
    transition: background-color .2s cubic-bezier(.165, .84, .44, 1)
}

[lang=zh] .StickyChapterNavigation--link,
[lang=zh-Hant] .StickyChapterNavigation--link,
[lang=zh-Hans] .StickyChapterNavigation--link,
[lang=zh-CN] .StickyChapterNavigation--link {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .StickyChapterNavigation--link.is-active {
        background-color: #f9f9fa
    }
}

.StickyChapterNavigation--inner:not(.is-expanded) .StickyChapterNavigation--link.is-active {
    height: 4.0625rem;
    padding-top: .8125rem;
    padding-right: 60px
}

@media screen and (max-width:750px) {
    .StickyChapterNavigation--inner:not(.is-expanded) .StickyChapterNavigation--link.is-active {
        height: 3.6875rem;
        background-color: transparent
    }
}

html:not(.can-touch) .StickyChapterNavigation--inner.is-expanded .StickyChapterNavigation--link:active,
html:not(.can-touch) .StickyChapterNavigation--inner.is-expanded .StickyChapterNavigation--link:hover {
    background-color: #f9f9fa
}

@media screen and (max-width:750px) {
    .StickyChapterNavigation--inner.is-expanded .StickyChapterNavigation--link {
        width: 100vw
    }
}

.StickyChapterNavigation--counter {
    font-weight: 700;
    color: #3c4150;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block
}

.StickyChapterNavigation--counter>br {
    display: none
}

.StickyChapterNavigation--title {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block
}

.StickyChapterNavigation--title>br {
    display: none
}

.StickyChapterNavigation--toggle {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #3c4150;
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    padding: .8125rem 60px .8125rem 20px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1
}

[lang=zh] .StickyChapterNavigation--toggle,
[lang=zh-Hant] .StickyChapterNavigation--toggle,
[lang=zh-Hans] .StickyChapterNavigation--toggle,
[lang=zh-CN] .StickyChapterNavigation--toggle {
    line-height: 1.5
}

.StickyChapterNavigation--toggle:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
    transform: rotate(90deg) translateX(50%) rotate(135deg);
    right: 2em;
    transition: -webkit-transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1), -webkit-transform .2s cubic-bezier(.77, 0, .175, 1)
}

.StickyChapterNavigation--toggle:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    right: 2em;
    transition: -webkit-transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1), -webkit-transform .2s cubic-bezier(.77, 0, .175, 1)
}

.StickyChapterNavigation--toggle[aria-expanded=true]:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg)
}

.StickyChapterNavigation--toggle[aria-expanded=true]:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.StickyChapterNavigation--toggle--text {
    opacity: 0;
    visibility: hidden;
    transition: visibility 0s, opacity 0s
}

.StickyChapterNavigation--toggle[aria-expanded=true] .StickyChapterNavigation--toggle--text {
    color: #636363;
    opacity: 1;
    visibility: visible;
    transition: visibility 0s, opacity .2s .2s
}

@media screen and (max-width:750px) {
    .StickyChapterNavigation--toggle[aria-expanded=true] .StickyChapterNavigation--toggle--text {
        transition: visibility 0s, opacity .2s
    }
}

.StickyHeader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9
}

.StickyHeader::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    background-color: rgba(0, 0, 0, .4);
    visibility: hidden;
    transition: opacity 300ms linear, visibility 300ms;
    z-index: -1;
    will-change: opacity
}

@media screen and (max-width:750px) {
    .StickyHeader::before {
        background-color: #fff;
        transition: opacity .2s, visibility .2s
    }
}

.StickyHeader.is-fixed .StickyHeader--inner {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    visibility: visible;
    transition-delay: 0s, 0s
}

.StickyHeader.is-chapternav-open::before {
    opacity: 1;
    visibility: visible
}

.StickyHeader--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 4.125rem;
    padding: 0 40px;
    background-color: #fff;
    border-bottom: 1px solid #d4d4d4;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    visibility: hidden;
    transition: visibility 0s, -webkit-transform .4s;
    transition: transform .4s, visibility 0s;
    transition: transform .4s, visibility 0s, -webkit-transform .4s;
    transition-delay: 0s, .4s
}

@media screen and (max-width:1200px) {
    .StickyHeader--inner {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .StickyHeader--inner {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media screen and (max-width:750px) {
    .StickyHeader--inner {
        height: 3.75rem;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        padding-right: 0;
        padding-left: 0
    }
}

.StickyHeader--header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    overflow: hidden;
    max-width: 300px
}

@media screen and (max-width:750px) {
    .StickyHeader--header {
        max-width: none;
        height: 100%;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        padding-right: 0;
        display: none
    }
}

.StickyHeader--title {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    font-weight: 700;
    line-height: 1.25rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: .8125rem 1em .8125rem 0;
    width: 100%
}

[lang=zh] .StickyHeader--title,
[lang=zh-Hant] .StickyHeader--title,
[lang=zh-Hans] .StickyHeader--title,
[lang=zh-CN] .StickyHeader--title {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .StickyHeader--title {
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        height: 100%;
        padding-top: 22px;
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3
    }
}

.StickyHeader--headline {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.StickyHeader--headline>br {
    display: none
}

.StickyHeader--category {
    font-weight: 400;
    color: #636363;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2
}

@media screen and (max-width:750px) {
    .StickyHeader--category {
        -webkit-order: 0;
        -ms-flex-order: 0;
        order: 0;
        white-space: nowrap;
        -webkit-hyphens: none;
        -ms-hyphens: none;
        hyphens: none
    }

    .StickyHeader--category:after {
        content: " –";
        padding-right: .25em
    }
}

.StickyHeader--content {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 400px;
    border-left: 1px solid #d4d4d4;
    border-right: 1px solid #d4d4d4
}

@media screen and (max-width:750px) {
    .StickyHeader--content {
        height: 100%;
        width: auto;
        -webkit-order: 0;
        -ms-flex-order: 0;
        order: 0;
        border-left: none;
        -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto
    }
}

.StickyHeader--footer {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-left: auto;
    padding: .8125rem 0 .8125rem 15px
}

@media screen and (max-width:1000px) {
    .StickyHeader--footer {
        padding-left: 30px
    }

    .StickyHeader--header+.StickyHeader--footer {
        margin-left: auto
    }
}

@media screen and (max-width:750px) {
    .StickyHeader--footer {
        padding: 22px .25em 1em .4em;
        margin-left: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

.StickyHeader--footer>* {
    margin-left: 30px
}

.StickyHeader--footer>*:first-child {
    margin-left: 0
}

@media screen and (max-width:1000px) {
    .StickyHeader--footer>* {
        margin-left: 15px
    }
}

@media screen and (max-width:750px) {
    .StickyHeader--footer .Share {
        border: none;
        width: 40px;
        height: 40px
    }

    .StickyHeader--footer .Button {
        width: 40px;
        height: 40px
    }
}

.TagArea {
    margin-top: 60px;
    margin-bottom: 60px
}

@media screen and (max-width:1000px) {
    .TagArea {
        margin-top: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .TagArea {
        margin-top: 30px
    }
}

@media screen and (max-width:1000px) {
    .TagArea {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .TagArea {
        margin-bottom: 30px
    }
}

.l-Page.campaign .TagArea {
    margin-top: 120px;
    margin-bottom: 120px
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .TagArea {
        margin-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .TagArea {
        margin-top: 60px
    }
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .TagArea {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .TagArea {
        margin-bottom: 60px
    }
}

.TagArea.centered {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px)
}

@media(max-width:1430px) {
    .TagArea.centered {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .TagArea.centered {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .TagArea.centered {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .TagArea.centered {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .TagArea.centered {
        max-width: 100%;
        margin: 0
    }
}

.TagArea.centered .TagArea--list {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: -10px
}

.TagArea.centered .TagArea--list>li {
    margin-left: 10px
}

.TagArea--text {
    margin-bottom: 60px;
    text-align: center
}

@media screen and (max-width:1000px) {
    .TagArea--text {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .TagArea--text {
        margin-bottom: 30px
    }
}

.TagArea--list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.TagArea--list>li {
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 10px
}

.CalendarDownload {
    display: inline-block;
    position: relative
}

.CalendarDownload--toggleBtn {
    position: relative;
    z-index: 1
}

.CalendarDownload--toggleBtn .Icon {
    max-width: none !important;
    width: 50px
}

.CalendarDownload--toggleBtn .Icon:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
    transform: rotate(90deg) translateX(50%) rotate(135deg)
}

.CalendarDownload--toggleBtn .Icon:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.CalendarDownload--toggleBtn .Icon svg {
    width: 18px
}

.CalendarDownload--toggleBtn .Icon::after {
    right: 0;
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.CalendarDownload--toggleBtn[aria-expanded=true] .Icon:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg)
}

.CalendarDownload--toggleBtn[aria-expanded=true] .Icon:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.CalendarDownload--popup {
    position: absolute;
    top: calc(100% + 15px);
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.CalendarDownload--form {
    padding: 5px 15px 15px;
    background: #fff;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    border-radius: 4px;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), opacity .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), opacity .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.CalendarDownload--popup.is-collapsed .CalendarDownload--form {
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1), visibility 0s .2s, -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), opacity .2s cubic-bezier(.39, .575, .565, 1), visibility 0s .2s;
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), opacity .2s cubic-bezier(.39, .575, .565, 1), visibility 0s .2s, -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.CalendarDownload--selectAll {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    margin-bottom: 15px;
    color: #223362;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1)
}

[lang=zh] .CalendarDownload--selectAll,
[lang=zh-Hant] .CalendarDownload--selectAll,
[lang=zh-Hans] .CalendarDownload--selectAll,
[lang=zh-CN] .CalendarDownload--selectAll {
    line-height: 1.5
}

html:not(.can-touch) .CalendarDownload--selectAll:active,
html:not(.can-touch) .CalendarDownload--selectAll:hover {
    opacity: .6
}

.CalendarDownload--inputGroup.has-error .CalendarDownload--error {
    display: block
}

.CalendarDownload--inputGroup .OptionInput.OptionInput {
    white-space: nowrap;
    margin-bottom: .5em
}

.CalendarDownload--error {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    display: none;
    margin-bottom: 15px;
    color: #e00034
}

[lang=zh] .CalendarDownload--error,
[lang=zh-Hant] .CalendarDownload--error,
[lang=zh-Hans] .CalendarDownload--error,
[lang=zh-CN] .CalendarDownload--error {
    line-height: 1.5
}

.CalendarDownload--downloadCta {
    margin-top: .5em
}

.PageHeaderEvent {
    margin-bottom: 120px;
    position: relative
}

@media screen and (max-width:1000px) {
    .PageHeaderEvent {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .PageHeaderEvent {
        margin-bottom: 60px
    }
}

@media screen and (max-width:1000px) {
    .PageHeaderEvent {
        margin-bottom: 90px;
        margin-bottom: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .PageHeaderEvent {
        margin-bottom: 45px
    }
}

@media screen and (min-width:1001px) {
    .PageHeaderEvent--inner {
        position: relative;
        margin-left: calc(50% - 615px);
        margin-right: calc(50% - 615px);
        position: static;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }
}

@media screen and (min-width:1001px) and (max-width:1430px) {
    .PageHeaderEvent--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (min-width:1001px) and (max-width:1200px) {
    .PageHeaderEvent--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:1000px) {
    .PageHeaderEvent--inner .Breadcrumbs {
        display: none
    }
}

.PageHeaderEvent--column {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.PageHeaderEvent--column.main {
    padding-bottom: 120px
}

@media screen and (max-width:1000px) {
    .PageHeaderEvent--column.main {
        padding-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .PageHeaderEvent--column.main {
        padding-bottom: 60px
    }
}

.PageHeaderEvent--column.aside {
    display: block
}

@media screen and (min-width:1001px) {
    .PageHeaderEvent--column.main {
        width: 66.6%;
        padding-top: 280px;
        padding-right: 60px
    }

    .PageHeaderEvent--column.aside {
        position: relative;
        top: 80px;
        width: 33.3%;
        -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
        align-self: flex-end
    }
}

@media screen and (max-width:1000px) {
    .PageHeaderEvent--column.main {
        padding-left: 75px;
        padding-right: 75px;
        position: relative;
        padding-top: 200px;
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .PageHeaderEvent--column.main {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .PageHeaderEvent--column.main {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media screen and (max-width:1000px) {
    .PageHeaderEvent--column.aside {
        padding-top: 60px;
        padding-bottom: 60px;
        border-bottom: 1px solid #d4d4d4
    }

    .PageHeaderEvent--column.aside .ConferenceInfobox {
        margin-left: 75px;
        margin-right: 75px;
        box-shadow: none;
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .PageHeaderEvent--column.aside .ConferenceInfobox {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .PageHeaderEvent--column.aside .ConferenceInfobox {
        margin-left: 20px;
        margin-right: 20px
    }
}

.PageHeaderEvent--text {
    position: relative;
    margin-top: 1em;
    color: #fff
}

.PageHeaderEvent--title {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    display: block;
    margin-bottom: 1em
}

[lang=zh] .PageHeaderEvent--title,
[lang=zh-Hant] .PageHeaderEvent--title,
[lang=zh-Hans] .PageHeaderEvent--title,
[lang=zh-CN] .PageHeaderEvent--title {
    line-height: 1.5
}

.PageHeaderEvent--headline {
    font-size: 50px;
    font-size: 3.125rem;
    font-weight: 200;
    line-height: 1.16;
    display: block
}

@media screen and (max-width:1000px) {
    .PageHeaderEvent--headline {
        font-size: 30px;
        font-size: 1.875rem;
        line-height: 1.53333
    }
}

.PageHeaderEvent--ctas {
    margin-top: 30px
}

.PageHeaderEvent--ctas>* {
    margin-right: 15px
}

.PageHeaderEvent--image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.PageHeaderEvent--image::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.3) 85%, rgba(0, 0, 0, 0.4) 100%)
}

.PageHeaderEvent--image>.Media {
    height: calc(100% + 100px)
}

.PageHeaderEvent--image>.Media>.Media.image {
    height: 100%;
    top: -50px;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px)
}

.Header--inner.small .GlobalNav {
    width: 100%
}

@media screen and (max-width:1000px) {
    .GlobalNav {
        width: 100%
    }
}

.GlobalNav--list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.GlobalNav--list:after {
    display: block;
    content: "";
    clear: both
}

.GlobalNav--list>li {
    float: left;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    overflow-x: hidden
}

.Header--inner.small .GlobalNav--list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 1em 0
}

.Header--inner.small .GlobalNav--list>li {
    float: none;
    width: 100%
}

@media screen and (max-width:1000px) {
    .GlobalNav--list {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 1em 0
    }

    .GlobalNav--list>li {
        float: none;
        width: 100%
    }
}

.GlobalNav--link {
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 400;
    color: #3c4150;
    position: relative;
    display: block;
    padding: 0 1.5em;
    line-height: 80px;
    transition: color .2s cubic-bezier(.39, .575, .565, 1);
    will-change: color
}

.GlobalNav--link::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    height: 0;
    margin: 0 1.5em;
    border-bottom: 2px solid #223362;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-transform-origin: center left;
    transform-origin: center left
}

.Header--inner.small .GlobalNav--link::before {
    content: none
}

@media screen and (max-width:1000px) {
    .GlobalNav--link::before {
        content: none
    }
}

html:not(.can-touch) .GlobalNav--link:active,
html:not(.can-touch) .GlobalNav--link:hover {
    color: #223362
}

.GlobalNav--link[aria-expanded=true],
.GlobalNav--link[aria-expanded=true]:active,
html:not(.can-touch) .GlobalNav--link[aria-expanded=true]:hover {
    color: #223362
}

.GlobalNav--link[aria-expanded=true]::before,
.GlobalNav--link[aria-expanded=true]:active::before,
html:not(.can-touch) .GlobalNav--link[aria-expanded=true]:hover::before {
    -webkit-transform: none;
    transform: none
}

@media screen and (max-width:1382px) {
    .GlobalNav--link {
        line-height: 70px;
        padding: 0 1em
    }

    .GlobalNav--link::before {
        margin: 0 1em
    }
}

.Header--inner.small .GlobalNav--link {
    font-size: 22px;
    font-size: 1.375rem;
    padding: 0 30px;
    line-height: 2.4375rem;
    margin-bottom: 5px
}

.Header--inner.small .GlobalNav--link::before {
    content: none
}

@media screen and (max-width:1000px) {
    .GlobalNav--link {
        font-size: 22px;
        font-size: 1.375rem;
        padding: 0 30px;
        line-height: 2.4375rem;
        margin-bottom: 5px
    }

    .GlobalNav--link::before {
        content: none
    }
}

.Header--inner.small .GlobalNav--link {
    padding: 0 26px
}

@media screen and (max-width:750px) {
    .GlobalNav--link {
        padding: 0 26px
    }
}

.Header {
    width: 100%
}

.Header.is-nav-open .Header--inner:before {
    opacity: 1;
    transition: opacity 0s .2s
}

.Header.is-nav-open .Header--navBar {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    transition: border-radius 150ms 100ms linear
}

.Header.is-nav-open .Header--background,
.Header.is-search-open .Header--background {
    opacity: 1;
    visibility: visible
}

.Header.transparent {
    color: #fff
}

.Header.transparent .Header--inner {
    box-shadow: none
}

.Header.transparent .Header--nav {
    box-shadow: none !important
}

.Header.transparent .Header--navBar {
    background-color: transparent
}

@media screen and (max-width:750px) {
    .Header.transparent .Header--logo {
        padding-left: 0
    }
}

.Header--inner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 1540px;
    margin: 30px auto;
    border-radius: 4px;
    box-shadow: 0 20px 70px 0 rgba(0, 0, 0, .1);
    z-index: 10
}

.Header--inner.small {
    box-shadow: none
}

.Header--inner.small:before {
    display: none
}

.Header.is-mobilenav-open>.Header--inner.small .Header--background {
    opacity: 1;
    visibility: visible
}

@media(max-width:1600px) {
    .Header--inner {
        max-width: initial;
        width: auto;
        margin: 30px
    }
}

@media screen and (max-width:580px) {
    .Header--inner {
        margin: 20px
    }
}

@media screen and (max-width:1000px) {
    .Header--inner {
        box-shadow: none
    }
}

.Header--inner:before {
    content: "";
    position: absolute;
    top: auto;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #d4d4d4;
    z-index: 2;
    opacity: 0
}

@media screen and (max-width:1000px) {
    .Header--inner:before {
        display: none
    }
}

.Header--inner.is-nav-open:before {
    opacity: 1;
    transition: opacity 0s .2s
}

.Header--inner.is-nav-open .Header--navBar {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    transition: border-radius 150ms 100ms linear
}

.Header--inner.is-nav-open .Header--background,
.Header--inner.is-search-open .Header--background {
    opacity: 1;
    visibility: visible
}

@media screen and (max-width:1000px) {
    .Header.is-mobilenav-open>.Header--inner .Header--background {
        opacity: 1;
        visibility: visible
    }
}

.Header--flyout {
    position: absolute;
    top: 100%;
    width: 100%;
    margin-top: -5px;
    padding-top: 5px;
    background-color: #fff;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    transition: visibility 300ms 0ms, opacity 150ms 100ms linear, -webkit-transform 300ms 100ms cubic-bezier(.165, .84, .44, 1);
    transition: transform 300ms 100ms cubic-bezier(.165, .84, .44, 1), visibility 300ms 0ms, opacity 150ms 100ms linear;
    transition: transform 300ms 100ms cubic-bezier(.165, .84, .44, 1), visibility 300ms 0ms, opacity 150ms 100ms linear, -webkit-transform 300ms 100ms cubic-bezier(.165, .84, .44, 1);
    -webkit-transform-origin: top center;
    transform-origin: top center;
    overflow: hidden;
    will-change: transform, visibility, opacity
}

.Header--flyout.is-collapsed {
    display: none
}

.Header--flyout:not(.is-expanded) {
    will-change: transform, opacity;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(-70px);
    transform: translateY(-70px);
    transition: visibility 100ms, opacity 50ms 50ms ease-out, -webkit-transform 100ms ease-in;
    transition: transform 100ms ease-in, visibility 100ms, opacity 50ms 50ms ease-out;
    transition: transform 100ms ease-in, visibility 100ms, opacity 50ms 50ms ease-out, -webkit-transform 100ms ease-in
}

.Header--inner.small .Header--flyout {
    z-index: 100;
    transition: opacity .1s ease-out;
    position: relative;
    will-change: auto
}

.Header--inner.small .Header--flyout:not(.is-expanded) {
    -webkit-transform: none;
    transform: none
}

@media screen and (max-width:1000px) {
    .Header--flyout {
        z-index: 100;
        transition: opacity .1s ease-out;
        position: relative;
        will-change: auto
    }

    .Header--flyout:not(.is-expanded) {
        -webkit-transform: none;
        transform: none
    }
}

.Header--inner.small .Header--universalNav>.UniversalNav {
    display: none
}

.Header.is-mobilenav-open .Header--inner.small .Header--universalNav>.UniversalNav {
    display: block
}

@media screen and (max-width:1000px) {
    .Header--universalNav>.UniversalNav {
        display: none
    }

    .Header.is-mobilenav-open .Header--universalNav>.UniversalNav {
        display: block
    }
}

.Header--nav {
    position: relative;
    z-index: 1
}

.Header--nav:after {
    display: block;
    content: "";
    clear: both
}

.Header--inner.small .Header--nav {
    box-shadow: 0 20px 70px 0 rgba(0, 0, 0, .1)
}

@media screen and (max-width:1000px) {
    .Header--nav {
        box-shadow: 0 20px 70px 0 rgba(0, 0, 0, .1)
    }
}

.Header--navBar {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    border-radius: 4px;
    transition: border-radius .1s linear;
    z-index: 1
}

.Header--navBar:after {
    display: block;
    content: "";
    clear: both
}

.Header--universalNav+.Header--nav .Header--navBar {
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.Header--inner.small .Header--navBar {
    height: 80px;
    margin-top: 0;
    border-radius: 4px
}

.Header--universalNav+.Header--nav .Header--inner.small .Header--navBar {
    border-radius: 4px
}

@media screen and (max-width:1000px) {
    .Header--navBar {
        height: 80px;
        margin-top: 0;
        border-radius: 4px
    }

    .Header--universalNav+.Header--nav .Header--navBar {
        border-radius: 4px
    }
}

.Header--logo {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 80px;
    padding: 0 30px
}

.Header--logo.separate::before {
    content: "";
    position: absolute;
    top: 0;
    right: 5px;
    bottom: 0;
    margin: 13px 0;
    border-left: 1px solid #d4d4d4
}

@media screen and (max-width:1382px) {
    .Header--logo.separate::before {
        right: 2px
    }
}

.Header--inner.small .Header--logo.separate::before {
    content: none
}

@media screen and (max-width:1000px) {
    .Header--logo.separate::before {
        content: none
    }
}

@media screen and (max-width:1382px) {
    .Header--logo {
        padding: 0 20px;
        height: 70px
    }
}

.Header--inner.small .Header--logo {
    margin-right: auto;
    padding-left: 28px;
    padding-right: 0;
    height: 80px
}

@media screen and (max-width:1000px) {
    .Header--logo {
        margin-right: auto;
        padding-left: 28px;
        padding-right: 0;
        height: 80px
    }
}

.Header--mainNav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
}

.Header--mainNav:after {
    display: block;
    content: "";
    clear: both
}

.Header--mainNav>.GlobalNav {
    margin-right: auto
}

.Header--mainNav>.ServiceNav {
    margin-right: 15px;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2
}

.Header--mainNav>.Identifier {
    margin-left: auto;
    margin-right: 15px;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1
}

.Header--inner.small .Header--mainNav {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 80px;
    z-index: -1;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 20px 70px 0 rgba(0, 0, 0, .1);
    max-height: none;
    overflow: hidden
}

.Header--inner.small .Header--mainNav>.ServiceNav {
    margin-left: 0;
    margin-right: 0
}

.Header--inner.small .Header--mainNav>.Identifier {
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    margin-left: 30px;
    margin-bottom: 30px
}

@media screen and (max-width:750px) {
    .Header--inner.small .Header--mainNav>.Identifier {
        margin-left: 26px
    }
}

.Header--inner.small .Header--mainNav[data-hidden=true]>* {
    display: none;
    box-shadow: none
}

@media screen and (max-width:1000px) {
    .Header--mainNav {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding-top: 80px;
        z-index: -1;
        background-color: #fff;
        border-radius: 4px;
        box-shadow: 0 20px 70px 0 rgba(0, 0, 0, .1);
        max-height: none;
        overflow: hidden
    }

    .Header--mainNav>.ServiceNav {
        margin-left: 0;
        margin-right: 0
    }

    .Header--mainNav>.Identifier {
        -webkit-order: 0;
        -ms-flex-order: 0;
        order: 0;
        margin-left: 30px;
        margin-bottom: 30px
    }
}

@media screen and (max-width:750px) {
    .Header--mainNav>.Identifier {
        margin-left: 26px
    }
}

@media screen and (max-width:1000px) {
    .Header--mainNav[data-hidden=true]>* {
        display: none;
        box-shadow: none
    }
}

.Header--toggle {
    display: none;
    position: relative;
    height: 80px;
    width: 80px;
    padding: 0 30px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.Header--inner.small .Header--toggle {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: auto;
    padding-left: 20px
}

.Header--inner.small .Header--toggle .Header--toggle--open {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.Header--inner.small .Header--toggle .Header--toggle--close {
    display: none
}

.Header--inner.small .Header--toggle[aria-expanded=true] {
    border-color: #d4d4d4
}

.Header--inner.small .Header--toggle[aria-expanded=true]>.Icon {
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
}

.Header--inner.small .Header--toggle[aria-expanded=true]>.Icon:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    height: auto;
    border-bottom: none;
    left: 50%
}

.Header--inner.small .Header--toggle[aria-expanded=true]>.Icon:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    height: auto;
    border-bottom: none;
    left: 50%
}

.Header--inner.small .Header--toggle[aria-expanded=true] .Header--toggle--open {
    display: none
}

.Header--inner.small .Header--toggle[aria-expanded=true] .Header--toggle--close {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media screen and (max-width:1000px) {
    .Header--toggle {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: auto;
        padding-left: 20px
    }

    .Header--toggle .Header--toggle--open {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }

    .Header--toggle .Header--toggle--close {
        display: none
    }

    .Header--toggle[aria-expanded=true] {
        border-color: #d4d4d4
    }

    .Header--toggle[aria-expanded=true]>.Icon {
        -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto
    }

    .Header--toggle[aria-expanded=true]>.Icon:after {
        content: "";
        position: absolute;
        font-size: 10px;
        top: 50%;
        left: 50%;
        width: 24px;
        margin: -1px -12px;
        border-top: 1px solid;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
        transition: transform .2s cubic-bezier(.39, .575, .565, 1);
        transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
        height: auto;
        border-bottom: none;
        left: 50%
    }

    .Header--toggle[aria-expanded=true]>.Icon:before {
        content: "";
        position: absolute;
        font-size: 10px;
        top: 50%;
        left: 50%;
        width: 24px;
        margin: -1px -12px;
        border-top: 1px solid;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
        transition: transform .2s cubic-bezier(.39, .575, .565, 1);
        transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
        height: auto;
        border-bottom: none;
        left: 50%
    }

    .Header--toggle[aria-expanded=true] .Header--toggle--open {
        display: none
    }

    .Header--toggle[aria-expanded=true] .Header--toggle--close {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }
}

.Header--inner.small .Header--toggle {
    padding-right: 26px
}

@media screen and (max-width:750px) {
    .Header--toggle {
        padding-right: 26px
    }
}

.Header--search {
    margin-left: auto
}

.Header.is-mobilenav-open .Header--search {
    display: none
}

.Header--languageSwitcher {
    margin-left: auto
}

.Header--share {
    margin-left: auto
}

.Header--languageSwitcher+.Header--share {
    margin-left: 15px
}

@media screen and (max-width:750px) {
    .Header--languageSwitcher+.Header--share {
        margin-left: 0
    }
}

.Header--background {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    background-color: rgba(0, 0, 0, .4);
    visibility: hidden;
    transition: opacity 300ms linear, visibility 300ms;
    z-index: -2;
    will-change: opacity
}

.HeaderFlyout {
    position: relative
}

.HeaderFlyout[data-hidden=true] {
    display: none
}

.Header--inner.small .HeaderFlyout.is-opening .HeaderFlyout--title {
    transition: none
}

.Header--inner.small .HeaderFlyout .HeaderFlyout--title {
    transition: -webkit-transform .4s .1s cubic-bezier(.165, .84, .44, 1);
    transition: transform .4s .1s cubic-bezier(.165, .84, .44, 1);
    transition: transform .4s .1s cubic-bezier(.165, .84, .44, 1), -webkit-transform .4s .1s cubic-bezier(.165, .84, .44, 1)
}

.Header--inner.small .HeaderFlyout.is-opened .HeaderFlyout--title {
    transition: -webkit-transform .4s cubic-bezier(.165, .84, .44, 1);
    transition: transform .4s cubic-bezier(.165, .84, .44, 1);
    transition: transform .4s cubic-bezier(.165, .84, .44, 1), -webkit-transform .4s cubic-bezier(.165, .84, .44, 1)
}

.Header--inner.small .HeaderFlyout.is-opened .HeaderFlyout--section:not(.info) {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), -webkit-transform .2s .15s cubic-bezier(.165, .84, .44, 1);
    transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), transform .2s .15s cubic-bezier(.165, .84, .44, 1);
    transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), transform .2s .15s cubic-bezier(.165, .84, .44, 1), -webkit-transform .2s .15s cubic-bezier(.165, .84, .44, 1)
}

.Header--inner.small .HeaderFlyout.is-opened .HeaderFlyout--section>*:not(.HeaderFlyout--title) {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), -webkit-transform .2s .15s cubic-bezier(.165, .84, .44, 1);
    transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), transform .2s .15s cubic-bezier(.165, .84, .44, 1);
    transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), transform .2s .15s cubic-bezier(.165, .84, .44, 1), -webkit-transform .2s .15s cubic-bezier(.165, .84, .44, 1)
}

@media screen and (max-width:1000px) {
    .HeaderFlyout.is-opening .HeaderFlyout--title {
        transition: none
    }

    .HeaderFlyout .HeaderFlyout--title {
        transition: -webkit-transform .4s .1s cubic-bezier(.165, .84, .44, 1);
        transition: transform .4s .1s cubic-bezier(.165, .84, .44, 1);
        transition: transform .4s .1s cubic-bezier(.165, .84, .44, 1), -webkit-transform .4s .1s cubic-bezier(.165, .84, .44, 1)
    }

    .HeaderFlyout.is-opened .HeaderFlyout--title {
        transition: -webkit-transform .4s cubic-bezier(.165, .84, .44, 1);
        transition: transform .4s cubic-bezier(.165, .84, .44, 1);
        transition: transform .4s cubic-bezier(.165, .84, .44, 1), -webkit-transform .4s cubic-bezier(.165, .84, .44, 1)
    }

    .HeaderFlyout.is-opened .HeaderFlyout--section:not(.info) {
        -webkit-transform: none;
        transform: none;
        opacity: 1;
        transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), -webkit-transform .2s .15s cubic-bezier(.165, .84, .44, 1);
        transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), transform .2s .15s cubic-bezier(.165, .84, .44, 1);
        transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), transform .2s .15s cubic-bezier(.165, .84, .44, 1), -webkit-transform .2s .15s cubic-bezier(.165, .84, .44, 1)
    }

    .HeaderFlyout.is-opened .HeaderFlyout--section>*:not(.HeaderFlyout--title) {
        -webkit-transform: none;
        transform: none;
        opacity: 1;
        transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), -webkit-transform .2s .15s cubic-bezier(.165, .84, .44, 1);
        transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), transform .2s .15s cubic-bezier(.165, .84, .44, 1);
        transition: opacity .4s .15s cubic-bezier(.165, .84, .44, 1), transform .2s .15s cubic-bezier(.165, .84, .44, 1), -webkit-transform .2s .15s cubic-bezier(.165, .84, .44, 1)
    }
}

.HeaderFlyout--close {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    height: 80px;
    width: 80px;
    padding: 0 30px;
    right: 0;
    margin-left: auto;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1
}

.Header--inner.small .HeaderFlyout--close {
    display: none
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--close {
        display: none
    }
}

.HeaderFlyout--close:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    height: auto;
    border-bottom: none;
    left: 50%
}

.HeaderFlyout--close:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    height: auto;
    border-bottom: none;
    left: 50%
}

html:not(.can-touch) .HeaderFlyout--close:active:after,
html:not(.can-touch) .HeaderFlyout--close:hover:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(-45deg);
    transform: scale(1.1) rotate(-45deg)
}

html:not(.can-touch) .HeaderFlyout--close:active:before,
html:not(.can-touch) .HeaderFlyout--close:hover:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(45deg);
    transform: scale(1.1) rotate(45deg)
}

.HeaderFlyout--inner {
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    padding: 60px 0
}

@media(max-width:1430px) {
    .HeaderFlyout--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .HeaderFlyout--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .HeaderFlyout--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .HeaderFlyout--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .HeaderFlyout--inner {
        max-width: 100%;
        margin: 0
    }
}

.Header--inner.small .HeaderFlyout--inner {
    margin-left: 30px;
    margin-right: 30px;
    padding-top: 30px
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--inner {
        margin-left: 30px;
        margin-right: 30px;
        padding-top: 30px
    }
}

.Header--inner.small .HeaderFlyout--inner {
    margin-left: 26px;
    margin-right: 26px;
    padding-bottom: 30px
}

@media screen and (max-width:750px) {
    .HeaderFlyout--inner {
        margin-left: 26px;
        margin-right: 26px;
        padding-bottom: 30px
    }
}

.HeaderFlyout--content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: -30px;
    margin-top: -30px;
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 400;
    color: #636363
}

.HeaderFlyout--content>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 25%;
    margin-top: 30px;
    padding-right: 30px
}

.HeaderFlyout--content:after {
    content: '';
    display: table;
    clear: both
}

@media screen and (max-width:1382px) {
    .HeaderFlyout--content {
        display: block
    }
}

.Header--inner.small .HeaderFlyout--content {
    margin-top: 0
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--content {
        margin-top: 0
    }
}

.Header--inner.small .HeaderFlyout--content {
    margin-right: 0
}

.Header--inner.small .HeaderFlyout--content>* {
    padding-right: 0
}

@media screen and (max-width:750px) {
    .HeaderFlyout--content {
        margin-right: 0
    }

    .HeaderFlyout--content>* {
        padding-right: 0
    }
}

.HeaderFlyout--section {
    width: 25%;
    padding-right: 60px;
    float: left
}

@media(max-width:1430px) {
    .HeaderFlyout--section {
        padding-right: 30px
    }
}

.Header--inner.small .HeaderFlyout--section {
    width: 50%
}

.Header--inner.small .HeaderFlyout--section:not(.info) {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
    transition: opacity .2s ease-out, transform .2s ease-out;
    transition: opacity .2s ease-out, transform .2s ease-out, -webkit-transform .2s ease-out;
    opacity: 0
}

.Header--inner.small .HeaderFlyout--section.info {
    width: 100%;
    margin-bottom: 30px;
    margin-top: 0
}

.Header--inner.small .HeaderFlyout--section.info>*:not(.HeaderFlyout--title) {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
    transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
    transition: opacity .2s ease-out, transform .2s ease-out;
    transition: opacity .2s ease-out, transform .2s ease-out, -webkit-transform .2s ease-out;
    opacity: 0
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--section {
        width: 50%
    }

    .HeaderFlyout--section:not(.info) {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
        transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
        transition: opacity .2s ease-out, transform .2s ease-out;
        transition: opacity .2s ease-out, transform .2s ease-out, -webkit-transform .2s ease-out;
        opacity: 0
    }

    .HeaderFlyout--section.info {
        width: 100%;
        margin-bottom: 30px;
        margin-top: 0
    }

    .HeaderFlyout--section.info>*:not(.HeaderFlyout--title) {
        -webkit-transform: translateY(-5px);
        transform: translateY(-5px);
        transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
        transition: opacity .2s ease-out, transform .2s ease-out;
        transition: opacity .2s ease-out, transform .2s ease-out, -webkit-transform .2s ease-out;
        opacity: 0
    }
}

.Header--inner.small .HeaderFlyout--section {
    width: 100%;
    padding-right: 0
}

.Header--inner.small .HeaderFlyout--section.info {
    margin-bottom: 15px
}

@media screen and (max-width:750px) {
    .HeaderFlyout--section {
        width: 100%;
        padding-right: 0
    }

    .HeaderFlyout--section.info {
        margin-bottom: 15px
    }
}

.HeaderFlyout--section.highlight {
    margin-left: auto;
    padding-right: 30px;
    z-index: 0
}

@media screen and (max-width:1382px) {
    .HeaderFlyout--section.highlight {
        display: none
    }
}

.Header--inner.small .HeaderFlyout--section.highlight {
    display: none
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--section.highlight {
        display: none
    }
}

.HeaderFlyout--section.highlight::before {
    background-image: linear-gradient(to bottom, #F9F9FA, #ffffff);
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    margin: 0 auto;
    height: 100%;
    max-height: 700px;
    padding-left: 30px;
    width: calc(285px + (50% - 615px));
    z-index: -1
}

@media(max-width:1430px) {
    .HeaderFlyout--section.highlight::before {
        content: none
    }
}

.HeaderFlyout--back {
    position: relative;
    padding-left: 1em;
    margin-bottom: 15px;
    display: none
}

.Header--inner.small .HeaderFlyout--back {
    display: inline-block
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--back {
        display: inline-block
    }
}

.HeaderFlyout--back:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(180deg) translateX(50%) rotate(135deg);
    transform: rotate(180deg) translateX(50%) rotate(135deg);
    left: 0;
    margin-left: 5px
}

.HeaderFlyout--back:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    left: 0;
    margin-left: 5px
}

.HeaderFlyout--section--title {
    font-weight: 700;
    color: #000;
    line-height: 1.5
}

.HeaderFlyout--section.highlight .HeaderFlyout--section--title {
    margin-bottom: 2em
}

.HeaderFlyout--section--title:last-child>a {
    border-bottom: 1px solid #d4d4d4
}

.HeaderFlyout--section--title>a {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
    position: relative;
    padding-right: 1.5em;
    padding-top: 15px;
    padding-bottom: 13px;
    border-top: 1px solid #d4d4d4;
    width: 100%;
    transition: text-indent .2s cubic-bezier(.165, .84, .44, 1), color .2s cubic-bezier(.165, .84, .44, 1)
}

.HeaderFlyout--section--title>a>br {
    display: none
}

.HeaderFlyout--section--title>a:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0) translateX(50%) rotate(135deg);
    transform: rotate(0) translateX(50%) rotate(135deg);
    left: 100%;
    margin-left: -5px
}

.HeaderFlyout--section--title>a:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    left: 100%;
    margin-left: -5px
}

html:not(.can-touch) .HeaderFlyout--section--title>a:active,
html:not(.can-touch) .HeaderFlyout--section--title>a:hover {
    text-indent: 1em
}

html:not(.can-touch) .HeaderFlyout--section--title>a:active::after,
html:not(.can-touch) .HeaderFlyout--section--title>a:hover::after {
    -webkit-animation: subnav-link .3s cubic-bezier(.165, .84, .44, 1) forwards;
    animation: subnav-link .3s cubic-bezier(.165, .84, .44, 1) forwards
}

.Header--inner.small .HeaderFlyout--section--title:last-child>a {
    border-bottom: none
}

.HeaderFlyout--section:last-of-type .Header--inner.small .HeaderFlyout--section--title:last-child>a {
    border-bottom: 1px solid #d4d4d4
}

@media screen and (max-width:750px) {
    .HeaderFlyout--section--title:last-child>a {
        border-bottom: none
    }

    .HeaderFlyout--section:last-of-type .HeaderFlyout--section--title:last-child>a {
        border-bottom: 1px solid #d4d4d4
    }
}

.HeaderFlyout--linkList {
    margin-bottom: 50px;
    overflow-x: hidden
}

.HeaderFlyout--section--title+.HeaderFlyout--linkList {
    border-top: 1px solid #d4d4d4
}

.HeaderFlyout--linkList:last-child {
    margin-bottom: 0
}

.HeaderFlyout--linkList li {
    overflow: hidden;
    border-bottom: none
}

.Header--inner.small .HeaderFlyout--linkList {
    margin-bottom: 30px
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--linkList {
        margin-bottom: 30px
    }
}

.HeaderFlyout--link {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    position: relative;
    display: block;
    width: 100%;
    color: #000;
    padding: 10px 1em 8px 0;
    transition: text-indent .2s cubic-bezier(.165, .84, .44, 1), color .2s cubic-bezier(.165, .84, .44, 1)
}

.HeaderFlyout--link>br {
    display: none
}

.HeaderFlyout--link:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0) translateX(50%) rotate(135deg);
    transform: rotate(0) translateX(50%) rotate(135deg);
    left: 100%;
    margin-left: -5px
}

.HeaderFlyout--link:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    left: 100%;
    margin-left: -5px
}

html:not(.can-touch) .HeaderFlyout--link:active,
html:not(.can-touch) .HeaderFlyout--link:hover {
    text-indent: 1em
}

html:not(.can-touch) .HeaderFlyout--link:active::after,
html:not(.can-touch) .HeaderFlyout--link:hover::after {
    -webkit-animation: subnav-link .3s cubic-bezier(.165, .84, .44, 1) forwards;
    animation: subnav-link .3s cubic-bezier(.165, .84, .44, 1) forwards
}

@-webkit-keyframes subnav-link {
    0% {
        opacity: 1
    }

    20% {
        opacity: 0
    }

    50% {
        left: 0;
        margin-left: 0;
        opacity: 0
    }

    100% {
        left: 5px;
        margin-left: 0;
        opacity: 1
    }
}

@keyframes subnav-link {
    0% {
        opacity: 1
    }

    20% {
        opacity: 0
    }

    50% {
        left: 0;
        margin-left: 0;
        opacity: 0
    }

    100% {
        left: 5px;
        margin-left: 0;
        opacity: 1
    }
}

.HeaderFlyout--title {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    color: #000;
    margin-bottom: 1em
}

[lang=zh] .HeaderFlyout--title,
[lang=zh-Hant] .HeaderFlyout--title,
[lang=zh-Hans] .HeaderFlyout--title,
[lang=zh-CN] .HeaderFlyout--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--title {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.Header--inner.small .HeaderFlyout--title {
    font-size: 25px;
    font-size: 1.5625rem;
    font-weight: 400;
    line-height: 45px;
    margin-bottom: 5px
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--title {
        font-size: 25px;
        font-size: 1.5625rem;
        font-weight: 400;
        line-height: 45px;
        margin-bottom: 5px
    }
}

.Header--inner.small .HeaderFlyout--title {
    margin-bottom: 0
}

@media screen and (max-width:750px) {
    .HeaderFlyout--title {
        margin-bottom: 0
    }
}

.HeaderFlyout--description {
    margin-bottom: 20px
}

.Header--inner.small .HeaderFlyout--description {
    max-width: 75%
}

@media screen and (max-width:1000px) {
    .HeaderFlyout--description {
        max-width: 75%
    }
}

.HeaderFlyout--cta {
    position: relative;
    display: inline-block;
    padding-right: 1.5em;
    color: #223362
}

.HeaderFlyout--cta:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0) translateX(50%) rotate(135deg);
    transform: rotate(0) translateX(50%) rotate(135deg);
    right: 0;
    margin-right: .5em;
    color: #cce2e3;
    transition: margin-right .2s cubic-bezier(.165, .84, .44, 1), color .2s cubic-bezier(.165, .84, .44, 1)
}

.HeaderFlyout--cta:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    right: 0;
    margin-right: .5em;
    color: #cce2e3;
    transition: margin-right .2s cubic-bezier(.165, .84, .44, 1), color .2s cubic-bezier(.165, .84, .44, 1)
}

html:not(.can-touch) .HeaderFlyout--cta:active::after,
html:not(.can-touch) .HeaderFlyout--cta:hover::after {
    margin-right: 0;
    color: #223362
}

.HeaderFlyout--login {
    font-size: 15px;
    font-size: .9375rem;
    margin-top: 20px
}

.HeaderFlyoutTeaser {
    position: relative;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: box-shadow .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), box-shadow .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), box-shadow .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    will-change: transform, boxshadow
}

html:not(.can-touch) .HeaderFlyoutTeaser:active,
html:not(.can-touch) .HeaderFlyoutTeaser:hover {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .HeaderFlyoutTeaser:active .HeaderFlyoutTeaser--image,
html:not(.can-touch) .HeaderFlyoutTeaser:hover .HeaderFlyoutTeaser--image {
    box-shadow: 0 10px 40px 0 rgba(0, 0, 0, .25)
}

html:not(.can-touch) .HeaderFlyoutTeaser:active .HeaderFlyoutTeaser--title,
html:not(.can-touch) .HeaderFlyoutTeaser:active .HeaderFlyoutTeaser--date,
html:not(.can-touch) .HeaderFlyoutTeaser:hover .HeaderFlyoutTeaser--title,
html:not(.can-touch) .HeaderFlyoutTeaser:hover .HeaderFlyoutTeaser--date {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

.HeaderFlyoutTeaser--image {
    position: relative;
    max-height: 170px;
    margin-bottom: 20px;
    border-radius: 4px;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    overflow: hidden;
    transition: box-shadow .3s cubic-bezier(.165, .84, .44, 1)
}

.HeaderFlyoutTeaser--image>.Media {
    border-radius: 4px
}

.HeaderFlyoutTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    color: #000;
    margin-bottom: 1em;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

[lang=zh] .HeaderFlyoutTeaser--title,
[lang=zh-Hant] .HeaderFlyoutTeaser--title,
[lang=zh-Hans] .HeaderFlyoutTeaser--title,
[lang=zh-CN] .HeaderFlyoutTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .HeaderFlyoutTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.HeaderFlyoutTeaser--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    display: block;
    margin-bottom: 5px
}

[lang=zh] .HeaderFlyoutTeaser--category,
[lang=zh-Hant] .HeaderFlyoutTeaser--category,
[lang=zh-Hans] .HeaderFlyoutTeaser--category,
[lang=zh-CN] .HeaderFlyoutTeaser--category {
    line-height: 1.5
}

.HeaderFlyoutTeaser--date {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    display: block;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

[lang=zh] .HeaderFlyoutTeaser--date,
[lang=zh-Hant] .HeaderFlyoutTeaser--date,
[lang=zh-Hans] .HeaderFlyoutTeaser--date,
[lang=zh-CN] .HeaderFlyoutTeaser--date {
    line-height: 1.5
}

.HeaderFlyoutTeaser--link {
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.HeaderLocations {
    position: relative;
    z-index: 0
}

.HeaderLocations[data-hidden=true] {
    display: none
}

.Header--inner.small .HeaderLocations {
    display: none
}

@media screen and (max-width:1000px) {
    .HeaderLocations {
        display: none
    }
}

.Header--inner.small .HeaderLocations--trigger {
    display: none !important
}

@media screen and (max-width:1000px) {
    .HeaderLocations--trigger {
        display: none !important
    }
}

.HeaderLocations--trigger::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    height: 0;
    margin: 0 15px;
    border-bottom: 2px solid #223362;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-transform-origin: center left;
    transform-origin: center left
}

.Header--inner.small .HeaderLocations--trigger::before {
    content: none
}

@media screen and (max-width:1000px) {
    .HeaderLocations--trigger::before {
        content: none
    }
}

.HeaderLocations--trigger[aria-expanded=true],
.HeaderLocations--trigger[aria-expanded=true]:active,
html:not(.can-touch) .HeaderLocations--trigger[aria-expanded=true]:hover {
    color: #3c4150
}

.HeaderLocations--trigger[aria-expanded=true]::before,
.HeaderLocations--trigger[aria-expanded=true]:active::before,
html:not(.can-touch) .HeaderLocations--trigger[aria-expanded=true]:hover::before {
    -webkit-transform: none;
    transform: none
}

.HeaderLocations--inner {
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    padding: 60px 0 90px;
    height: 500px !important
}

@media(max-width:1430px) {
    .HeaderLocations--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .HeaderLocations--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .HeaderLocations--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .HeaderLocations--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .HeaderLocations--inner {
        max-width: 100%;
        margin: 0
    }
}

.Header--inner.small .HeaderLocations--inner {
    margin-left: 30px;
    margin-right: 30px;
    padding-top: 30px
}

@media screen and (max-width:1000px) {
    .HeaderLocations--inner {
        margin-left: 30px;
        margin-right: 30px;
        padding-top: 30px
    }
}

.Header--inner.small .HeaderLocations--inner {
    margin-left: 26px;
    margin-right: 26px;
    padding-bottom: 30px
}

@media screen and (max-width:750px) {
    .HeaderLocations--inner {
        margin-left: 26px;
        margin-right: 26px;
        padding-bottom: 30px
    }
}

.HeaderLocations--close {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    height: 80px;
    width: 80px;
    padding: 0 30px;
    right: 0;
    margin-left: auto;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1
}

.Header--inner.small .HeaderLocations--close {
    display: none
}

@media screen and (max-width:1000px) {
    .HeaderLocations--close {
        display: none
    }
}

.HeaderLocations--close:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    height: auto;
    border-bottom: none;
    left: 50%
}

.HeaderLocations--close:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    height: auto;
    border-bottom: none;
    left: 50%
}

html:not(.can-touch) .HeaderLocations--close:active:after,
html:not(.can-touch) .HeaderLocations--close:hover:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(-45deg);
    transform: scale(1.1) rotate(-45deg)
}

html:not(.can-touch) .HeaderLocations--close:active:before,
html:not(.can-touch) .HeaderLocations--close:hover:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(45deg);
    transform: scale(1.1) rotate(45deg)
}

.HeaderLocations--content {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: -30px;
    margin-top: -30px;
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 400
}

.Header--inner.small .HeaderLocations--content {
    margin-top: 0
}

@media screen and (max-width:1000px) {
    .HeaderLocations--content {
        margin-top: 0
    }
}

.Header--inner.small .HeaderLocations--content {
    margin-right: 0
}

.Header--inner.small .HeaderLocations--content>* {
    padding-right: 0
}

@media screen and (max-width:750px) {
    .HeaderLocations--content {
        margin-right: 0
    }

    .HeaderLocations--content>* {
        padding-right: 0
    }
}

.HeaderLocations--controls {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 25%;
    margin-top: 30px;
    padding-right: 60px
}

@media(max-width:1430px) {
    .HeaderLocations--controls {
        padding-right: 30px
    }
}

.HeaderLocations--controls--link {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    position: relative;
    display: block;
    width: 100%;
    color: #636363;
    padding: 10px 1em 8px 0;
    transition: text-indent .2s cubic-bezier(.165, .84, .44, 1), color .2s cubic-bezier(.165, .84, .44, 1)
}

.HeaderLocations--controls--link>br {
    display: none
}

.HeaderLocations--controls--link[aria-selected=true],
.HeaderLocations--controls--link[aria-expanded=true] {
    color: #000
}

html:not(.can-touch) .HeaderLocations--controls--link:active,
html:not(.can-touch) .HeaderLocations--controls--link:hover {
    color: #000
}

.HeaderLocations--panel {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 50%;
    margin-top: 30px;
    padding-right: 30px
}

@media screen and (max-width:1200px) {
    .HeaderLocations--panel {
        width: 70%
    }
}

.HeaderLocations--countries {
    transition: opacity .5s cubic-bezier(.165, .84, .44, 1)
}

.HeaderLocations--countries[aria-hidden=true] {
    opacity: 0;
    visibility: hidden;
    height: 0;
    width: 0;
    overflow: hidden
}

.HeaderLocations--countries[aria-hidden=true]>.HeaderLocations--countries--inner {
    display: none
}

.HeaderLocations--countries--inner {}

@media screen and (min-width:751px) {
    .HeaderLocations--countries--inner {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        height: 320px;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-right: -30px
    }

    .HeaderLocations--countries--inner li {
        width: 50%;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        padding-right: 60px
    }
}

@media screen and (min-width:751px) and (max-width:1430px) {
    .HeaderLocations--countries--inner li {
        padding-right: 30px
    }
}

@media screen and (max-width:750px) {
    .HeaderLocations--countries--inner {
        margin-top: 0;
        margin-right: 0
    }
}

.HeaderLocations--link {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    padding-right: 1.5em;
    padding-top: 15px;
    padding-bottom: 13px;
    border-top: 1px solid #d4d4d4;
    border-bottom: 1px solid #d4d4d4;
    margin-top: -1px;
    width: 100%;
    color: #000;
    transition: text-indent .2s cubic-bezier(.165, .84, .44, 1), color .2s cubic-bezier(.165, .84, .44, 1)
}

.HeaderLocations--link .Icon {
    margin-right: 1em
}

.HeaderLocations--link.external {
    padding-right: 0
}

.HeaderLocations--link.external::after {
    right: auto;
    left: 0;
    opacity: 0
}

.HeaderLocations--link:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0) translateX(50%) rotate(135deg);
    transform: rotate(0) translateX(50%) rotate(135deg);
    left: 100%;
    margin-left: -5px
}

.HeaderLocations--link:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    left: 100%;
    margin-left: -5px
}

html:not(.can-touch) .HeaderLocations--link:active,
html:not(.can-touch) .HeaderLocations--link:hover {
    text-indent: 1em
}

html:not(.can-touch) .HeaderLocations--link:active::after,
html:not(.can-touch) .HeaderLocations--link:hover::after {
    -webkit-animation: subnav-link .3s cubic-bezier(.165, .84, .44, 1) forwards;
    animation: subnav-link .3s cubic-bezier(.165, .84, .44, 1) forwards
}

.HeaderLocations--link--text {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    line-height: 1.6
}

.HeaderLocations--link--text>br {
    display: none
}

.HeaderLocations--siteMarker {
    font-size: 10px;
    font-size: .625rem;
    font-weight: 400;
    color: #636363;
    text-transform: uppercase;
    letter-spacing: .1em;
    line-height: 1.2;
    width: 70px;
    width: 4.375rem;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    white-space: normal;
    text-indent: 0;
    margin-left: auto;
    float: right;
    padding-left: 10px;
    padding-right: 5px;
    border-left: 1px solid #d4d4d4
}

.HeaderLocations--footer {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 30px
}

.HeaderLocations--footer--link {
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 400;
    color: #636363;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-right: 30px
}

.HeaderLocations--footer--link>.Icon {
    margin-left: 1ex
}

.HeaderLocations--footer--link>.Icon>svg {
    fill: currentColor
}

.Header--inner.small .HeaderLocations--footer--link>.Icon {
    margin-right: 1rem
}

@media screen and (max-width:1000px) {
    .HeaderLocations--footer--link>.Icon {
        margin-right: 1rem
    }
}

.HeaderLocations--background {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 50%;
    height: 100%;
    z-index: -1;
    overflow: hidden
}

.HeaderLocations--background>.Media {
    height: 100%;
    background-position: bottom right;
    background-color: transparent;
    background-size: contain
}

.HeaderLocationsMobile {
    display: none
}

.Header--inner.small .HeaderLocationsMobile {
    display: inline-block
}

@media screen and (max-width:1000px) {
    .HeaderLocationsMobile {
        display: inline-block
    }
}

.HeaderLocationsMobile .HeaderLocations--link {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363;
    border: none;
    padding-top: 20px;
    padding-bottom: 16px
}

[lang=zh] .HeaderLocationsMobile .HeaderLocations--link,
[lang=zh-Hant] .HeaderLocationsMobile .HeaderLocations--link,
[lang=zh-Hans] .HeaderLocationsMobile .HeaderLocations--link,
[lang=zh-CN] .HeaderLocationsMobile .HeaderLocations--link {
    line-height: 1.5
}

.HeaderLocationsMobile .HeaderLocations--footer--link {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #000;
    margin-right: 0;
    padding: 20px 30px 16px;
    width: 100%;
    background-color: #fff
}

[lang=zh] .HeaderLocationsMobile .HeaderLocations--footer--link,
[lang=zh-Hant] .HeaderLocationsMobile .HeaderLocations--footer--link,
[lang=zh-Hans] .HeaderLocationsMobile .HeaderLocations--footer--link,
[lang=zh-CN] .HeaderLocationsMobile .HeaderLocations--footer--link {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .HeaderLocationsMobile .HeaderLocations--footer--link {
        padding-left: 26px;
        padding-right: 26px
    }
}

.HeaderLocationsMobile .HeaderLocations--footer--link>.Icon {
    margin-left: auto;
    margin-right: 0
}

.HeaderLocationsMobile--listing {
    padding-left: 30px;
    padding-right: 30px
}

.HeaderLocationsMobile--listing>ul {
    padding-bottom: 30px
}

@media screen and (max-width:750px) {
    .HeaderLocationsMobile--listing {
        padding-left: 26px;
        padding-right: 26px
    }
}

.HeaderLocationsMobile--listing[data-hidden=true]>* {
    display: none
}

.HeaderLocationsMobile--listing[data-hidden=false] {
    background-color: #fff
}

.HeaderLocationsMobile--linkList--link {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363;
    transition: color .2s ease-out;
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 20px 1em 18px
}

[lang=zh] .HeaderLocationsMobile--linkList--link,
[lang=zh-Hant] .HeaderLocationsMobile--linkList--link,
[lang=zh-Hans] .HeaderLocationsMobile--linkList--link,
[lang=zh-CN] .HeaderLocationsMobile--linkList--link {
    line-height: 1.5
}

.HeaderLocationsMobile--linkList--link:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
    transform: rotate(90deg) translateX(50%) rotate(135deg);
    display: inline-block;
    vertical-align: middle;
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s, -webkit-transform .2s;
    margin-left: 8px;
    margin-right: -2px;
    right: 0;
    margin-right: 30px
}

@media screen and (max-width:750px) {
    .HeaderLocationsMobile--linkList--link:after {
        margin-right: 26px
    }
}

.HeaderLocationsMobile--linkList--link:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    display: inline-block;
    vertical-align: middle;
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s, -webkit-transform .2s;
    margin-left: 8px;
    margin-right: -2px;
    right: 0;
    margin-right: 30px
}

@media screen and (max-width:750px) {
    .HeaderLocationsMobile--linkList--link:before {
        margin-right: 26px
    }
}

.HeaderLocationsMobile--linkList--link[aria-expanded=true] {
    background-color: #fff;
    color: #000
}

.HeaderLocationsMobile--linkList--link[aria-expanded=true]:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg);
    right: 0;
    margin-right: 30px
}

@media screen and (max-width:750px) {
    .HeaderLocationsMobile--linkList--link[aria-expanded=true]:after {
        margin-right: 26px
    }
}

.HeaderLocationsMobile--linkList--link[aria-expanded=true]:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    right: 0;
    margin-right: 30px
}

@media screen and (max-width:750px) {
    .HeaderLocationsMobile--linkList--link[aria-expanded=true]:before {
        margin-right: 26px
    }
}

html:not(.can-touch) .HeaderLocationsMobile--linkList--link:active,
html:not(.can-touch) .HeaderLocationsMobile--linkList--link:hover {
    color: #000
}

.Header--inner.small .HeaderLocationsMobile--linkList--link {
    padding: 20px 30px 18px
}

@media screen and (max-width:1000px) {
    .HeaderLocationsMobile--linkList--link {
        padding: 20px 30px 18px
    }
}

.Header--inner.small .HeaderLocationsMobile--linkList--link {
    padding: 20px 26px 18px
}

@media screen and (max-width:750px) {
    .HeaderLocationsMobile--linkList--link {
        padding: 20px 26px 18px
    }
}

.Identifier {
    font-size: 12px;
    font-size: .75rem;
    font-weight: 400;
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-left: 2em;
    text-transform: uppercase;
    letter-spacing: .1em;
    line-height: 1.2
}

.Identifier::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: 13px 0;
    border-left: 1px solid #d4d4d4
}

.Header--inner.small .Identifier {
    padding-left: 0
}

.Header--inner.small .Identifier::before {
    content: none
}

@media screen and (max-width:1000px) {
    .Identifier {
        padding-left: 0
    }

    .Identifier::before {
        content: none
    }
}

.Identifier--label {
    color: #636363
}

.LanguageSwitcher {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375
}

[lang=zh] .LanguageSwitcher,
[lang=zh-Hant] .LanguageSwitcher,
[lang=zh-Hans] .LanguageSwitcher,
[lang=zh-CN] .LanguageSwitcher {
    line-height: 1.5
}

.LanguageSwitcher .Flyout--content--inner {
    max-width: 220px
}

@media screen and (max-width:750px) {
    .LanguageSwitcher .Flyout--content--inner {
        width: calc(100vw - 40px);
        max-width: none
    }
}

.LanguageSwitcher--button {
    overflow: visible
}

.LanguageSwitcher--button .Icon {
    margin-right: 5px
}

.LanguageSwitcher--button svg {
    fill: currentColor;
    top: 50%
}

@media screen and (max-width:750px) {
    .LanguageSwitcher--button {
        font-size: 14px;
        font-size: .875rem;
        font-weight: 400;
        line-height: 1.4
    }

    [lang=zh] .LanguageSwitcher--button,
    [lang=zh-Hant] .LanguageSwitcher--button,
    [lang=zh-Hans] .LanguageSwitcher--button,
    [lang=zh-CN] .LanguageSwitcher--button {
        line-height: 1.5
    }
}

.LanguageSwitcher--item+.LanguageSwitcher--item {
    border-top: 1px solid #d4d4d4
}

.LanguageSwitcher--link {
    color: #636363;
    display: block;
    padding: 20px 30px 18px;
    transition: color .2s cubic-bezier(.39, .575, .565, 1)
}

html:not(.can-touch) .LanguageSwitcher--link:active,
html:not(.can-touch) .LanguageSwitcher--link:hover {
    color: #000
}

.Logo {
    display: block;
    height: 45px;
}

.Logo>img {
    height: 100%;
    width: auto;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center left;
    object-position: center left;
    display: block
}

@media screen and (max-width:1382px) {
    .Logo {
        height: 35px
    }
}

.Header--inner.small .Logo {
    height: 38px
}

@media screen and (max-width:1000px) {
    .Logo {
        height: 38px
    }
}

@media screen and (max-width:400px) {
    .Logo {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center
    }

    .Logo>img {
        width: 100%
    }
}

.Notification {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    padding-left: 30px;
    padding-right: 30px;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    padding-top: 15px;
    padding-bottom: 15px;
    background-color: #fff;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    z-index: 999999;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

[lang=zh] .Notification,
[lang=zh-Hant] .Notification,
[lang=zh-Hans] .Notification,
[lang=zh-CN] .Notification {
    line-height: 1.5
}

@media screen and (max-width:580px) {
    .Notification {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media screen and (max-width:750px) {
    .Notification {
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.Notification:not(.is-open) {
    display: none
}

.Notification.is-open {
    -webkit-animation: notification-in .5s 1 forwards;
    animation: notification-in .5s 1 forwards
}

.Notification.is-closed {
    -webkit-animation: notification-out .5s 1 forwards;
    animation: notification-out .5s 1 forwards
}

.Notification--content {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 15px
}

@media(max-width:1430px) {
    .Notification--content {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .Notification--content {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .Notification--content {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .Notification--content {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .Notification--content {
        max-width: 100%;
        margin: 0
    }
}

@media(max-width:1430px) {
    .Notification--content {
        padding-left: 0;
        padding-top: 0;
        padding-bottom: 0
    }
}

@media screen and (max-width:750px) {
    .Notification--content {
        width: 100%;
        margin-bottom: .5em;
        padding-right: 0
    }
}

.Notification--close {
    margin-left: auto;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

@media screen and (max-width:750px) {
    .Notification--close {
        margin: 0 auto
    }

    .Notification--close.Button {
        height: 35px;
        padding: 7px 19px 8px;
        height: 2.1875rem;
        padding: .4375rem 1.1875rem .5rem
    }
}

@-webkit-keyframes notification-in {
    0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%)
    }

    100% {
        -webkit-transform: none;
        transform: none
    }
}

@keyframes notification-in {
    0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%)
    }

    100% {
        -webkit-transform: none;
        transform: none
    }
}

@-webkit-keyframes notification-out {
    0% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }

    50% {
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
        opacity: 0
    }
}

@keyframes notification-out {
    0% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }

    50% {
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
        opacity: 0
    }
}

.ScrollToTop {
    position: fixed;
    bottom: 30px;
    right: 0;
    margin-right: 30px;
    z-index: 9;
    background-color: rgba(255, 255, 255, .75);
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, .22);
    transition: visibility .2s, opacity .2s, -webkit-transform .2s;
    transition: visibility .2s, opacity .2s, transform .2s;
    transition: visibility .2s, opacity .2s, transform .2s, -webkit-transform .2s;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: scale(.65) translateY(50%);
    transform: scale(.65) translateY(50%)
}

@media screen and (max-width:750px) {
    .ScrollToTop {
        margin-right: 10px
    }
}

.ScrollToTop.is-notTop {
    transition: -webkit-transform .1s ease-in-out;
    transition: transform .1s ease-in-out;
    transition: transform .1s ease-in-out, -webkit-transform .1s ease-in-out;
    visibility: visible;
    opacity: 1;
    -webkit-transform: none;
    transform: none
}

.ScrollToTop::before {
    transition: border-color .2s cubic-bezier(.39, .575, .565, 1), background-color .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1) !important;
    transition: border-color .2s cubic-bezier(.39, .575, .565, 1), background-color .2s cubic-bezier(.39, .575, .565, 1), transform .2s cubic-bezier(.39, .575, .565, 1) !important;
    transition: border-color .2s cubic-bezier(.39, .575, .565, 1), background-color .2s cubic-bezier(.39, .575, .565, 1), transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1) !important
}

html:not(.can-touch) .ScrollToTop:active,
html:not(.can-touch) .ScrollToTop:hover {
    color: #fff !important;
    box-shadow: 0 0 4px 0 #cce2e360
}

html:not(.can-touch) .ScrollToTop:active::before,
html:not(.can-touch) .ScrollToTop:hover::before {
    background-color: #223362 !important;
    border-color: #338b8f !important;
    transition: border-color .2s cubic-bezier(.39, .575, .565, 1), background-color .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1) !important;
    transition: border-color .2s cubic-bezier(.39, .575, .565, 1), background-color .2s cubic-bezier(.39, .575, .565, 1), transform .2s cubic-bezier(.39, .575, .565, 1) !important;
    transition: border-color .2s cubic-bezier(.39, .575, .565, 1), background-color .2s cubic-bezier(.39, .575, .565, 1), transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1) !important
}

html:not(.can-touch) .ScrollToTop:active .Icon,
html:not(.can-touch) .ScrollToTop:hover .Icon {
    -webkit-animation: ScrollToTop--arrow 1.2s cubic-bezier(.445, .05, .55, .95) infinite;
    animation: ScrollToTop--arrow 1.2s cubic-bezier(.445, .05, .55, .95) infinite
}

.ScrollToTop:active {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    transition: .1s -webkit-transform ease-in-out;
    transition: .1s transform ease-in-out;
    transition: .1s transform ease-in-out, .1s -webkit-transform ease-in-out
}

@-webkit-keyframes ScrollToTop--arrow {
    0% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }

    10% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }

    35% {
        opacity: 0
    }

    50% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    50.0001% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }

    65% {
        opacity: 0
    }

    90% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }

    100% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

@keyframes ScrollToTop--arrow {
    0% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }

    10% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }

    35% {
        opacity: 0
    }

    50% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    50.0001% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }

    65% {
        opacity: 0
    }

    90% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }

    100% {
        -webkit-transform: none;
        transform: none;
        opacity: 1
    }
}

.Search {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    background-color: #fff;
    z-index: 1
}

.Search:after {
    display: block;
    content: "";
    clear: both
}

.Search:not(.is-expanded) {
    width: 0
}

.Search:not(.is-expanded)>* {
    display: none
}

.Search--open,
.Search--close {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    height: 80px;
    width: 80px;
    padding: 0 30px;
    right: 0;
    margin-left: auto;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.Search--open::before,
.Search--close::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: 13px 0;
    border-left: 1px solid #d4d4d4
}

.Header--inner.small .Search--open::before,
.Header--inner.small .Search--close::before {
    content: none
}

@media screen and (max-width:1000px) {

    .Search--open::before,
    .Search--close::before {
        content: none
    }
}

.Search--open[aria-expanded=true],
.Search--close[aria-expanded=true] {
    border-color: #d4d4d4
}

@media screen and (max-width:1382px) {

    .Search--open,
    .Search--close {
        width: 70px;
        height: 70px
    }
}

.Header--inner.small .Search--open,
.Header--inner.small .Search--close {
    width: auto;
    height: 80px;
    padding-left: 20px
}

@media screen and (max-width:1000px) {

    .Search--open,
    .Search--close {
        width: auto;
        height: 80px;
        padding-left: 20px
    }
}

.Header--inner.small .Search--open {
    padding-left: 10px;
    padding-right: 10px
}

@media screen and (max-width:1000px) {
    .Search--open {
        padding-left: 10px;
        padding-right: 10px
    }
}

html:not(.can-touch) .Search--open:active .Icon,
html:not(.can-touch) .Search--open:hover .Icon {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

.Search--open .Icon {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transform-origin: center center;
    transform-origin: center center;
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

html:not(.can-touch) .Search--close:active .Icon:after,
html:not(.can-touch) .Search--close:hover .Icon:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(-45deg);
    transform: scale(1.1) rotate(-45deg)
}

html:not(.can-touch) .Search--close:active .Icon:before,
html:not(.can-touch) .Search--close:hover .Icon:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(45deg);
    transform: scale(1.1) rotate(45deg)
}

@media screen and (max-width:750px) {
    .Search--close {
        padding-left: 20px;
        padding-right: 26px
    }
}

.Search--panel {
    height: 80px;
    width: 100%;
    white-space: nowrap;
    float: right;
    position: relative
}

@media screen and (max-width:1382px) {
    .Search--panel {
        height: 70px
    }
}

.Header--inner.small .Search--panel {
    height: 80px
}

@media screen and (max-width:1000px) {
    .Search--panel {
        height: 80px
    }
}

.Search--panel--inner {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    transition: width .2s ease-out
}

.Search--form {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    max-width: 100%;
    background-color: #fff;
    border-radius: 4px
}

.Search--form>.Autocomplete--flyout {
    left: 0;
    top: 100%;
    margin-top: -5px;
    padding-top: 10px;
    padding-bottom: 30px;
    z-index: -1;
    border-radius: 0;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px
}

.Search--form .Autocomplete--suggestions {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 200;
    color: #3c4150
}

.Search--form .Autocomplete--suggestions>li {
    border: none;
    padding: 15px 30px
}

.Search--form .Autocomplete--suggestions>li:hover,
.Search--form .Autocomplete--suggestions>li.is-selected {
    background: #f9f9fa;
    color: #223362
}

.Search--form--icon {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 80px;
    width: 80px;
    padding: 0 30px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

@media screen and (max-width:1382px) {
    .Search--form--icon {
        height: 70px;
        width: 70px
    }
}

.Header--inner.small .Search--form--icon {
    padding: 0 20px;
    width: 60px;
    height: 80px
}

@media screen and (max-width:1000px) {
    .Search--form--icon {
        padding: 0 20px;
        width: 60px;
        height: 80px
    }
}

.Search--form--input {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    border: none;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

[lang=zh] .Search--form--input,
[lang=zh-Hant] .Search--form--input,
[lang=zh-Hans] .Search--form--input,
[lang=zh-CN] .Search--form--input {
    line-height: 1.5
}

.Search--form--input>br {
    display: none
}

.Search--form--input::-ms-clear {
    display: none
}

.Header--inner.small .Search--form--input {
    padding-left: 0;
    width: 100%
}

@media screen and (max-width:1000px) {
    .Search--form--input {
        padding-left: 0;
        width: 100%
    }
}

.Search--form--input::-webkit-input-placeholder {
    color: #636363
}

.Search--form--input::-moz-placeholder {
    color: #636363
}

.Search--form--input:-ms-input-placeholder {
    color: #636363
}

.Search--form--input:-moz-placeholder {
    color: #636363
}

.Search--form--placeholderPolyfill {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 85px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    pointer-events: none
}

[lang=zh] .Search--form--placeholderPolyfill,
[lang=zh-Hant] .Search--form--placeholderPolyfill,
[lang=zh-Hans] .Search--form--placeholderPolyfill,
[lang=zh-CN] .Search--form--placeholderPolyfill {
    line-height: 1.5
}

@media screen and (max-width:1382px) {
    .Search--form--placeholderPolyfill {
        left: 75px
    }
}

.Header--inner.small .Search--form--placeholderPolyfill {
    left: 60px
}

@media screen and (max-width:1000px) {
    .Search--form--placeholderPolyfill {
        left: 60px
    }
}

@supports(display:flex) {
    .Search--form--placeholderPolyfill {
        display: none
    }
}

.Search--submit {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    overflow: hidden;
    width: 1px;
    height: 1px
}

.Search--submit:focus,
.Search--submit.is-visuallyvisible {
    position: static !important;
    clip: auto !important;
    -webkit-clip-path: none !important;
    clip-path: none !important;
    overflow: visible;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #223362;
    height: 100%;
    width: auto;
    display: block;
    padding-right: 1em;
    margin-right: 1.5em
}

[lang=zh] .Search--submit:focus,
[lang=zh-Hant] .Search--submit:focus,
[lang=zh-Hans] .Search--submit:focus,
[lang=zh-CN] .Search--submit:focus,
[lang=zh] .Search--submit.is-visuallyvisible,
[lang=zh-Hant] .Search--submit.is-visuallyvisible,
[lang=zh-Hans] .Search--submit.is-visuallyvisible,
[lang=zh-CN] .Search--submit.is-visuallyvisible {
    line-height: 1.5
}

.Search--submit:focus:after,
.Search--submit.is-visuallyvisible:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0) translateX(50%) rotate(135deg);
    transform: rotate(0) translateX(50%) rotate(135deg);
    margin-left: 10px
}

.Search--submit:focus:before,
.Search--submit.is-visuallyvisible:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    margin-left: 10px
}

@media screen and (max-width:750px) {

    .Search--submit:focus,
    .Search--submit.is-visuallyvisible {
        position: absolute !important;
        clip: rect(1px, 1px, 1px, 1px) !important;
        overflow: hidden;
        width: 1px;
        height: 1px
    }
}

.Header--inner.small .ServiceNav {
    width: 100%
}

@media screen and (max-width:1000px) {
    .ServiceNav {
        width: 100%
    }
}

.ServiceNav--list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.ServiceNav--list:after {
    display: block;
    content: "";
    clear: both
}

.ServiceNav--list>li {
    float: left;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.Header--inner.small .ServiceNav--list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.Header--inner.small .ServiceNav--list>li {
    float: none;
    width: 100%
}

@media screen and (max-width:1000px) {
    .ServiceNav--list {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .ServiceNav--list>li {
        float: none;
        width: 100%
    }
}

.ServiceNav--link {
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 400;
    color: #636363;
    position: relative;
    display: block;
    padding: 0 15px;
    line-height: 80px;
    color: #636363;
    transition: color .2s ease-out
}

.ServiceNav--link>.Icon {
    margin-right: 1ex
}

.ServiceNav--link>.Icon>svg {
    fill: currentColor
}

.Header--inner.small .ServiceNav--link>.Icon {
    margin-right: 1rem
}

@media screen and (max-width:1000px) {
    .ServiceNav--link>.Icon {
        margin-right: 1rem
    }
}

.ServiceNav--link .ServiceNav--link--text>abbr {
    border-bottom: none
}

html:not(.can-touch) .ServiceNav--link:active,
html:not(.can-touch) .ServiceNav--link:hover {
    color: #000
}

@media screen and (max-width:1382px) {
    .ServiceNav--link {
        width: 70px;
        line-height: 70px;
        text-align: center
    }

    .ServiceNav--link:not(.Flyout--trigger) .ServiceNav--link--text {
        position: absolute !important;
        clip: rect(1px, 1px, 1px, 1px) !important;
        overflow: hidden;
        width: 1px;
        height: 1px
    }

    html:not(.can-touch) .ServiceNav--link:not(.Flyout--trigger):active .ServiceNav--link--text,
    html:not(.can-touch) .ServiceNav--link:not(.Flyout--trigger):hover .ServiceNav--link--text {
        position: static !important;
        clip: auto !important;
        -webkit-clip-path: none !important;
        clip-path: none !important;
        overflow: visible;
        width: auto;
        height: auto;
        position: absolute !important;
        top: 100%;
        left: 50%;
        padding: 15px 20px;
        margin-top: 20px;
        background-color: #3c4150;
        border-radius: 4px;
        white-space: nowrap;
        color: #fff;
        line-height: 1;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
        z-index: 9
    }

    html:not(.can-touch) .ServiceNav--link:not(.Flyout--trigger):active .ServiceNav--link--text:before,
    html:not(.can-touch) .ServiceNav--link:not(.Flyout--trigger):hover .ServiceNav--link--text:before {
        content: '';
        height: 15px;
        width: 15px;
        background-color: #3c4150;
        position: absolute;
        top: 0;
        left: 50%;
        margin-left: -4px;
        -webkit-transform: translate(-50%, -50%) rotate(-45deg);
        transform: translate(-50%, -50%) rotate(-45deg);
        -webkit-clip-path: polygon(0% 0%, 100% 100%, 100% 0%);
        clip-path: polygon(0% 0%, 100% 100%, 100% 0%);
        z-index: 1
    }
}

.Header--inner.small .ServiceNav--link {
    width: 100%;
    padding: 0 30px;
    line-height: 60px;
    text-align: left;
    border-top: 1px solid #d4d4d4
}

.Header--inner.small .ServiceNav--link .ServiceNav--link--text+.Icon {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    margin-right: 27px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.Header--inner.small .ServiceNav--link:not(.Flyout--trigger) .ServiceNav--link--text {
    position: static !important;
    clip: auto !important;
    -webkit-clip-path: none !important;
    clip-path: none !important;
    overflow: visible;
    width: auto;
    height: auto
}

html:not(.can-touch) .Header--inner.small .ServiceNav--link:not(.Flyout--trigger):active .ServiceNav--link--text,
html:not(.can-touch) .Header--inner.small .ServiceNav--link:not(.Flyout--trigger):hover .ServiceNav--link--text {
    position: static !important;
    clip: auto !important;
    -webkit-clip-path: none !important;
    clip-path: none !important;
    overflow: visible;
    width: auto;
    height: auto;
    padding: 0;
    margin-top: 0;
    background-color: transparent;
    border-radius: 0;
    white-space: nowrap;
    color: #3c4150;
    line-height: 1;
    -webkit-transform: none;
    transform: none;
    box-shadow: none;
    z-index: 0
}

html:not(.can-touch) .Header--inner.small .ServiceNav--link:not(.Flyout--trigger):active .ServiceNav--link--text:before,
html:not(.can-touch) .Header--inner.small .ServiceNav--link:not(.Flyout--trigger):hover .ServiceNav--link--text:before {
    content: none
}

@media screen and (max-width:1000px) {
    .ServiceNav--link {
        width: 100%;
        padding: 0 30px;
        line-height: 60px;
        text-align: left;
        border-top: 1px solid #d4d4d4
    }

    .ServiceNav--link .ServiceNav--link--text+.Icon {
        position: absolute;
        top: 50%;
        right: 0;
        display: block;
        margin-right: 27px;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }

    .ServiceNav--link:not(.Flyout--trigger) .ServiceNav--link--text {
        position: static !important;
        clip: auto !important;
        -webkit-clip-path: none !important;
        clip-path: none !important;
        overflow: visible;
        width: auto;
        height: auto
    }

    html:not(.can-touch) .ServiceNav--link:not(.Flyout--trigger):active .ServiceNav--link--text,
    html:not(.can-touch) .ServiceNav--link:not(.Flyout--trigger):hover .ServiceNav--link--text {
        position: static !important;
        clip: auto !important;
        -webkit-clip-path: none !important;
        clip-path: none !important;
        overflow: visible;
        width: auto;
        height: auto;
        padding: 0;
        margin-top: 0;
        background-color: transparent;
        border-radius: 0;
        white-space: nowrap;
        color: #3c4150;
        line-height: 1;
        -webkit-transform: none;
        transform: none;
        box-shadow: none;
        z-index: 0
    }

    html:not(.can-touch) .ServiceNav--link:not(.Flyout--trigger):active .ServiceNav--link--text:before,
    html:not(.can-touch) .ServiceNav--link:not(.Flyout--trigger):hover .ServiceNav--link--text:before {
        content: none
    }
}

.Header--inner.small .ServiceNav--link {
    padding: 0 26px
}

.Header--inner.small .ServiceNav--link .ServiceNav--link--text.is-visible-tablet-portrait {
    display: inline !important
}

.Header--inner.small .ServiceNav--link .ServiceNav--link--text+.Icon {
    margin-right: 22px
}

@media screen and (max-width:750px) {
    .ServiceNav--link {
        padding: 0 26px
    }

    .ServiceNav--link .ServiceNav--link--text.is-visible-tablet-portrait {
        display: inline !important
    }

    .ServiceNav--link .ServiceNav--link--text+.Icon {
        margin-right: 22px
    }
}

.ServiceNav--dropdown .Flyout--trigger {
    display: block
}

.ServiceNav--dropdown .Flyout--trigger:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
    transform: rotate(90deg) translateX(50%) rotate(135deg);
    display: inline-block;
    vertical-align: middle;
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s, -webkit-transform .2s;
    margin-left: 8px;
    margin-right: -2px;
    right: 0
}

.ServiceNav--dropdown .Flyout--trigger:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    display: inline-block;
    vertical-align: middle;
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s, -webkit-transform .2s;
    margin-left: 8px;
    margin-right: -2px;
    right: 0
}

.ServiceNav--dropdown .Flyout--trigger[aria-expanded=true]:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg)
}

.ServiceNav--dropdown .Flyout--trigger[aria-expanded=true]:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.ServiceNav--dropdown .Flyout--trigger:not(.has-icon)::after {
    position: relative;
    top: 2px
}

.ServiceNav--dropdown .Flyout--content--inner {
    max-width: 220px
}

.Header--inner.small .ServiceNav--dropdown {
    width: 100%
}

.Header--inner.small .ServiceNav--dropdown .Flyout--trigger {
    transition: background-color .2s ease-out
}

.Header--inner.small .ServiceNav--dropdown .Flyout--trigger:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
    transform: rotate(90deg) translateX(50%) rotate(135deg);
    right: 0;
    margin-right: 30px
}

.Header--inner.small .ServiceNav--dropdown .Flyout--trigger:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    right: 0;
    margin-right: 30px
}

.Header--inner.small .ServiceNav--dropdown .Flyout--trigger[aria-expanded=true] {
    color: #000;
    background-color: #f9f9fa;
    border-bottom: 1px solid #d4d4d4
}

.Header--inner.small .ServiceNav--dropdown .Flyout--trigger[aria-expanded=true]:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg)
}

.Header--inner.small .ServiceNav--dropdown .Flyout--trigger[aria-expanded=true]:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.Header--inner.small .ServiceNav--dropdown .Flyout--content {
    position: static;
    -webkit-transform: none;
    transform: none;
    width: 100%;
    max-width: 100%;
    margin-top: 0;
    transition: background-color .2s ease-out
}

.Header--inner.small .ServiceNav--dropdown .Flyout--content.is-expanded {
    background-color: #f9f9fa;
    margin-top: 0
}

.Header--inner.small .ServiceNav--dropdown .Flyout--content:before {
    content: none
}

.Header--inner.small .ServiceNav--dropdown .Flyout--content--inner {
    position: relative;
    content: "selfalign:none";
    width: 100%;
    background-color: transparent;
    box-shadow: none;
    max-width: none;
    -webkit-transform: none;
    transform: none
}

.Header--inner.small .ServiceNav--dropdown .Flyout--content--inner::after {
    content: "selfalign:none";
    display: none
}

@media screen and (max-width:1000px) {
    .ServiceNav--dropdown {
        width: 100%
    }

    .ServiceNav--dropdown .Flyout--trigger {
        transition: background-color .2s ease-out
    }

    .ServiceNav--dropdown .Flyout--trigger:after {
        content: "";
        position: absolute;
        font-size: 10px;
        top: 50%;
        width: .585em;
        height: .585em;
        border-width: 1px;
        border-style: solid none none solid;
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
        transform: rotate(90deg) translateX(50%) rotate(135deg);
        right: 0;
        margin-right: 30px
    }

    .ServiceNav--dropdown .Flyout--trigger:before {
        content: "";
        position: absolute;
        font-size: 10px;
        top: 50%;
        content: none;
        right: 0;
        margin-right: 30px
    }

    .ServiceNav--dropdown .Flyout--trigger[aria-expanded=true] {
        color: #000;
        background-color: #f9f9fa;
        border-bottom: 1px solid #d4d4d4
    }

    .ServiceNav--dropdown .Flyout--trigger[aria-expanded=true]:after {
        content: "";
        position: absolute;
        font-size: 10px;
        top: 50%;
        width: .585em;
        height: .585em;
        border-width: 1px;
        border-style: solid none none solid;
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
        transform: rotate(-90deg) translateX(50%) rotate(135deg)
    }

    .ServiceNav--dropdown .Flyout--trigger[aria-expanded=true]:before {
        content: "";
        position: absolute;
        font-size: 10px;
        top: 50%;
        content: none
    }

    .ServiceNav--dropdown .Flyout--content {
        position: static;
        -webkit-transform: none;
        transform: none;
        width: 100%;
        max-width: 100%;
        margin-top: 0;
        transition: background-color .2s ease-out
    }

    .ServiceNav--dropdown .Flyout--content.is-expanded {
        background-color: #f9f9fa;
        margin-top: 0
    }

    .ServiceNav--dropdown .Flyout--content:before {
        content: none
    }

    .ServiceNav--dropdown .Flyout--content--inner {
        position: relative;
        content: "selfalign:none";
        width: 100%;
        background-color: transparent;
        box-shadow: none;
        max-width: none;
        -webkit-transform: none;
        transform: none
    }

    .ServiceNav--dropdown .Flyout--content--inner::after {
        content: "selfalign:none";
        display: none
    }
}

.Header--inner.small .ServiceNav--dropdown .Flyout--trigger::after {
    margin-right: 26px
}

@media screen and (max-width:750px) {
    .ServiceNav--dropdown .Flyout--trigger::after {
        margin-right: 26px
    }
}

.Header--inner.small .ServiceNav--linkList .Listing--item {
    border-bottom: none
}

@media screen and (max-width:1000px) {
    .ServiceNav--linkList .Listing--item {
        border-bottom: none
    }
}

.ServiceNav--linkList--link {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363;
    transition: color .2s cubic-bezier(.39, .575, .565, 1);
    display: inline-block;
    width: 100%;
    padding: 20px 1em 18px
}

[lang=zh] .ServiceNav--linkList--link,
[lang=zh-Hant] .ServiceNav--linkList--link,
[lang=zh-Hans] .ServiceNav--linkList--link,
[lang=zh-CN] .ServiceNav--linkList--link {
    line-height: 1.5
}

html:not(.can-touch) .ServiceNav--linkList--link:active,
html:not(.can-touch) .ServiceNav--linkList--link:hover {
    color: #000
}

.Header--inner.small .ServiceNav--linkList--link {
    padding: 20px 30px 18px
}

@media screen and (max-width:1000px) {
    .ServiceNav--linkList--link {
        padding: 20px 30px 18px
    }
}

.Header--inner.small .ServiceNav--linkList--link {
    padding: 20px 26px 18px
}

@media screen and (max-width:750px) {
    .ServiceNav--linkList--link {
        padding: 20px 26px 18px
    }
}

.StickyProfileLogin {
    position: fixed;
    bottom: 90px;
    right: 0;
    margin-right: 30px;
    background: #223362;
    border-radius: 100px;
    z-index: 9;
    transition: visibility .2s, opacity .2s, -webkit-transform .2s;
    transition: visibility .2s, opacity .2s, transform .2s;
    transition: visibility .2s, opacity .2s, transform .2s, -webkit-transform .2s;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: scale(.65) translateY(50%);
    transform: scale(.65) translateY(50%)
}

@media screen and (max-width:750px) {
    .StickyProfileLogin {
        margin-right: 10px
    }
}

.StickyProfileLogin.is-notTop {
    transition: -webkit-transform .1s ease-in-out;
    transition: transform .1s ease-in-out;
    transition: transform .1s ease-in-out, -webkit-transform .1s ease-in-out;
    visibility: visible;
    opacity: 1;
    -webkit-transform: none;
    transform: none
}

.StickyProfileLogin--button {
    color: #fff;
    box-shadow: 0 0 4px 0 #cce2e360
}

.StickyProfileLogin--button::before {
    border-color: #338b8f;
    background-color: #223362
}

.StickyProfileLogin--button:hover,
.StickyProfileLogin--button:active,
.StickyProfileLogin--button:focus {
    color: #fff !important
}

.StickyProfileLogin--button:hover:before,
.StickyProfileLogin--button:active:before,
.StickyProfileLogin--button:focus:before {
    border-color: #338b8f !important;
    -webkit-transform: scale(1.101, 1.101);
    transform: scale(1.101, 1.101)
}

.StickyProfileLogin--link {
    position: absolute;
    z-index: -1;
    right: 1px;
    top: 0;
    height: 100%;
    padding-right: 50px;
    color: #fff;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease-in-out, visibility 0s .2s
}

.StickyProfileLogin--link:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid #338b8f;
    border-radius: 100px;
    background: #223362;
    transition: -webkit-transform .2s ease-in-out;
    transition: transform .2s ease-in-out;
    transition: transform .2s ease-in-out, -webkit-transform .2s ease-in-out
}

.StickyProfileLogin--link>.Link {
    padding: .875em 1.25em;
    color: inherit;
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
    transition: -webkit-transform .2s ease-in-out;
    transition: transform .2s ease-in-out;
    transition: transform .2s ease-in-out, -webkit-transform .2s ease-in-out
}

.StickyProfileLogin--button:hover .StickyProfileLogin--link,
.StickyProfileLogin--button:active .StickyProfileLogin--link,
.StickyProfileLogin--button:focus .StickyProfileLogin--link {
    opacity: 1;
    visibility: unset;
    transition-delay: 0s, 0s
}

.StickyProfileLogin--button:hover .StickyProfileLogin--link:before,
.StickyProfileLogin--button:active .StickyProfileLogin--link:before,
.StickyProfileLogin--button:focus .StickyProfileLogin--link:before {
    -webkit-transform: scale(1.02, 1.101);
    transform: scale(1.02, 1.101);
    border-color: #338b8f
}

.StickyProfileLogin--button:hover .StickyProfileLogin--link>.Link,
.StickyProfileLogin--button:active .StickyProfileLogin--link>.Link,
.StickyProfileLogin--button:focus .StickyProfileLogin--link>.Link {
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.UniversalNav {
    background-color: rgba(236, 236, 236, .7);
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    overflow: hidden
}

.Header--inner.small .UniversalNav {
    background-color: #ececee;
    border-radius: 4px;
    margin-bottom: 20px
}

@media screen and (max-width:1000px) {
    .UniversalNav {
        background-color: #ececee;
        border-radius: 4px;
        margin-bottom: 20px
    }
}

.UniversalNav--toggle {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    display: none;
    position: relative;
    width: 100%;
    padding: 0 30px;
    line-height: 42px;
    border-bottom: 1px solid transparent
}

.UniversalNav--toggle:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
    transform: rotate(90deg) translateX(50%) rotate(135deg);
    right: 0;
    margin-right: 2em;
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s, -webkit-transform .2s
}

.UniversalNav--toggle:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    right: 0;
    margin-right: 2em;
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s, -webkit-transform .2s
}

[lang=zh] .UniversalNav--toggle,
[lang=zh-Hant] .UniversalNav--toggle,
[lang=zh-Hans] .UniversalNav--toggle,
[lang=zh-CN] .UniversalNav--toggle {
    line-height: 1.5
}

.Header--inner.small .UniversalNav--toggle {
    display: inline-block
}

@media screen and (max-width:1000px) {
    .UniversalNav--toggle {
        display: inline-block
    }
}

.Header--inner.small .UniversalNav--toggle {
    padding: 0 26px
}

.Header--inner.small .UniversalNav--toggle::after {
    margin-right: 26px
}

@media screen and (max-width:750px) {
    .UniversalNav--toggle {
        padding: 0 26px
    }

    .UniversalNav--toggle::after {
        margin-right: 26px
    }
}

.UniversalNav--toggle::before {
    content: "";
    display: block;
    position: absolute;
    left: -30px;
    right: -30px;
    top: -30px;
    bottom: -22px;
    margin: 0;
    z-index: -1
}

@media screen and (max-width:580px) {
    .UniversalNav--toggle::before {
        left: -20px;
        right: -20px;
        top: -20px
    }
}

.UniversalNav--toggle .UniversalNav--toggle--open {
    display: inline-block
}

.UniversalNav--toggle .UniversalNav--toggle--close {
    display: none
}

.UniversalNav--toggle[aria-expanded=true] {
    border-color: #d4d4d4
}

.UniversalNav--toggle[aria-expanded=true]:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg)
}

.UniversalNav--toggle[aria-expanded=true]:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.UniversalNav--toggle[aria-expanded=true]::before {
    content: "";
    left: -30px;
    top: -30px
}

@media screen and (max-width:580px) {
    .UniversalNav--toggle[aria-expanded=true]::before {
        left: -20px;
        top: -20px
    }
}

.UniversalNav--toggle[aria-expanded=true] .UniversalNav--toggle--open {
    display: none
}

.UniversalNav--toggle[aria-expanded=true] .UniversalNav--toggle--close {
    display: inline-block
}

.UniversalNav--nav .FocusOnly {
    display: none
}

.Header--inner.small .UniversalNav--nav .FocusOnly {
    display: block
}

.Header--inner.small .UniversalNav--nav[data-hidden=true]>* {
    display: none
}

@media screen and (max-width:1000px) {
    .UniversalNav--nav .FocusOnly {
        display: block
    }

    .UniversalNav--nav[data-hidden=true]>* {
        display: none
    }
}

.UniversalNav--list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    overflow: auto
}

.UniversalNav--list:after {
    display: block;
    content: "";
    clear: both
}

.UniversalNav--list>li {
    float: left;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.Header--inner.small .UniversalNav--list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.Header--inner.small .UniversalNav--list>li {
    float: none;
    width: 100%
}

@media screen and (max-width:1000px) {
    .UniversalNav--list {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .UniversalNav--list>li {
        float: none;
        width: 100%
    }
}

.UniversalNav--link {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    display: block;
    padding: 0 28px;
    line-height: 45px;
    color: #3c4150;
    transition: background-color .2s ease-out
}

[lang=zh] .UniversalNav--link,
[lang=zh-Hant] .UniversalNav--link,
[lang=zh-Hans] .UniversalNav--link,
[lang=zh-CN] .UniversalNav--link {
    line-height: 1.5
}

.UniversalNav--link:hover {
    background-color: #fff
}

.UniversalNav--link.active {
    background-color: #fff
}

@media screen and (max-width:1382px) {
    .UniversalNav--link {
        line-height: 40px;
        padding: 0 20px
    }
}

.Header--inner.small .UniversalNav--link {
    line-height: 45px;
    padding: 0 30px
}

@media screen and (max-width:1000px) {
    .UniversalNav--link {
        line-height: 45px;
        padding: 0 30px
    }
}

.Header--inner.small .UniversalNav--link {
    padding: 0 26px
}

@media screen and (max-width:750px) {
    .UniversalNav--link {
        padding: 0 26px
    }
}

@media screen and (max-width:1000px) {
    html.is-filter-open {
        overflow: hidden;
        height: 100%
    }

    body.is-filter-open {
        overflow: hidden;
        position: fixed;
        width: 100%;
        top: 0;
        bottom: 0
    }
}

.Filter {
    position: relative;
    z-index: 9
}

@media screen and (max-width:1000px) {
    .Filter {
        position: static
    }
}

.Filter--mobileControls {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 20px
}

@media(max-width:1430px) {
    .Filter--mobileControls {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .Filter--mobileControls {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .Filter--mobileControls {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .Filter--mobileControls {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .Filter--mobileControls {
        max-width: 100%;
        margin: 0
    }
}

.Filter--mobileControls .Filter--clearAll {
    display: none;
    margin-left: auto
}

.Filter.has-selected-filters .Filter--mobileControls .Filter--clearAll {
    display: block
}

body.is-filter-open .Filter--mobileControls {
    display: none
}

@media screen and (max-width:1000px) {
    .Filter--flyout {
        position: fixed;
        z-index: 999999;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #fff;
        overflow: auto;
        transition: opacity .4s cubic-bezier(.165, .84, .44, 1), -webkit-transform .4s cubic-bezier(.165, .84, .44, 1);
        transition: transform .4s cubic-bezier(.165, .84, .44, 1), opacity .4s cubic-bezier(.165, .84, .44, 1);
        transition: transform .4s cubic-bezier(.165, .84, .44, 1), opacity .4s cubic-bezier(.165, .84, .44, 1), -webkit-transform .4s cubic-bezier(.165, .84, .44, 1);
        -webkit-transform-origin: center center;
        transform-origin: center center
    }

    .Filter--flyout.is-mobile-collapsed {
        display: none
    }

    .Filter--flyout:not(.is-mobile-expanded) {
        opacity: 0;
        -webkit-transform: scale(.95);
        transform: scale(.95);
        transition: -webkit-transform .1s ease-in;
        transition: transform .1s ease-in;
        transition: transform .1s ease-in, -webkit-transform .1s ease-in
    }

    .Filter--flyout.is-mobile-expanded {
        display: block
    }
}

@media screen and (min-width:1383px) {

    .FilterCard~.Filter--flyout .Filter--inner,
    .FilterCard~.Filter--flyout .FilterGroup--inner {
        padding-left: 40px;
        padding-right: 40px
    }
}

.Filter--inner {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    position: static
}

@media(max-width:1430px) {
    .Filter--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .Filter--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .Filter--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .Filter--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .Filter--inner {
        max-width: 100%;
        margin: 0
    }
}

.Filter--inner:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    z-index: 1;
    border-bottom: 1px solid #d4d4d4;
    opacity: 0
}

.Filter--inner.is-open:after {
    opacity: 1;
    transition: opacity .4s
}

.Filter--inner.is-open .Filter--background {
    visibility: visible;
    opacity: 1;
    max-height: none
}

.Filter--inner:not(.is-open) .Filter--background {
    height: 0 !important
}

@media screen and (max-width:1000px) {
    .Filter--inner {
        margin: 0
    }

    .Filter--inner:after {
        content: none
    }
}

.Filter--flyout--header {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    width: 100%;
    height: 60px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    border-bottom: 1px solid #d4d4d4
}

[lang=zh] .Filter--flyout--header,
[lang=zh-Hant] .Filter--flyout--header,
[lang=zh-Hans] .Filter--flyout--header,
[lang=zh-CN] .Filter--flyout--header {
    line-height: 1.5
}

.Filter--flyout--close {
    position: absolute;
    top: 0;
    left: auto;
    right: 0;
    width: 58px;
    height: 60px;
    cursor: pointer
}

.Filter--flyout--close:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.Filter--flyout--close:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.Filter--flyout--controls {
    padding-left: 30px;
    padding-right: 30px;
    position: fixed;
    top: auto;
    left: 0;
    bottom: 0;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    border-top: 1px solid #d4d4d4
}

@media screen and (max-width:580px) {
    .Filter--flyout--controls {
        padding-left: 20px;
        padding-right: 20px
    }
}

.Filter--flyout--controls .Filter--clearAll {
    margin-right: auto
}

@media screen and (max-width:400px) {
    .Filter--flyout--controls .Filter--clearAll .PictoText--text {
        position: absolute !important;
        clip: rect(1px, 1px, 1px, 1px) !important;
        overflow: hidden;
        width: 1px;
        height: 1px
    }
}

.Filter--groups {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 20px
}

.Filter--groups>* {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0
}

@media screen and (max-width:1000px) {
    .Filter--groups {
        display: block;
        padding: 0;
        margin-bottom: 71px
    }
}

.Filter--groups--clear {
    text-align: right;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s .4s, opacity .4s
}

.Filter.has-selected-filters .Filter--groups--clear,
.FilterGroup.has-active~.Filter--groups--clear {
    visibility: visible;
    opacity: 1;
    transition: visibility 0s, opacity .4s
}

.Filter--groups--submit {
    margin-left: 15px;
    text-align: right;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0
}

.Filter--clearAll {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    height: 100%;
    white-space: nowrap;
    padding: 14px 0;
    transition: color .2s cubic-bezier(.39, .575, .565, 1)
}

[lang=zh] .Filter--clearAll,
[lang=zh-Hant] .Filter--clearAll,
[lang=zh-Hans] .Filter--clearAll,
[lang=zh-CN] .Filter--clearAll {
    line-height: 1.5
}

html:not(.can-touch) .Filter--clearAll:active,
html:not(.can-touch) .Filter--clearAll:hover {
    color: #636363
}

@media screen and (max-width:1000px) {
    .Filter--clearAll {
        font-size: 14px;
        font-size: .875rem;
        font-weight: 400;
        line-height: 1.4
    }

    [lang=zh] .Filter--clearAll,
    [lang=zh-Hant] .Filter--clearAll,
    [lang=zh-Hans] .Filter--clearAll,
    [lang=zh-CN] .Filter--clearAll {
        line-height: 1.5
    }
}

.Filter--cancel {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    padding: 1em;
    margin-right: 5px
}

[lang=zh] .Filter--cancel,
[lang=zh-Hant] .Filter--cancel,
[lang=zh-Hans] .Filter--cancel,
[lang=zh-CN] .Filter--cancel {
    line-height: 1.5
}

.Filter--background {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .4);
    z-index: -1;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s, opacity .4s;
    max-height: 100vh
}

@media screen and (max-width:1000px) {
    .Filter--background {
        display: none
    }
}

.FilterCard {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    margin-bottom: 30px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2)
}

@media(max-width:1430px) {
    .FilterCard {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .FilterCard {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .FilterCard {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .FilterCard {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .FilterCard {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .FilterCard {
        margin-bottom: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .FilterCard {
        margin-bottom: 15px
    }
}

.FilterCard .FocusOnly {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1
}

.FilterCard--group {
    display: block;
    padding: 30px 40px
}

@media screen and (max-width:1000px) {
    .FilterCard--group {
        padding: 30px 20px
    }
}

.FilterCard .FilterCard--group {
    display: block
}

.FilterCard--group--fields {
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (max-width:1000px) {
    .FilterCard--group--fields {
        display: block
    }
}

.FilterCard--search {
    position: relative;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
}

@media screen and (max-width:1000px) {
    .FilterCard--search {
        margin-bottom: 10px
    }
}

.FilterCard--label {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    font-weight: 400 !important;
    display: block;
    margin-bottom: 2px;
    color: #223362
}

[lang=zh] .FilterCard--label,
[lang=zh-Hant] .FilterCard--label,
[lang=zh-Hans] .FilterCard--label,
[lang=zh-CN] .FilterCard--label {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .FilterCard--label {
        font-size: 14px;
        font-size: .875rem;
        font-weight: 400;
        line-height: 1.4
    }

    [lang=zh] .FilterCard--label,
    [lang=zh-Hant] .FilterCard--label,
    [lang=zh-Hans] .FilterCard--label,
    [lang=zh-CN] .FilterCard--label {
        line-height: 1.5
    }
}

.FilterCard--field {
    outline: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    width: 100%;
    border: none;
    background: 0 0;
    appearance: none;
    display: block;
    padding: 0 30px 0 0;
    border-radius: 0
}

.FilterCard--field:focus {
    outline: 0
}

[lang=zh] .FilterCard--field,
[lang=zh-Hant] .FilterCard--field,
[lang=zh-Hans] .FilterCard--field,
[lang=zh-CN] .FilterCard--field {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .FilterCard--field {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.FilterCard--field::-webkit-input-placeholder {
    color: #8a8d96;
    opacity: 1
}

.FilterCard--field:-ms-input-placeholder {
    color: #8a8d96;
    opacity: 1
}

.FilterCard--field::placeholder {
    color: #8a8d96;
    opacity: 1
}

.FilterCard--field::-ms-clear {
    display: none
}

@media screen and (max-width:1000px) {
    .FilterCard--field {
        padding-top: 0;
        padding-bottom: .5em;
        border-bottom: 1px solid #d4d4d4
    }
}

.FilterCard--field--reset {
    visibility: hidden;
    position: absolute;
    top: 50%;
    left: auto;
    right: 0;
    height: 24px;
    width: 24px;
    margin-top: -7px;
    opacity: 0;
    transition: opacity .4s, visibility 0s .4s
}

.FilterCard--field--reset:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.FilterCard--field--reset:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.FilterCard--field--reset:focus,
.has-value .FilterCard--field--reset {
    opacity: 1;
    visibility: visible;
    transition: opacity .4s, visibility .4s
}

html:not(.can-touch) .FilterCard--field--reset:active:after,
html:not(.can-touch) .FilterCard--field--reset:hover:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(-45deg);
    transform: scale(1.1) rotate(-45deg)
}

html:not(.can-touch) .FilterCard--field--reset:active:before,
html:not(.can-touch) .FilterCard--field--reset:hover:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(45deg);
    transform: scale(1.1) rotate(45deg)
}

.FilterCard--filter {
    position: relative;
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    width: 100%
}

@media screen and (min-width:1001px) {
    .FilterCard--filter {
        -webkit-flex: 0 1 40%;
        -ms-flex: 0 1 40%;
        flex: 0 1 40%;
        width: 40%;
        margin-left: 30px;
        padding-left: 30px;
        border-left: 1px solid #d4d4d4
    }
}

@media screen and (min-width:1201px) {
    .FilterCard--filter {
        -webkit-flex: 0 1 30%;
        -ms-flex: 0 1 30%;
        flex: 0 1 30%;
        width: 30%
    }
}

.FilterCard--filter .FilterGroup--title {
    margin-right: 0;
    padding-left: 0;
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 1.5em;
    border-right: none;
    height: auto;
    width: 100%
}

@media screen and (max-width:1000px) {
    .FilterCard--filter .FilterGroup--title {
        padding-bottom: .5em;
        border-bottom: 1px solid #d4d4d4
    }
}

.FilterCard--filter .FilterGroup--title--category {
    margin-top: 0
}

.FilterCard--filter .FilterGroup--title--activeFilters {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667
}

[lang=zh] .FilterCard--filter .FilterGroup--title--activeFilters,
[lang=zh-Hant] .FilterCard--filter .FilterGroup--title--activeFilters,
[lang=zh-Hans] .FilterCard--filter .FilterGroup--title--activeFilters,
[lang=zh-CN] .FilterCard--filter .FilterGroup--title--activeFilters {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .FilterCard--filter .FilterGroup--title--activeFilters {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.FilterCard--filter .FilterGroup--toggle:after {
    right: .35em
}

.FilterCard--filter.is-open .FilterGroup--toggle:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg)
}

.FilterCard--filter.is-open .FilterGroup--toggle:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.FilterCard--filter--toggle {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.FilterCard--filter--toggle:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
    transform: rotate(90deg) translateX(50%) rotate(135deg);
    top: 50%;
    right: 0;
    transition: -webkit-transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1), -webkit-transform .2s cubic-bezier(.77, 0, .175, 1)
}

.FilterCard--filter--toggle:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    top: 50%;
    right: 0;
    transition: -webkit-transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1);
    transition: transform .2s cubic-bezier(.77, 0, .175, 1), -webkit-transform .2s cubic-bezier(.77, 0, .175, 1)
}

.FilterCard--filter--toggle[aria-expanded=true]:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg)
}

.FilterCard--filter--toggle[aria-expanded=true]:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.FilterCard--collapsible {
    margin-top: 30px
}

.FilterCard--collapsible[data-hidden=true] {
    display: none
}

.FilterCard--tabs {
    margin-bottom: 30px;
    page-break-inside: auto
}

.FilterCard--actions {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    margin-top: 15px
}

.FilterCard--actions>* {
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
}

.FilterCard--clear {
    margin-top: 30px;
    border-bottom: 1px solid #d4d4d4;
    text-align: center;
    display: none
}

@media screen and (max-width:1000px) {
    .FilterGroup.has-active .FilterCard--clear {
        display: block
    }
}

.FilterCard--title--placeholder {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    color: #8a8d96
}

[lang=zh] .FilterCard--title--placeholder,
[lang=zh-Hant] .FilterCard--title--placeholder,
[lang=zh-Hans] .FilterCard--title--placeholder,
[lang=zh-CN] .FilterCard--title--placeholder {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .FilterCard--title--placeholder {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.FilterGroup.has-active .FilterCard--title--placeholder {
    display: none
}

.FilterGroup.is-open.has-active .FilterCard--filter .FilterGroup--title--activeFilters {
    display: block
}

.FilterGroup.is-open.has-active .FilterCard--filter .FilterGroup--toggle {
    display: block !important
}

.FilterCardGroup {
    width: 75%
}

@media screen and (max-width:1000px) {
    .FilterCardGroup {
        width: 100%
    }
}

.FilterCardGroup--inner {
    -webkit-column-count: 3;
    column-count: 3
}

@media screen and (max-width:1000px) {
    .FilterCardGroup--inner {
        -webkit-column-count: 2;
        column-count: 2
    }
}

@media screen and (max-width:750px) {
    .FilterCardGroup--inner {
        -webkit-column-count: 1;
        column-count: 1
    }

    .FilterCardGroup--input {
        padding-right: 0
    }
}

.FilterCardGroup--input.OptionInput {
    margin-bottom: 15px
}

.FilterCardGroup--input.OptionInput>label strong,
.FilterCardGroup--input.OptionInput>label b {
    font-weight: 700
}

.FilterCardGroup--input.FilterGroup--input {
    width: 100%
}

.FilterGroup {
    min-width: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media screen and (max-width:1000px) {
    .FilterGroup {
        display: block;
        border-bottom: 1px solid #f9f9fa
    }
}

.FilterGroup.is-open .FilterGroup--title--category {
    font-weight: 700
}

.FilterGroup.is-open .FilterGroup--title--activeFilters {
    display: none
}

.FilterGroup.is-open .FilterGroup--toggle:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(-90deg) translateX(50%) rotate(135deg);
    transform: rotate(-90deg) translateX(50%) rotate(135deg)
}

.FilterGroup.is-open .FilterGroup--toggle:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.FilterGroup.more .FilterGroup--inner {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (min-width:1001px) {
    .FilterGroup.more .FilterGroup {
        display: block;
        width: 75%;
        margin-bottom: 1em
    }

    .FilterGroup.more .FilterGroup:nth-of-type(n+2) {
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3
    }

    .FilterGroup.more .FilterGroup:last-of-type {
        margin-bottom: 0
    }

    .FilterGroup.more .FilterGroup .FilterGroup--collapsible {
        position: static;
        padding: 0
    }

    .FilterGroup.more .FilterGroup .FilterGroup--inner {
        display: block;
        padding: 0
    }

    .FilterGroup.more .FilterGroup .FilterGroup--inputGroup {
        width: 100%
    }

    .FilterGroup.more .FilterGroup .FilterGroup--title {
        border-right: none;
        padding: 0;
        margin: 0 0 1.5em;
        height: auto;
        width: auto
    }

    .FilterGroup.more .FilterGroup .FilterGroup--title--category {
        margin-top: 0
    }

    .FilterGroup.more .FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category {
        font-size: 16px;
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.375;
        color: #3c4150;
        font-weight: 700
    }

    [lang=zh] .FilterGroup.more .FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category,
    [lang=zh-Hant] .FilterGroup.more .FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category,
    [lang=zh-Hans] .FilterGroup.more .FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category,
    [lang=zh-CN] .FilterGroup.more .FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category {
        line-height: 1.5
    }

    .FilterGroup.more .FilterGroup .FilterGroup--toggle,
    .FilterGroup.more .FilterGroup .FilterGroup--submit {
        display: none !important
    }
}

@media screen and (max-width:1000px) {
    .FilterGroup.more>.FilterGroup--collapsible {
        padding: 0
    }

    .FilterGroup.more>.FilterGroup--collapsible>.FilterGroup--inner {
        display: block;
        padding: 0
    }

    .FilterGroup.more .FilterGroup:last-of-type {
        border-bottom: none
    }
}

.FilterGroup--title {
    display: block;
    position: relative;
    margin-bottom: 0;
    width: calc(100% - 1em);
    height: 42px;
    border-right: 1px solid #d4d4d4;
    padding-right: 2.5em;
    margin-right: 1em
}

@media screen and (max-width:1000px) {
    .FilterGroup--title {
        width: 100%;
        height: 65px;
        border-right: none;
        padding: .5em 50px .5em 20px
    }
}

.FilterGroup--title--category,
.FilterGroup--title--activeFilters {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
    width: 100%;
    margin-top: auto
}

[lang=zh] .FilterGroup--title--category,
[lang=zh-Hant] .FilterGroup--title--category,
[lang=zh-Hans] .FilterGroup--title--category,
[lang=zh-CN] .FilterGroup--title--category,
[lang=zh] .FilterGroup--title--activeFilters,
[lang=zh-Hant] .FilterGroup--title--activeFilters,
[lang=zh-Hans] .FilterGroup--title--activeFilters,
[lang=zh-CN] .FilterGroup--title--activeFilters {
    line-height: 1.5
}

.FilterGroup--title--category>br,
.FilterGroup--title--activeFilters>br {
    display: none
}

.FilterGroup--title--category {
    margin-top: 12px;
    color: #223362
}

.FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    margin-top: 0
}

[lang=zh] .FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category,
[lang=zh-Hant] .FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category,
[lang=zh-Hans] .FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category,
[lang=zh-CN] .FilterGroup.has-active:not(.is-open)>.FilterGroup--title .FilterGroup--title--category {
    line-height: 1.5
}

.FilterGroup--toggle,
.FilterGroup--submit {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.FilterGroup--toggle:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .8em;
    height: .8em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translateX(50%) rotate(135deg);
    transform: rotate(90deg) translateX(50%) rotate(135deg);
    left: auto;
    right: 2em
}

.FilterGroup--toggle:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none;
    left: auto;
    right: 2em
}

@media screen and (min-width:1001px) {
    .Filter.is-submit-enabled .FilterGroup.is-open .FilterGroup--toggle {
        display: none
    }
}

.FilterGroup--submit {
    display: none
}

.FilterGroup--submit>.Icon {
    position: absolute;
    right: 1em;
    top: 21px
}

@media screen and (min-width:1001px) {
    .Filter.is-submit-enabled .FilterGroup.is-open .FilterGroup--submit {
        display: block
    }
}

.FilterGroup--collapsible {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    background-color: #fff;
    -webkit-transform: translateY(-30px) scaleY(.8);
    transform: translateY(-30px) scaleY(.8);
    -webkit-transform-origin: center top;
    transform-origin: center top;
    opacity: 0;
    transition: opacity .2s, -webkit-transform .2s;
    transition: transform .2s, opacity .2s;
    transition: transform .2s, opacity .2s, -webkit-transform .2s
}

@media(max-width:1430px) {
    .FilterGroup--collapsible {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .FilterGroup--collapsible {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .FilterGroup--collapsible {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .FilterGroup--collapsible {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .FilterGroup--collapsible {
        max-width: 100%;
        margin: 0
    }
}

.FilterGroup--collapsible[data-hidden=true]>* {
    display: none
}

.Filter--inner.is-open .FilterGroup--collapsible {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
}

@media screen and (max-width:1000px) {
    .FilterGroup--collapsible {
        position: static;
        padding-left: 20px;
        padding-right: 20px;
        border-top: none;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

.FilterGroup--inner {
    padding-top: 60px;
    padding-bottom: 60px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media screen and (max-width:1000px) {
    .FilterGroup--inner {
        padding-top: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .FilterGroup--inner {
        padding-top: 30px
    }
}

@media screen and (max-width:1000px) {
    .FilterGroup--inner {
        padding-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .FilterGroup--inner {
        padding-bottom: 30px
    }
}

@media screen and (max-width:1000px) {
    .FilterGroup--inner {
        padding-top: 10px
    }
}

.FilterGroup--inputGroup {
    width: 75%
}

@media screen and (max-width:1000px) {
    .FilterGroup--inputGroup {
        width: 100%
    }
}

.FilterGroup--inputGroup--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: -30px;
    margin-top: 0
}

.FilterGroup--inputGroup--inner>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: 0;
    padding-right: 30px
}

.FilterGroup--inputGroup--inner:after {
    content: '';
    display: table;
    clear: both
}

@media screen and (max-width:750px) {
    .FilterGroup--inputGroup--inner {
        margin-right: 0
    }
}

.FilterGroup--input {
    width: 33.33333%
}

@media screen and (max-width:1000px) {
    .FilterGroup--input {
        width: 50%
    }
}

@media screen and (max-width:750px) {
    .FilterGroup--input {
        width: 100%;
        padding-right: 0
    }
}

.FilterGroup--controls {
    width: 25%;
    text-align: right
}

.SearchBar {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    margin-bottom: 90px
}

@media(max-width:1430px) {
    .SearchBar {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .SearchBar {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .SearchBar {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .SearchBar {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .SearchBar {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .SearchBar {
        margin-bottom: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .SearchBar {
        margin-bottom: 45px
    }
}

@media screen and (max-width:1000px) {
    .SearchBar {
        margin-bottom: 20px
    }
}

.SearchBar .FocusOnly {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1
}

.SearchBar--field {
    position: relative
}

.SearchBar--input {
    outline: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 80px;
    font-size: 5rem;
    font-weight: 200;
    line-height: 1.1;
    width: 100%;
    border: none;
    background: 0 0;
    appearance: none;
    padding: .125em 30px .125em 0;
    border-bottom: 1px solid #d4d4d4;
    border-radius: 0
}

.SearchBar--input:focus {
    outline: 0
}

@media screen and (max-width:1000px) {
    .SearchBar--input {
        font-size: 50px;
        font-size: 3.125rem;
        line-height: 1.14
    }
}

@media screen and (max-width:750px) {
    .SearchBar--input {
        font-size: 40px;
        font-size: 2.5rem;
        line-height: 1.15
    }
}

.SearchBar--input::-webkit-input-placeholder {
    color: #b1b3b9
}

.SearchBar--input:-ms-input-placeholder {
    color: #b1b3b9
}

.SearchBar--input::placeholder {
    color: #b1b3b9
}

.SearchBar--input::-ms-clear {
    display: none
}

@media screen and (max-width:750px) {
    .SearchBar--input {
        font-size: 30px;
        font-size: 1.875rem;
        font-weight: 200;
        line-height: 1.26667;
        padding-top: 0;
        padding-bottom: .5em
    }

    [lang=zh] .SearchBar--input,
    [lang=zh-Hant] .SearchBar--input,
    [lang=zh-Hans] .SearchBar--input,
    [lang=zh-CN] .SearchBar--input {
        line-height: 1.5
    }

    .SearchBar--input {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.SearchBar--reset {
    visibility: hidden;
    position: absolute;
    top: 50%;
    left: auto;
    right: 0;
    height: 30px;
    width: 30px;
    margin-top: -7px;
    opacity: 0;
    transition: opacity .4s, visibility 0s .4s
}

.SearchBar--reset:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.SearchBar--reset:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    left: 50%;
    width: 24px;
    margin: -1px -12px;
    border-top: 1px solid;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.SearchBar--reset:focus,
.has-value .SearchBar--reset {
    opacity: 1;
    visibility: visible;
    transition: opacity .4s, visibility .4s
}

html:not(.can-touch) .SearchBar--reset:active:after,
html:not(.can-touch) .SearchBar--reset:hover:after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(-45deg);
    transform: scale(1.1) rotate(-45deg)
}

html:not(.can-touch) .SearchBar--reset:active:before,
html:not(.can-touch) .SearchBar--reset:hover:before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    -webkit-transform: scale(1.1) rotate(45deg);
    transform: scale(1.1) rotate(45deg)
}

@media screen and (max-width:750px) {
    .SearchBar--reset {
        top: 0;
        margin-top: 0
    }
}

.SearchHeader {
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    padding-top: 40px;
    padding-bottom: 40px
}

@media(max-width:1430px) {
    .SearchHeader {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .SearchHeader {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .SearchHeader {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .SearchHeader {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .SearchHeader {
        max-width: 100%;
        margin: 0
    }
}

[lang=zh] .SearchHeader,
[lang=zh-Hant] .SearchHeader,
[lang=zh-Hans] .SearchHeader,
[lang=zh-CN] .SearchHeader {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .SearchHeader {
        display: block
    }
}

.SearchHeader--counter {
    margin-right: auto;
    padding-right: 60px
}

@media screen and (max-width:1200px) {
    .SearchHeader--counter {
        padding-right: 30px
    }
}

@media screen and (max-width:750px) {
    .SearchHeader--counter {
        margin-right: 0;
        margin-bottom: 2em;
        padding: 0
    }
}

.SearchHeader--counter--count {
    font-weight: 700
}

.SearchHeader--controls {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

@media screen and (max-width:750px) {
    .SearchHeader--controls {
        display: block
    }
}

.SearchHeader--controls .BasicInput.select {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

@media screen and (max-width:580px) {
    .SearchHeader--controls .BasicInput.select {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.SearchHeader--controls .BasicInput.select>.SearchHeader--sort {
    width: 285px
}

@media(max-width:1430px) {
    .SearchHeader--controls .BasicInput.select>.SearchHeader--sort {
        width: calc(((100vw - 150px + 30px)/4) - 30px)
    }
}

@media screen and (max-width:1200px) {
    .SearchHeader--controls .BasicInput.select>.SearchHeader--sort {
        width: calc(((100vw - 120px + 30px)/4) - 30px);
        width: 390px;
        width: calc(((100vw - 150px + 30px)/3) - 30px);
        width: calc(((100vw - 120px + 30px)/3) - 30px)
    }
}

@media screen and (max-width:750px) {
    .SearchHeader--controls .BasicInput.select>.SearchHeader--sort {
        width: 100%
    }
}

.SearchHeader--controls .BasicInput.select .SearchHeader--controls--label {
    margin-bottom: 0
}

@media screen and (max-width:750px) {
    .SearchHeader--controls .BasicInput.select .SearchHeader--controls--label {
        margin-bottom: .5em
    }
}

.SearchHeader--controls--label {
    margin-right: 30px;
    margin-bottom: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

@media screen and (max-width:1200px) {
    .SearchHeader--controls--label {
        margin-right: 15px
    }
}

@media screen and (max-width:580px) {
    .SearchHeader--controls--label {
        display: block;
        margin-right: 0;
        margin-bottom: .5em
    }
}

.SearchResult {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    position: relative;
    padding-top: 40px;
    padding-bottom: 40px
}

@media(max-width:1430px) {
    .SearchResult {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .SearchResult {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .SearchResult {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .SearchResult {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .SearchResult {
        max-width: 100%;
        margin: 0
    }
}

[lang=zh] .SearchResult,
[lang=zh-Hant] .SearchResult,
[lang=zh-Hans] .SearchResult,
[lang=zh-CN] .SearchResult {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SearchResult {
        font-size: 14px;
        font-size: .875rem;
        font-weight: 400;
        line-height: 1.4;
        padding-top: 30px;
        padding-bottom: 30px
    }

    [lang=zh] .SearchResult,
    [lang=zh-Hant] .SearchResult,
    [lang=zh-Hans] .SearchResult,
    [lang=zh-CN] .SearchResult {
        line-height: 1.5
    }
}

@media screen and (max-width:580px) {
    .SearchResult {
        padding-top: 20px;
        padding-bottom: 20px
    }
}

.SearchResult--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: 0;
    margin-top: 0;
    padding-right: 285px;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    padding-left: 16.66667%;
    min-height: 215px
}

.SearchResult--inner>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: 0;
    padding-right: 0
}

.SearchResult--inner:after {
    content: '';
    display: table;
    clear: both
}

@media(max-width:1430px) {
    .SearchResult--inner {
        padding-right: calc(((100vw - 150px + 30px)/4) - 30px)
    }
}

@media screen and (max-width:1200px) {
    .SearchResult--inner {
        padding-right: calc(((100vw - 120px + 30px)/4) - 30px);
        padding-right: 390px;
        padding-right: calc(((100vw - 150px + 30px)/3) - 30px);
        padding-right: calc(((100vw - 120px + 30px)/3) - 30px)
    }
}

@media screen and (max-width:1000px) {
    .SearchResult--inner {
        width: 100%;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding-left: 0;
        padding-right: 0;
        min-height: 0
    }
}

.SearchResult--header {
    padding-right: 75px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%
}

@media(max-width:1430px) {
    .SearchResult--header {
        padding-right: calc(((100vw - 150px + 30px)/12) - 30px)
    }
}

@media screen and (max-width:1200px) {
    .SearchResult--header {
        padding-right: calc(((100vw - 120px + 30px)/12) - 30px);
        padding-right: 30px
    }
}

@media screen and (max-width:1000px) {
    .SearchResult--header {
        padding-right: 0
    }
}

.SearchResult--date {
    width: 16.66667%;
    color: #636363;
    position: absolute;
    top: 0;
    left: 0;
    padding-right: 30px
}

@media screen and (max-width:1000px) {
    .SearchResult--date {
        position: static;
        width: 100%;
        margin-bottom: 1em
    }
}

.SearchResult--header--info {
    width: 100%;
    margin-bottom: 15px
}

@media screen and (max-width:1000px) {
    .SearchResult--header--info {
        width: 100%
    }
}

.SearchResult--section {
    font-weight: 700
}

.SearchResult--category {
    color: #636363
}

.SearchResult--section+.SearchResult--category:before {
    color: #b1b3b9;
    content: "|";
    display: inline-block;
    margin: 0 .25em
}

.SearchResult--title {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    display: inline-block;
    width: 100%;
    margin-bottom: 30px;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2
}

[lang=zh] .SearchResult--title,
[lang=zh-Hant] .SearchResult--title,
[lang=zh-Hans] .SearchResult--title,
[lang=zh-CN] .SearchResult--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SearchResult--title {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364;
        margin-bottom: 15px
    }
}

@media screen and (max-width:750px) {
    .SearchResult--title {
        font-size: 22px;
        font-size: 1.375rem;
        font-weight: 700;
        line-height: 1.3
    }

    [lang=zh] .SearchResult--title,
    [lang=zh-Hant] .SearchResult--title,
    [lang=zh-Hans] .SearchResult--title,
    [lang=zh-CN] .SearchResult--title {
        line-height: 1.5
    }

    .SearchResult--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.SearchResult--subtitle {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    display: block;
    margin-top: .5em;
    color: #636363
}

[lang=zh] .SearchResult--subtitle,
[lang=zh-Hant] .SearchResult--subtitle,
[lang=zh-Hans] .SearchResult--subtitle,
[lang=zh-CN] .SearchResult--subtitle {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SearchResult--subtitle {
        font-size: 14px;
        font-size: .875rem;
        font-weight: 400;
        line-height: 1.4
    }

    [lang=zh] .SearchResult--subtitle,
    [lang=zh-Hant] .SearchResult--subtitle,
    [lang=zh-Hans] .SearchResult--subtitle,
    [lang=zh-CN] .SearchResult--subtitle {
        line-height: 1.5
    }
}

@media screen and (max-width:750px) {
    .SearchResult--subtitle {
        margin-top: .25em
    }
}

.SearchResult--content {
    width: 100%;
    padding-right: 75px
}

@media(max-width:1430px) {
    .SearchResult--content {
        padding-right: calc(((100vw - 150px + 30px)/12) - 30px)
    }
}

@media screen and (max-width:1200px) {
    .SearchResult--content {
        padding-right: calc(((100vw - 120px + 30px)/12) - 30px);
        padding-right: 30px
    }
}

@media screen and (max-width:1000px) {
    .SearchResult--content {
        position: relative;
        padding-right: 0;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    .SearchResult--content:after {
        display: block;
        content: "";
        clear: both
    }
}

@media screen and (max-width:1200px) {
    .SearchResult--content--inner {
        width: 100%
    }
}

@media screen and (min-width:751px) {
    .SearchResult--text {
        font-size: 22px;
        font-size: 1.375rem;
        font-weight: 200;
        line-height: 1.5
    }

    [lang=zh] .SearchResult--text,
    [lang=zh-Hant] .SearchResult--text,
    [lang=zh-Hans] .SearchResult--text,
    [lang=zh-CN] .SearchResult--text {
        line-height: 1.7
    }
}

@media screen and (min-width:751px) and (max-width:1000px) {
    .SearchResult--text {
        font-size: 20px;
        font-size: 1.25rem
    }
}

@supports(-webkit-line-clamp:3) {
    .SearchResult--text {
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden
    }
}

.SearchResult--footer {
    color: #636363;
    margin-top: 1.5em
}

.SearchResult--image {
    width: 285px;
    position: absolute;
    top: 0;
    right: 0
}

@media(max-width:1430px) {
    .SearchResult--image {
        width: calc(((100vw - 150px + 30px)/4) - 30px)
    }
}

@media screen and (max-width:1200px) {
    .SearchResult--image {
        width: calc(((100vw - 120px + 30px)/4) - 30px)
    }
}

.SearchResult--image>.Media {
    border-radius: 4px;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2)
}

.SearchResult--image.people {
    padding-left: 3%;
    padding-right: 3%
}

.SearchResult--image.people>.Media {
    border-radius: 100%
}

@media screen and (max-width:1200px) {
    .SearchResult--image {
        width: 390px;
        width: calc(((100vw - 150px + 30px)/3) - 30px);
        width: calc(((100vw - 120px + 30px)/3) - 30px)
    }
}

@media screen and (max-width:1000px) {
    .SearchResult--image {
        position: relative;
        width: 25%;
        margin-left: 30px;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

@media screen and (max-width:580px) {
    .SearchResult--image {
        margin-left: 15px;
        margin-bottom: auto
    }
}

.SearchResult--image--dimming {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, .3);
    border-radius: 4px
}

.SearchResult--image--dimming .Icon {
    position: absolute;
    left: 50%;
    top: 50%;
    font-size: 10px;
    -webkit-transform: translate(-45%, -50%);
    transform: translate(-45%, -50%)
}

.SearchResult--image--dimming::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    height: 50px;
    width: 50px;
    margin-top: -25px;
    margin-left: -25px;
    border-radius: 100%;
    background-color: #fff
}

@media screen and (max-width:580px) {
    .SearchResult--image--dimming .Icon {
        -webkit-transform: translate(-50%, -50%) scale(.5);
        transform: translate(-50%, -50%) scale(.5)
    }

    .SearchResult--image--dimming::before {
        -webkit-transform: scale(.5);
        transform: scale(.5)
    }
}

.SearchResult--link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.SearchResult--link:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-color: #f9f9fa;
    opacity: 0;
    transition: opacity .3s
}

html:not(.can-touch) .SearchResult--link:active:before,
html:not(.can-touch) .SearchResult--link:hover:before {
    opacity: 1
}

.SearchResultList {
    margin-bottom: 60px
}

@media screen and (max-width:1000px) {
    .SearchResultList {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .SearchResultList {
        margin-bottom: 30px
    }
}

.SearchResultList--list>li {
    border-bottom: 1px solid #d4d4d4
}

.SearchResultList--list>li:last-child {
    border-bottom: none
}

.SearchResultList--loadMore {
    margin-top: 60px
}

@media screen and (max-width:1000px) {
    .SearchResultList--loadMore {
        margin-top: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .SearchResultList--loadMore {
        margin-top: 30px
    }
}

.PageHeaderSolutions {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    padding-top: 240px;
    padding-bottom: 90px;
    position: relative;
    min-height: 800px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: center;
    z-index: 0;
    color: #fff
}

@media(max-width:1430px) {
    .PageHeaderSolutions {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .PageHeaderSolutions {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .PageHeaderSolutions {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .PageHeaderSolutions {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .PageHeaderSolutions {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .PageHeaderSolutions {
        padding-top: 30vw
    }
}

@media screen and (max-width:400px) {
    .PageHeaderSolutions {
        padding-top: 120px
    }
}

@media screen and (max-width:1000px) {
    .PageHeaderSolutions {
        padding-bottom: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .PageHeaderSolutions {
        padding-bottom: 45px
    }
}

@media screen and (max-width:1000px) {
    .PageHeaderSolutions {
        padding-top: 210px
    }
}

@media screen and (max-width:580px) {
    .PageHeaderSolutions {
        padding-top: 150px
    }
}

@media screen and (max-width:1000px) {
    .PageHeaderSolutions {
        min-height: 350px
    }
}

@media screen and (max-width:750px) {
    .PageHeaderSolutions {
        min-height: 280px
    }
}

.PageHeaderSolutions.center {
    text-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.PageHeaderSolutions.center .PageHeaderSolutions--content {
    margin-left: auto;
    margin-right: auto
}

.PageHeaderSolutions.center .SectionTitle {
    text-align: center
}

.PageHeaderSolutions--content {
    max-width: 810px
}

.PageHeaderSolutions--content>.SectionTitle {
    margin-bottom: 0
}

.PageHeaderSolutions--actions {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 30px;
    margin-left: -15px;
    margin-right: -15px
}

.PageHeaderSolutions--actions>* {
    margin-top: 15px;
    margin-left: 15px;
    margin-right: 15px
}

.PageHeaderSolutions--background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden
}

.PageHeaderSolutions--background>.Media {
    height: calc(100% + 100px);
    top: -50px
}

/* .PageHeaderSolutions--background::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.3) 85%, rgba(0, 0, 0, 0.4) 100%)
} */

.ArticleTeaser {
    position: relative;
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    will-change: transform
}

.ArticleTeaser:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .0375);
    opacity: 0;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1)
}

html:not(.can-touch) .ArticleTeaser:active,
html:not(.can-touch) .ArticleTeaser:hover {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .ArticleTeaser:active:after,
html:not(.can-touch) .ArticleTeaser:hover:after {
    opacity: 1
}

html:not(.can-touch) .ArticleTeaser:active .ArticleTeaser--content,
html:not(.can-touch) .ArticleTeaser:hover .ArticleTeaser--content {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

.is-slider-ready .ArticleTeaser {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 100%
}

@supports(display:flex) {
    .is-slider-ready .ArticleTeaser {
        position: relative;
        height: auto
    }
}

.ArticleTeaser.publication:after {
    width: calc(100% - 30px)
}

.ArticleTeaser.publication .ArticleTeaser--inner {
    margin-right: 30px;
    width: calc(100% - 30px);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    will-change: transform
}

@media screen and (max-width:750px) {
    .ArticleTeaser.publication .ArticleTeaser--inner {
        margin-right: 20px;
        width: calc(100% - 20px)
    }
}

.ArticleTeaser.publication .ArticleTeaser--behind {
    position: absolute;
    top: 30px;
    left: auto;
    right: 0;
    bottom: 30px;
    width: 50px;
    z-index: -1;
    overflow: hidden;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    border-radius: 4px;
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    will-change: transform
}

.ArticleTeaser.publication .ArticleTeaser--behind .Media.image {
    width: 100%;
    height: 100%;
    padding: 0 !important;
    background-size: cover;
    background-position: center right
}

@media screen and (max-width:750px) {
    .ArticleTeaser.publication .ArticleTeaser--behind {
        top: 15px;
        bottom: 15px
    }
}

html:not(.can-touch) .ArticleTeaser.publication:active .ArticleTeaser--inner,
html:not(.can-touch) .ArticleTeaser.publication:hover .ArticleTeaser--inner {
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

html:not(.can-touch) .ArticleTeaser.publication:active .ArticleTeaser--behind,
html:not(.can-touch) .ArticleTeaser.publication:hover .ArticleTeaser--behind {
    -webkit-transform: translateX(10px) translateY(6px);
    transform: translateX(10px) translateY(6px)
}

.ArticleTeaser.video .ArticleTeaser--header {
    position: relative
}

.ArticleTeaser--header {
    max-height: 250px;
    overflow: hidden;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.ArticleTeaser--header--dimming {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, .3);
    border-radius: 4px
}

.ArticleTeaser--header--dimming .Icon {
    position: absolute;
    left: 50%;
    top: 50%;
    font-size: 10px;
    -webkit-transform: translate(-45%, -50%);
    transform: translate(-45%, -50%)
}

.ArticleTeaser--header--dimming::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    height: 50px;
    width: 50px;
    margin-top: -25px;
    margin-left: -25px;
    border-radius: 100%;
    background-color: #fff
}

.ArticleTeaser--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    border-radius: 4px;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    z-index: 1
}

.ArticleTeaser--content {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    min-height: 175px;
    padding: 34px;
    overflow: hidden;
    background-color: #fff;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

@media screen and (max-width:1000px) {
    .ArticleTeaser--content {
        padding: 1em
    }
}

.ArticleTeaser--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    display: block;
    margin-bottom: 18px
}

[lang=zh] .ArticleTeaser--category,
[lang=zh-Hant] .ArticleTeaser--category,
[lang=zh-Hans] .ArticleTeaser--category,
[lang=zh-CN] .ArticleTeaser--category {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ArticleTeaser--category {
        margin-bottom: 9px
    }
}

.ArticleTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 3em
}

[lang=zh] .ArticleTeaser--title,
[lang=zh-Hant] .ArticleTeaser--title,
[lang=zh-Hans] .ArticleTeaser--title,
[lang=zh-CN] .ArticleTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ArticleTeaser--title {
        font-size: 18px;
        font-size: 1.125rem;
        margin-bottom: 1em
    }
}

.ArticleTeaser--date {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    margin-top: auto
}

[lang=zh] .ArticleTeaser--date,
[lang=zh-Hant] .ArticleTeaser--date,
[lang=zh-Hans] .ArticleTeaser--date,
[lang=zh-CN] .ArticleTeaser--date {
    line-height: 1.5
}

.ArticleTeaser--link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.ArticleTeaser--publication {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    font-weight: 200;
    width: 100%;
    height: 100%;
    max-height: 250px;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 34px;
    word-spacing: 1000px
}

[lang=zh] .ArticleTeaser--publication,
[lang=zh-Hant] .ArticleTeaser--publication,
[lang=zh-Hans] .ArticleTeaser--publication,
[lang=zh-CN] .ArticleTeaser--publication {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ArticleTeaser--publication {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364;
        padding: 0 20px
    }
}

.ArticleTeaser--publication--header {
    height: 0;
    width: 100%;
    padding-bottom: calc(64.1% + 19px);
    position: relative
}

@media screen and (max-width:750px) {
    .ArticleTeaser--publication--header {
        padding-bottom: calc(64.1% + 13px)
    }
}

.BackgroundImageTeaser {
    padding-top: 120px;
    padding-bottom: 120px;
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    min-height: 600px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    background-color: #000;
    text-align: center;
    overflow: hidden
}

@media screen and (max-width:1000px) {
    .BackgroundImageTeaser {
        padding-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .BackgroundImageTeaser {
        padding-top: 60px
    }
}

@media screen and (max-width:1000px) {
    .BackgroundImageTeaser {
        padding-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .BackgroundImageTeaser {
        padding-bottom: 60px
    }
}

.l-Page.campaign .BackgroundImageTeaser:not(:last-child) {
    margin-bottom: 180px
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .BackgroundImageTeaser:not(:last-child) {
        margin-bottom: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .BackgroundImageTeaser:not(:last-child) {
        margin-bottom: 90px
    }
}

.BackgroundImageTeaser.large {
    min-height: 800px
}

@media screen and (max-width:1000px) {
    .BackgroundImageTeaser.large {
        min-height: 650px
    }
}

.BackgroundImageTeaser.small {
    min-height: 400px
}

@media screen and (max-width:1000px) {
    .BackgroundImageTeaser {
        min-height: 300px
    }
}

.BackgroundImageTeaser::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(60, 65, 80, .4)
}

.BackgroundImageTeaser>.SectionContainer {
    position: relative;
    width: 100%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
    z-index: 1
}

.BackgroundImageTeaser .SectionTitle {
    margin-bottom: 30px
}

.BackgroundImageTeaser .SectionTitle.large {
    margin-left: calc(50% - 405px);
    margin-right: calc(50% - 405px);
    text-align: center
}

@media(max-width:1010px) {
    .BackgroundImageTeaser .SectionTitle.large {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .BackgroundImageTeaser .SectionTitle.large {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .BackgroundImageTeaser .SectionTitle.large {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .BackgroundImageTeaser .SectionTitle.large {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .BackgroundImageTeaser .SectionTitle.large {
        max-width: 100%;
        margin: 0
    }
}

.BackgroundImageTeaser .SectionTitle--title {
    color: #fff
}

.BackgroundImageTeaser .SectionTitle--headline {
    color: #fff
}

.BackgroundImageTeaser--content {
    padding-left: calc(50% - 307.5px);
    padding-right: calc(50% - 307.5px)
}

@media(max-width:815px) {
    .BackgroundImageTeaser--content {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .BackgroundImageTeaser--content {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .BackgroundImageTeaser--content {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .BackgroundImageTeaser--content {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .BackgroundImageTeaser--content {
        max-width: 100%;
        margin: 0
    }
}

.BackgroundImageTeaser--background {
    position: absolute;
    top: -100px;
    left: 0;
    width: 100%;
    height: calc(100% + 200px);
    overflow: hidden
}

.BackgroundImageTeaser--background.video {
    top: 0;
    height: 100%
}

.BackgroundImageTeaser--background>.Media {
    height: 100%
}

.BasicContentTeaser {
    text-align: center
}

.l-Page.campaign .BasicContentTeaser {
    margin-top: 180px;
    margin-bottom: 180px
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .BasicContentTeaser {
        margin-top: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .BasicContentTeaser {
        margin-top: 90px
    }
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .BasicContentTeaser {
        margin-bottom: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .BasicContentTeaser {
        margin-bottom: 90px
    }
}

.BasicContentTeaser.inline {
    text-align: left
}

@media screen and (min-width:1201px) {
    .BasicContentTeaser.responsive.responsive .BasicContentTeaser--headline {
        font-size: 22px;
        font-size: 1.375rem;
        font-weight: 700;
        line-height: 1.3
    }

    [lang=zh] .BasicContentTeaser.responsive.responsive .BasicContentTeaser--headline,
    [lang=zh-Hant] .BasicContentTeaser.responsive.responsive .BasicContentTeaser--headline,
    [lang=zh-Hans] .BasicContentTeaser.responsive.responsive .BasicContentTeaser--headline,
    [lang=zh-CN] .BasicContentTeaser.responsive.responsive .BasicContentTeaser--headline {
        line-height: 1.5
    }
}

@media screen and (max-width:1200px) {
    .BasicContentTeaser.responsive.responsive {
        text-align: left
    }

    .BasicContentTeaser.responsive.responsive .BasicContentTeaser--header {
        padding-right: 45px
    }

    .BasicContentTeaser.responsive.responsive .BasicContentTeaser--content {
        max-width: none;
        margin-left: 0;
        margin-right: 0;
        padding-right: 90px
    }

    .BasicContentTeaser.responsive.responsive .BasicContentTeaser--footer {
        display: none
    }

    .BasicContentTeaser.responsive.responsive .BasicContentTeaser--responsiveLink {
        display: block
    }
}

@media screen and (max-width:750px) {
    .BasicContentTeaser.responsive.responsive .BasicContentTeaser--content {
        display: none
    }
}

.BasicContentTeaser--title {
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: #636363;
    display: block
}

.BasicContentTeaser--headline {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    display: block
}

[lang=zh] .BasicContentTeaser--headline,
[lang=zh-Hant] .BasicContentTeaser--headline,
[lang=zh-Hans] .BasicContentTeaser--headline,
[lang=zh-CN] .BasicContentTeaser--headline {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .BasicContentTeaser--headline {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.BasicContentTeaser--title+.BasicContentTeaser--headline {
    margin-top: 30px
}

@media screen and (max-width:1000px) {
    .BasicContentTeaser--title+.BasicContentTeaser--headline {
        margin-top: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .BasicContentTeaser--title+.BasicContentTeaser--headline {
        margin-top: 15px
    }
}

.BasicContentTeaser--content {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200;
    margin-top: 30px
}

@media screen and (max-width:1000px) {
    .BasicContentTeaser--content {
        margin-top: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .BasicContentTeaser--content {
        margin-top: 15px
    }
}

@media screen and (max-width:1000px) {
    .BasicContentTeaser:not(.inline) .BasicContentTeaser--content {
        max-width: 32em;
        margin-left: auto;
        margin-right: auto
    }
}

.BasicContentTeaser--footer {
    margin-top: 37.5px
}

@media screen and (max-width:1000px) {
    .BasicContentTeaser--footer {
        margin-top: 30px
    }
}

.BasicContentTeaser--responsiveLink {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.BasicContentTeaser--responsiveLink:after {
    content: "";
    position: absolute;
    font-size: 16px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0) translateX(50%) rotate(135deg);
    transform: rotate(0) translateX(50%) rotate(135deg);
    right: 0;
    margin-right: .75em
}

.BasicContentTeaser--responsiveLink:before {
    content: "";
    position: absolute;
    font-size: 16px;
    top: 50%;
    content: none;
    right: 0;
    margin-right: .75em
}

@media screen and (min-width:751px) {
    .BasicContentTeaserArea:not(.medium) {
        width: calc(100% - 60px);
        max-width: 1400px;
        margin-left: auto;
        margin-right: auto
    }
}

@media screen and (min-width:1201px) {
    .BasicContentTeaserArea:not(.medium).col-5 .BasicContentTeaserArea--grid {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        page-break-inside: avoid;
        margin-right: -30px;
        margin-top: 0
    }

    .BasicContentTeaserArea:not(.medium).col-5 .BasicContentTeaserArea--grid>* {
        float: left;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 20%;
        margin-top: 0;
        padding-right: 30px
    }

    .BasicContentTeaserArea:not(.medium).col-5 .BasicContentTeaserArea--grid:after {
        content: '';
        display: table;
        clear: both
    }

    .BasicContentTeaserArea:not(.medium).col-4 .BasicContentTeaserArea--grid {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        page-break-inside: avoid;
        margin-right: -30px;
        margin-top: 0
    }

    .BasicContentTeaserArea:not(.medium).col-4 .BasicContentTeaserArea--grid>* {
        float: left;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
        margin-top: 0;
        padding-right: 30px
    }

    .BasicContentTeaserArea:not(.medium).col-4 .BasicContentTeaserArea--grid:after {
        content: '';
        display: table;
        clear: both
    }

    .BasicContentTeaserArea:not(.medium):not(.col-5):not(.col-4) .BasicContentTeaserArea--grid {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        page-break-inside: avoid;
        margin-right: -30px;
        margin-top: 0
    }

    .BasicContentTeaserArea:not(.medium):not(.col-5):not(.col-4) .BasicContentTeaserArea--grid>* {
        float: left;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333%;
        margin-top: 0;
        padding-right: 30px
    }

    .BasicContentTeaserArea:not(.medium):not(.col-5):not(.col-4) .BasicContentTeaserArea--grid:after {
        content: '';
        display: table;
        clear: both
    }
}

@media screen and (max-width:1200px) {
    .BasicContentTeaserArea:not(.medium) .BasicContentTeaserArea--grid--item {
        width: 100%;
        border-bottom: 1px solid #d4d4d4
    }

    .BasicContentTeaserArea:not(.medium) .BasicContentTeaserArea--grid--item::after {
        content: none
    }
}

@media screen and (max-width:750px) {
    .BasicContentTeaserArea:not(.medium) .BasicContentTeaserArea--grid--item {
        padding-left: 15px
    }
}

.l-Page.campaign .BasicContentTeaserArea.medium>.SectionContainer {
    padding-top: 0
}

.BasicContentTeaserArea.medium .BasicContentTeaserArea--content {
    margin-left: calc(50% - 405px);
    margin-right: calc(50% - 405px)
}

@media(max-width:1010px) {
    .BasicContentTeaserArea.medium .BasicContentTeaserArea--content {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .BasicContentTeaserArea.medium .BasicContentTeaserArea--content {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .BasicContentTeaserArea.medium .BasicContentTeaserArea--content {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .BasicContentTeaserArea.medium .BasicContentTeaserArea--content {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .BasicContentTeaserArea.medium .BasicContentTeaserArea--content {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (min-width:1001px) {
    .BasicContentTeaserArea.medium .BasicContentTeaserArea--grid {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        page-break-inside: avoid;
        margin-right: -30px;
        margin-top: 0
    }

    .BasicContentTeaserArea.medium .BasicContentTeaserArea--grid>* {
        float: left;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333%;
        margin-top: 0;
        padding-right: 30px
    }

    .BasicContentTeaserArea.medium .BasicContentTeaserArea--grid:after {
        content: '';
        display: table;
        clear: both
    }
}

@media screen and (max-width:1000px) {
    .BasicContentTeaserArea.medium .BasicContentTeaserArea--grid--item {
        padding-left: 30px;
        padding-right: 30px;
        width: 100%;
        border-bottom: 1px solid #d4d4d4
    }
}

@media screen and (max-width:580px) {
    .BasicContentTeaserArea.medium .BasicContentTeaserArea--grid--item {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media screen and (max-width:1000px) {
    .BasicContentTeaserArea.medium .BasicContentTeaserArea--grid--item:last-child {
        border-bottom: none
    }

    .BasicContentTeaserArea.medium .BasicContentTeaserArea--grid--item::after {
        content: none
    }
}

.BasicContentTeaserArea--content {
    text-align: center
}

@media screen and (max-width:1000px) {
    .BasicContentTeaserArea--content {
        margin: 0
    }
}

[lang=ja] .BasicContentTeaserArea--content {
    text-align: left
}

[lang=zh] .BasicContentTeaserArea--content,
[lang=zh-Hant] .BasicContentTeaserArea--content,
[lang=zh-Hans] .BasicContentTeaserArea--content,
[lang=zh-CN] .BasicContentTeaserArea--content {
    text-align: left
}

.BasicContentTeaserArea--content .richtext>ul,
.BasicContentTeaserArea--content .richtext>ol {
    min-width: 51%;
    max-width: 26em;
    margin-left: auto;
    margin-right: auto;
    display: inline-block
}

.BasicContentTeaserArea--content .richtext>ul,
.BasicContentTeaserArea--content .richtext>ul,
.BasicContentTeaserArea--content .richtext>ol,
.BasicContentTeaserArea--content .richtext>ol {
    margin-top: 0
}

.BasicContentTeaserArea--content .richtext *:last-child {
    margin-bottom: 0
}

.BasicContentTeaserArea--grid {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.BasicContentTeaserArea--grid--item {
    position: relative;
    padding-top: 30px;
    padding-bottom: 30px
}

.BasicContentTeaserArea--grid--item::after {
    content: "";
    position: absolute;
    top: 0;
    right: 15px;
    display: block;
    height: 100%;
    width: 0;
    border-right: 1px solid #d4d4d4
}

.BasicContentTeaserArea--grid--item:last-child::after {
    content: none
}

.BlogTeaser {
    position: relative;
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    text-align: center;
    will-change: transform
}

.BlogTeaser:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .0375);
    opacity: 0;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1)
}

html:not(.can-touch) .BlogTeaser:active,
html:not(.can-touch) .BlogTeaser:hover {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .BlogTeaser:active:after,
html:not(.can-touch) .BlogTeaser:hover:after {
    opacity: 1
}

html:not(.can-touch) .BlogTeaser:active .BlogTeaser--image,
html:not(.can-touch) .BlogTeaser:hover .BlogTeaser--image {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .BlogTeaser:active .BlogTeaser--author,
html:not(.can-touch) .BlogTeaser:hover .BlogTeaser--author {
    -webkit-transform: translateY(-12px);
    transform: translateY(-12px)
}

.is-slider-ready .BlogTeaser {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 100%
}

@supports(display:flex) {
    .is-slider-ready .BlogTeaser {
        position: relative;
        height: auto
    }
}

.BlogTeaser--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    z-index: 1
}

.BlogTeaser--header {
    padding: 30px 60px
}

@media screen and (max-width:750px) {
    .BlogTeaser--header {
        padding: 30px
    }
}

.BlogTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3
}

[lang=zh] .BlogTeaser--title,
[lang=zh-Hant] .BlogTeaser--title,
[lang=zh-Hans] .BlogTeaser--title,
[lang=zh-CN] .BlogTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .BlogTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.BlogTeaser--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    display: block;
    margin-bottom: 1em
}

[lang=zh] .BlogTeaser--category,
[lang=zh-Hant] .BlogTeaser--category,
[lang=zh-Hans] .BlogTeaser--category,
[lang=zh-CN] .BlogTeaser--category {
    line-height: 1.5
}

.BlogTeaser--date {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    margin-top: auto;
    margin-bottom: 30px
}

[lang=zh] .BlogTeaser--date,
[lang=zh-Hant] .BlogTeaser--date,
[lang=zh-Hans] .BlogTeaser--date,
[lang=zh-CN] .BlogTeaser--date {
    line-height: 1.5
}

.BlogTeaser--image {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.BlogTeaser--author {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    position: relative;
    display: block;
    margin-top: -44px;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

[lang=zh] .BlogTeaser--author,
[lang=zh-Hant] .BlogTeaser--author,
[lang=zh-Hans] .BlogTeaser--author,
[lang=zh-CN] .BlogTeaser--author {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .BlogTeaser--author {
        margin-top: -32px
    }
}

.BlogTeaser--author--portrait {
    height: 84px;
    width: 84px;
    border: 2px solid #fff;
    border-radius: 50%;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    background-color: #f9f9fa
}

.BlogTeaser--author--portrait>img {
    max-width: 100%
}

@media screen and (max-width:750px) {
    .BlogTeaser--author--portrait {
        width: 64px;
        height: 64px
    }
}

.BlogTeaser--author--name {
    padding: 16px 30px 20px
}

.BlogTeaser--author--name>span {
    display: block
}

.BlogTeaser--link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.BoxTeaserArea {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    margin-bottom: 60px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2)
}

@media(max-width:1430px) {
    .BoxTeaserArea {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .BoxTeaserArea {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .BoxTeaserArea {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .BoxTeaserArea {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .BoxTeaserArea {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .BoxTeaserArea {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .BoxTeaserArea {
        margin-bottom: 30px
    }
}

.BoxTeaserArea .BasicContentTeaser {
    padding-bottom: 30px
}

@media screen and (max-width:1000px) {
    .BoxTeaserArea {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media screen and (max-width:750px) {
    .BoxTeaserArea {
        display: block;
        border-radius: 0;
        box-shadow: none;
        margin-left: 0;
        margin-right: 0
    }

    .BoxTeaserArea .BasicContentTeaser {
        text-align: center
    }

    .BoxTeaserArea .SharePrice--chart {
        margin-left: auto;
        margin-right: auto
    }
}

.BoxTeaserArea--item {
    position: relative;
    width: 50%;
    margin: 45px 0 30px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    border-right: 1px solid #d4d4d4
}

.BoxTeaserArea--item:last-child {
    border-right: none
}

.BoxTeaserArea--item:before,
.BoxTeaserArea--item:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 75px;
    background-image: linear-gradient(to right, white, white 25%, rgba(255, 255, 255, 0));
    z-index: 1
}

.BoxTeaserArea--item:after {
    left: auto;
    right: 0;
    background-image: linear-gradient(to left, white, white 25%, rgba(255, 255, 255, 0))
}

@media screen and (max-width:1000px) {
    .BoxTeaserArea--item {
        margin: 45px 0
    }

    .BoxTeaserArea--item:before,
    .BoxTeaserArea--item:after {
        width: 45px
    }
}

@media screen and (max-width:750px) {
    .BoxTeaserArea--item {
        padding-left: 30px;
        padding-right: 30px;
        width: auto;
        margin: 0;
        padding-top: 60px;
        padding-bottom: 60px;
        border-right: none;
        border-bottom: 1px solid #d4d4d4
    }
}

@media screen and (max-width:580px) {
    .BoxTeaserArea--item {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media screen and (max-width:750px) {

    .BoxTeaserArea--item:before,
    .BoxTeaserArea--item:after {
        content: none
    }
}

.BoxTeaserArea--slider {
    overflow: hidden
}

.BoxTeaserArea--slider.is-draggable .flickity-page-dots {
    display: block
}

.BoxTeaserArea--slider .flickity-page-dots {
    position: absolute;
    right: 60px;
    bottom: 0;
    display: none;
    z-index: 2
}

@media screen and (max-width:1000px) {
    .BoxTeaserArea--slider .flickity-page-dots {
        right: 30px
    }
}

@media screen and (max-width:750px) {
    .BoxTeaserArea--slider .flickity-page-dots {
        position: relative;
        right: initial;
        bottom: initial;
        text-align: center
    }
}

.BoxTeaserArea--slider:not(.is-slider-ready) .BoxTeaserArea--slide:nth-child(n+2) {
    display: none
}

.BoxTeaserArea--slide {
    width: 100%;
    padding: 0 75px
}

@media screen and (max-width:1000px) {
    .BoxTeaserArea--slide {
        padding: 0 45px
    }
}

@media screen and (max-width:750px) {
    .BoxTeaserArea--slide {
        padding: 0
    }
}

.CampaignHeroTeaser {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100vh;
    max-height: 900px;
    color: #fff;
    background-color: #000
}

.CampaignHeroTeaser .SectionTitle.large {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    text-shadow: 0 2px 20px rgba(0, 0, 0, .5)
}

.CampaignHeroTeaser .SectionTitle.large .SectionTitle--headline {
    opacity: 0;
    -webkit-animation-name: anim-CampaignHero-title;
    animation-name: anim-CampaignHero-title;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.CampaignHeroTeaser .SectionTitle.large .SectionTitle--content {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 200;
    line-height: 1.5;
    color: #fff;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, .75);
    opacity: 0;
    -webkit-animation-name: anim-CampaignHero-title;
    animation-name: anim-CampaignHero-title;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 3s;
    animation-delay: 3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

[lang=zh] .CampaignHeroTeaser .SectionTitle.large .SectionTitle--content,
[lang=zh-Hant] .CampaignHeroTeaser .SectionTitle.large .SectionTitle--content,
[lang=zh-Hans] .CampaignHeroTeaser .SectionTitle.large .SectionTitle--content,
[lang=zh-CN] .CampaignHeroTeaser .SectionTitle.large .SectionTitle--content {
    line-height: 1.7
}

@media screen and (max-width:1000px) {
    .CampaignHeroTeaser .SectionTitle.large .SectionTitle--content {
        font-size: 20px;
        font-size: 1.25rem
    }
}

@media screen and (max-width:1200px) {
    .CampaignHeroTeaser .SectionTitle.large {
        width: 75%
    }
}

@media screen and (max-width:1000px) {
    .CampaignHeroTeaser .SectionTitle.large {
        width: 100%
    }
}

.CampaignHeroTeaser--text {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    padding-top: 120px;
    padding-bottom: 120px;
    display: block;
    position: relative;
    z-index: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
}

@media(max-width:1430px) {
    .CampaignHeroTeaser--text {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .CampaignHeroTeaser--text {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .CampaignHeroTeaser--text {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .CampaignHeroTeaser--text {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .CampaignHeroTeaser--text {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .CampaignHeroTeaser--text {
        padding-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .CampaignHeroTeaser--text {
        padding-top: 60px
    }
}

@media screen and (max-width:1000px) {
    .CampaignHeroTeaser--text {
        padding-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .CampaignHeroTeaser--text {
        padding-bottom: 60px
    }
}

@media screen and (max-width:750px) {
    .CampaignHeroTeaser--text {
        padding-top: 100px;
        padding-bottom: 100px
    }
}

.CampaignHeroTeaser--action {
    margin-top: 30px;
    text-align: center;
    opacity: 0;
    -webkit-animation-name: anim-CampaignHero-title;
    animation-name: anim-CampaignHero-title;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 3s;
    animation-delay: 3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@media screen and (max-width:1000px) {
    .CampaignHeroTeaser--action {
        margin-top: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .CampaignHeroTeaser--action {
        margin-top: 15px
    }
}

@-webkit-keyframes scroll-indicator {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%)
    }

    100% {
        -webkit-transform: translateY(0%);
        transform: translateY(0%)
    }
}

@keyframes scroll-indicator {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%)
    }

    100% {
        -webkit-transform: translateY(0%);
        transform: translateY(0%)
    }
}

.CampaignHeroTeaser--scrollIndicator {
    position: absolute;
    left: 50%;
    bottom: 30px;
    z-index: 1;
    width: 100px;
    height: 100px;
    margin-left: -50px;
    transition: 200ms -webkit-transform ease-in-out;
    transition: 200ms transform ease-in-out;
    transition: 200ms transform ease-in-out, 200ms -webkit-transform ease-in-out
}

html:not(.can-touch) .CampaignHeroTeaser--scrollIndicator:active,
html:not(.can-touch) .CampaignHeroTeaser--scrollIndicator:hover {
    cursor: pointer;
    -webkit-transform: scale(1.2);
    transform: scale(1.2)
}

html:not(.can-touch) .CampaignHeroTeaser--scrollIndicator:active .CampaignHeroTeaser--scrollIndicator--icon,
html:not(.can-touch) .CampaignHeroTeaser--scrollIndicator:hover .CampaignHeroTeaser--scrollIndicator--icon {
    -webkit-animation-play-state: paused;
    animation-play-state: paused
}

@media screen and (max-width:750px) {
    .CampaignHeroTeaser--scrollIndicator {
        bottom: 100px;
        width: 80px;
        height: 80px;
        margin-left: -40px
    }
}

.CampaignHeroTeaser--scrollIndicator--icon {
    position: absolute;
    left: 35px;
    bottom: 15px;
    -webkit-animation-name: scroll-indicator;
    animation-name: scroll-indicator;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

.CampaignHeroTeaser--scrollIndicator--icon::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: translateY(-12px) rotate(45deg);
    transform: translateY(-12px) rotate(45deg)
}

@media screen and (max-width:750px) {
    .CampaignHeroTeaser--scrollIndicator--icon {
        bottom: 10px;
        left: 30px
    }

    .CampaignHeroTeaser--scrollIndicator--icon::before {
        width: 20px;
        height: 20px
    }
}

.CampaignHeroTeaser--background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.CampaignHeroTeaser--background>.Media {
    width: 100%;
    height: 100%
}

.CampaignHeroTeaser--background::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.2) 100%)
}

.CollaborationTeaser {
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    will-change: transform
}

.CollaborationTeaser:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .0375);
    opacity: 0;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1)
}

html:not(.can-touch) .CollaborationTeaser:active,
html:not(.can-touch) .CollaborationTeaser:hover {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .CollaborationTeaser:active:after,
html:not(.can-touch) .CollaborationTeaser:hover:after {
    opacity: 1
}

html:not(.can-touch) .CollaborationTeaser:active .CollaborationTeaser--content,
html:not(.can-touch) .CollaborationTeaser:active .CollaborationTeaser--footer,
html:not(.can-touch) .CollaborationTeaser:hover .CollaborationTeaser--content,
html:not(.can-touch) .CollaborationTeaser:hover .CollaborationTeaser--footer {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

.is-slider-ready .CollaborationTeaser {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 100%
}

@supports(display:flex) {
    .is-slider-ready .CollaborationTeaser {
        position: relative;
        height: auto
    }
}

.CollaborationTeaser--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    z-index: 1
}

.CollaborationTeaser--header {
    max-height: 145px;
    overflow: hidden
}

.CollaborationTeaser--content {
    background-color: #fff;
    padding: 34px;
    overflow: hidden;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

@media screen and (max-width:1000px) {
    .CollaborationTeaser--content {
        padding: 20px
    }
}

.CollaborationTeaser--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    display: block;
    margin-bottom: 18px
}

[lang=zh] .CollaborationTeaser--category,
[lang=zh-Hant] .CollaborationTeaser--category,
[lang=zh-Hans] .CollaborationTeaser--category,
[lang=zh-CN] .CollaborationTeaser--category {
    line-height: 1.5
}

.CollaborationTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 1em
}

[lang=zh] .CollaborationTeaser--title,
[lang=zh-Hant] .CollaborationTeaser--title,
[lang=zh-Hans] .CollaborationTeaser--title,
[lang=zh-CN] .CollaborationTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .CollaborationTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.CollaborationTeaser--footer {
    margin-top: auto;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.CollaborationTeaser--partner {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 20px 34px;
    border-top: 1px solid #d4d4d4
}

[lang=zh] .CollaborationTeaser--partner,
[lang=zh-Hant] .CollaborationTeaser--partner,
[lang=zh-Hans] .CollaborationTeaser--partner,
[lang=zh-CN] .CollaborationTeaser--partner {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .CollaborationTeaser--partner {
        padding: 20px
    }
}

.CollaborationTeaser--partner--logos {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-right: 1.2em;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.CollaborationTeaser--partner--logos>img {
    display: block;
    position: relative;
    height: 42px;
    width: 42px;
    border: 2px solid #fff;
    border-radius: 100%;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.CollaborationTeaser--partner--logos>img:nth-child(1n+2) {
    margin-left: -21px
}

@media screen and (max-width:580px) {
    .CollaborationTeaser--partner--logos>img {
        height: 34px;
        width: 34px
    }

    .CollaborationTeaser--partner--logos>img:nth-child(1n+2) {
        margin-left: -17px
    }
}

.CollaborationTeaser--link {
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.CounterTeaser {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    margin-bottom: 180px;
    position: relative;
    height: 800px;
    max-height: 90vh;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff
}

@media(max-width:1430px) {
    .CounterTeaser {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .CounterTeaser {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .CounterTeaser {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .CounterTeaser {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .CounterTeaser {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .CounterTeaser {
        margin-bottom: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .CounterTeaser {
        margin-bottom: 90px
    }
}

.CounterTeaser:last-child {
    margin-bottom: 0
}

.CounterTeaser--teaser {
    width: 40%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    position: relative;
    text-align: center;
    z-index: 1
}

@media screen and (max-width:1382px) {
    .CounterTeaser--teaser {
        width: 50%
    }
}

@media screen and (max-width:1200px) {
    .CounterTeaser--teaser {
        width: 100%
    }
}

.CounterTeaser--counter {
    font-size: 120px;
    font-size: 7.5rem;
    font-weight: 200;
    line-height: 1;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media screen and (max-width:1000px) {
    .CounterTeaser--counter {
        font-size: 75px;
        font-size: 4.6875rem;
        line-height: 1.06667
    }
}

@media screen and (max-width:750px) {
    .CounterTeaser--counter {
        font-size: 60px;
        font-size: 3.75rem;
        line-height: 1.1
    }
}

.CounterTeaser--caption {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    margin-top: .5em
}

[lang=zh] .CounterTeaser--caption,
[lang=zh-Hant] .CounterTeaser--caption,
[lang=zh-Hans] .CounterTeaser--caption,
[lang=zh-CN] .CounterTeaser--caption {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .CounterTeaser--caption {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.CounterTeaser--text {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200;
    max-width: 20em;
    margin-top: 15px;
    margin-left: auto;
    margin-right: auto
}

.CounterTeaser--share {
    margin-top: 30px
}

.CounterTeaser--background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    overflow: hidden
}

.CounterTeaser--background .Media {
    width: 100%;
    height: 100%;
    opacity: .4
}

.CounterTeaser--background .Media.image {
    height: calc(100% + 200px);
    top: -100px;
    -webkit-transform: translateY(100px);
    transform: translateY(100px)
}

.DialogueTeaser {
    position: relative;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    will-change: transform
}

.DialogueTeaser:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .0375);
    opacity: 0;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1)
}

html:not(.can-touch) .DialogueTeaser:active,
html:not(.can-touch) .DialogueTeaser:hover {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .DialogueTeaser:active:after,
html:not(.can-touch) .DialogueTeaser:hover:after {
    opacity: 1
}

html:not(.can-touch) .DialogueTeaser:active .DialogueTeaser--content,
html:not(.can-touch) .DialogueTeaser:hover .DialogueTeaser--content {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

.DialogueTeaser--content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    max-height: 100%;
    padding: 30px;
    color: #fff;
    z-index: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.DialogueTeaser--category {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #fff;
    display: block;
    margin-bottom: .5em;
    opacity: .8
}

[lang=zh] .DialogueTeaser--category,
[lang=zh-Hant] .DialogueTeaser--category,
[lang=zh-Hans] .DialogueTeaser--category,
[lang=zh-CN] .DialogueTeaser--category {
    line-height: 1.5
}

.DialogueTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    word-wrap: break-word
}

[lang=zh] .DialogueTeaser--title,
[lang=zh-Hant] .DialogueTeaser--title,
[lang=zh-Hans] .DialogueTeaser--title,
[lang=zh-CN] .DialogueTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .DialogueTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.DialogueTeaser--text {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200;
    margin-top: 1em
}

.DialogueTeaser--background {
    position: relative;
    width: 100%;
    padding-top: 130%;
    min-height: 100%;
    border-radius: 4px;
    overflow: hidden
}

.DialogueTeaser--background>.Media {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.DialogueTeaser--background::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(60, 65, 80, .4)
}

.DialogueTeaser--link {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1
}

.EventTeaser {
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    will-change: transform
}

.EventTeaser:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .0375);
    opacity: 0;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1);
    z-index: -1
}

html:not(.can-touch) .EventTeaser:active,
html:not(.can-touch) .EventTeaser:hover {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .EventTeaser:active:after,
html:not(.can-touch) .EventTeaser:hover:after {
    opacity: 1
}

html:not(.can-touch) .EventTeaser:active .EventTeaser--content,
html:not(.can-touch) .EventTeaser:active .EventTeaser--footer,
html:not(.can-touch) .EventTeaser:hover .EventTeaser--content,
html:not(.can-touch) .EventTeaser:hover .EventTeaser--footer {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

.EventTeaser .EventTeaser--inner {
    transition: box-shadow .2s cubic-bezier(.39, .575, .565, 1);
    will-change: box-shadow
}

.is-slider-ready .EventTeaser {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 100%
}

@supports(display:flex) {
    .is-slider-ready .EventTeaser {
        position: relative;
        height: auto
    }
}

.EventTeaser--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2)
}

.EventTeaser--header {
    max-height: 145px;
    overflow: hidden
}

.EventTeaser--header--icon {
    position: absolute;
    top: 20px;
    left: auto;
    right: 20px
}

.EventTeaser--tags {
    position: absolute;
    top: 0;
    left: 0;
    right: 10px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.EventTeaser--tag {
    color: #fff;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    line-height: 1.25rem;
    vertical-align: middle;
    height: 35px;
    padding: 7px 19px 8px;
    height: 2.1875rem;
    padding: .4375rem 1.1875rem .5rem;
    display: inline-block;
    position: relative;
    max-width: 100%;
    margin-left: 10px;
    margin-top: 10px;
    text-align: center;
    white-space: nowrap
}

.EventTeaser--tag:before {
    border: 1px solid #223362;
    background-color: #223362;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    transition: background-color .2s cubic-bezier(.39, .575, .565, 1), border-color .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: background-color .2s cubic-bezier(.39, .575, .565, 1), border-color .2s cubic-bezier(.39, .575, .565, 1), transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: background-color .2s cubic-bezier(.39, .575, .565, 1), border-color .2s cubic-bezier(.39, .575, .565, 1), transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.EventTeaser--tag:hover:not([disabled]),
.EventTeaser--tag:hover:enabled {
    color: #223362
}

.EventTeaser--tag:hover:not([disabled]):before,
.EventTeaser--tag:hover:enabled:before {
    background-color: #fff;
    border-color: #cce2e3;
    -webkit-transform: scale(1.025, 1.1);
    transform: scale(1.025, 1.1)
}

.EventTeaser--tag:active:not([disabled]),
.EventTeaser--tag:active:enabled {
    color: #223362
}

.EventTeaser--tag:active:not([disabled]):before,
.EventTeaser--tag:active:enabled:before {
    background-color: #fff;
    border-color: #cce2e3;
    -webkit-transform: scale(1.025, 1.1);
    transform: scale(1.025, 1.1)
}

[lang=zh] .EventTeaser--tag,
[lang=zh-Hant] .EventTeaser--tag,
[lang=zh-Hans] .EventTeaser--tag,
[lang=zh-CN] .EventTeaser--tag {
    line-height: 1.5
}

.EventTeaser--tag:before {
    box-sizing: border-box;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 100px
}

.EventTeaser--tag .Button--content {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: inline-block;
    position: relative;
    max-width: 100%;
    z-index: 1
}

.EventTeaser--tag .Button--content>br {
    display: none
}

.EventTeaser--tag:before {
    background-color: #3c4150;
    border-color: transparent
}

.EventTeaser--tag span {
    position: relative
}

.EventTeaser--tag .Icon {
    max-width: 18px
}

.EventTeaser--content {
    background-color: #fff;
    padding: 34px;
    overflow: hidden;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

@media screen and (max-width:1000px) {
    .EventTeaser--content {
        padding: 20px
    }
}

.EventTeaser--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    display: block;
    margin-bottom: 18px
}

[lang=zh] .EventTeaser--category,
[lang=zh-Hant] .EventTeaser--category,
[lang=zh-Hans] .EventTeaser--category,
[lang=zh-CN] .EventTeaser--category {
    line-height: 1.5
}

.EventTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: .5em
}

[lang=zh] .EventTeaser--title,
[lang=zh-Hant] .EventTeaser--title,
[lang=zh-Hans] .EventTeaser--title,
[lang=zh-CN] .EventTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .EventTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.EventTeaser--footer {
    margin-top: auto;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.EventTeaser--info {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    padding: 25px 34px;
    border-top: 1px solid #ececee
}

[lang=zh] .EventTeaser--info,
[lang=zh-Hant] .EventTeaser--info,
[lang=zh-Hans] .EventTeaser--info,
[lang=zh-CN] .EventTeaser--info {
    line-height: 1.5
}

.EventTeaser--info .PictoText {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.EventTeaser--info .PictoText>.Icon {
    height: 100%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-right: 2ex
}

@media screen and (max-width:1000px) {
    .EventTeaser--info {
        padding: 20px
    }
}

.EventTeaser--link {
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.FeaturedEventTeaser {
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    will-change: transform;
    min-height: 410px
}

.FeaturedEventTeaser:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .0375);
    opacity: 0;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1);
    z-index: -1
}

html:not(.can-touch) .FeaturedEventTeaser:active,
html:not(.can-touch) .FeaturedEventTeaser:hover {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .FeaturedEventTeaser:active:after,
html:not(.can-touch) .FeaturedEventTeaser:hover:after {
    opacity: 1
}

html:not(.can-touch) .FeaturedEventTeaser:active .FeaturedEventTeaser--title>*:not(.FeaturedEventTeaser--live--tag),
html:not(.can-touch) .FeaturedEventTeaser:active .FeaturedEventTeaser--footer,
html:not(.can-touch) .FeaturedEventTeaser:hover .FeaturedEventTeaser--title>*:not(.FeaturedEventTeaser--live--tag),
html:not(.can-touch) .FeaturedEventTeaser:hover .FeaturedEventTeaser--footer {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

.FeaturedEventTeaser--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    min-height: 410px;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    transition: box-shadow .2s cubic-bezier(.39, .575, .565, 1)
}

.FeaturedEventTeaser--background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-color: #3c4150
}

.FeaturedEventTeaser--background>.Media.image {
    height: 100%
}

.FeaturedEventTeaser--background:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(60, 65, 80, .4)
}

.FeaturedEventTeaser--tags {
    position: absolute;
    top: 20px;
    left: auto;
    right: 20px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.FeaturedEventTeaser--private--tag,
.FeaturedEventTeaser--live--tag {
    color: #fff;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    line-height: 1.25rem;
    vertical-align: middle;
    height: 50px;
    padding: 15px 31px;
    height: 3.125rem;
    padding: .9375rem 1.9375rem;
    display: inline-block;
    position: relative;
    max-width: 100%;
    text-align: center;
    overflow: visible;
    margin-left: 10px
}

.FeaturedEventTeaser--private--tag:before,
.FeaturedEventTeaser--live--tag:before {
    border: 1px solid #223362;
    background-color: #223362;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    transition: background-color .2s cubic-bezier(.39, .575, .565, 1), border-color .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: background-color .2s cubic-bezier(.39, .575, .565, 1), border-color .2s cubic-bezier(.39, .575, .565, 1), transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: background-color .2s cubic-bezier(.39, .575, .565, 1), border-color .2s cubic-bezier(.39, .575, .565, 1), transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.FeaturedEventTeaser--private--tag:hover:not([disabled]),
.FeaturedEventTeaser--private--tag:hover:enabled,
.FeaturedEventTeaser--live--tag:hover:not([disabled]),
.FeaturedEventTeaser--live--tag:hover:enabled {
    color: #223362
}

.FeaturedEventTeaser--private--tag:hover:not([disabled]):before,
.FeaturedEventTeaser--private--tag:hover:enabled:before,
.FeaturedEventTeaser--live--tag:hover:not([disabled]):before,
.FeaturedEventTeaser--live--tag:hover:enabled:before {
    background-color: #fff;
    border-color: #cce2e3;
    -webkit-transform: scale(1.025, 1.1);
    transform: scale(1.025, 1.1)
}

.FeaturedEventTeaser--private--tag:active:not([disabled]),
.FeaturedEventTeaser--private--tag:active:enabled,
.FeaturedEventTeaser--live--tag:active:not([disabled]),
.FeaturedEventTeaser--live--tag:active:enabled {
    color: #223362
}

.FeaturedEventTeaser--private--tag:active:not([disabled]):before,
.FeaturedEventTeaser--private--tag:active:enabled:before,
.FeaturedEventTeaser--live--tag:active:not([disabled]):before,
.FeaturedEventTeaser--live--tag:active:enabled:before {
    background-color: #fff;
    border-color: #cce2e3;
    -webkit-transform: scale(1.025, 1.1);
    transform: scale(1.025, 1.1)
}

[lang=zh] .FeaturedEventTeaser--private--tag,
[lang=zh-Hant] .FeaturedEventTeaser--private--tag,
[lang=zh-Hans] .FeaturedEventTeaser--private--tag,
[lang=zh-CN] .FeaturedEventTeaser--private--tag,
[lang=zh] .FeaturedEventTeaser--live--tag,
[lang=zh-Hant] .FeaturedEventTeaser--live--tag,
[lang=zh-Hans] .FeaturedEventTeaser--live--tag,
[lang=zh-CN] .FeaturedEventTeaser--live--tag {
    line-height: 1.5
}

.FeaturedEventTeaser--private--tag:before,
.FeaturedEventTeaser--live--tag:before {
    box-sizing: border-box;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 100px
}

.FeaturedEventTeaser--private--tag .Button--content,
.FeaturedEventTeaser--live--tag .Button--content {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: inline-block;
    position: relative;
    max-width: 100%;
    z-index: 1
}

.FeaturedEventTeaser--private--tag .Button--content>br,
.FeaturedEventTeaser--live--tag .Button--content>br {
    display: none
}

.FeaturedEventTeaser--private--tag span,
.FeaturedEventTeaser--live--tag span {
    position: relative
}

.FeaturedEventTeaser--private--tag:before,
.FeaturedEventTeaser--live--tag:before {
    background-color: rgba(0, 0, 0, .3);
    border-color: transparent
}

.FeaturedEventTeaser--content {
    color: #fff;
    margin-top: auto;
    padding: 34px;
    overflow: hidden
}

@media screen and (max-width:1000px) {
    .FeaturedEventTeaser--content {
        padding: 20px
    }
}

.FeaturedEventTeaser--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #fff;
    display: block;
    margin-bottom: 18px
}

[lang=zh] .FeaturedEventTeaser--category,
[lang=zh-Hant] .FeaturedEventTeaser--category,
[lang=zh-Hans] .FeaturedEventTeaser--category,
[lang=zh-CN] .FeaturedEventTeaser--category {
    line-height: 1.5
}

.FeaturedEventTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 1em
}

[lang=zh] .FeaturedEventTeaser--title,
[lang=zh-Hant] .FeaturedEventTeaser--title,
[lang=zh-Hans] .FeaturedEventTeaser--title,
[lang=zh-CN] .FeaturedEventTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .FeaturedEventTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.FeaturedEventTeaser--title>*:not(.FeaturedEventTeaser--live--tag) {
    display: block;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.FeaturedEventTeaser--footer {
    border-top: 1px solid rgba(255, 255, 255, .6);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

@media screen and (max-width:1000px) {
    .FeaturedEventTeaser--footer {
        border-top: none
    }
}

.FeaturedEventTeaser--info {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #fff;
    padding: 25px 34px;
    float: left;
    opacity: .8
}

[lang=zh] .FeaturedEventTeaser--info,
[lang=zh-Hant] .FeaturedEventTeaser--info,
[lang=zh-Hans] .FeaturedEventTeaser--info,
[lang=zh-CN] .FeaturedEventTeaser--info {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .FeaturedEventTeaser--info {
        padding: 20px;
        float: none;
        border-top: 1px solid rgba(255, 255, 255, .6)
    }
}

.FeaturedEventTeaser--link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.FiguresTeaser {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center
}

.FiguresTeaser--content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: auto
}

.FiguresTeaser--figureContainer {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
}

.FiguresTeaser--figure {
    font-size: 50px;
    font-size: 3.125rem;
    font-weight: 200;
    line-height: 1.16
}

@media screen and (max-width:1000px) {
    .FiguresTeaser--figure {
        font-size: 30px;
        font-size: 1.875rem;
        line-height: 1.53333
    }
}

@media screen and (max-width:750px) {
    .FiguresTeaser--figure {
        font-size: 80px;
        font-size: 5rem;
        font-weight: 200;
        line-height: 1.1;
        font-size: 50px;
        font-size: 3.125rem;
        line-height: 1.14;
        font-size: 40px;
        font-size: 2.5rem;
        line-height: 1.15
    }
}

.FiguresTeaser.large .FiguresTeaser--figure {
    font-size: 80px;
    font-size: 5rem;
    font-weight: 200;
    line-height: 1.1
}

@media screen and (max-width:1000px) {
    .FiguresTeaser.large .FiguresTeaser--figure {
        font-size: 50px;
        font-size: 3.125rem;
        line-height: 1.14
    }
}

@media screen and (max-width:750px) {
    .FiguresTeaser.large .FiguresTeaser--figure {
        font-size: 40px;
        font-size: 2.5rem;
        line-height: 1.15
    }
}

.FiguresTeaser--term {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    margin-top: .75em
}

[lang=zh] .FiguresTeaser--term,
[lang=zh-Hant] .FiguresTeaser--term,
[lang=zh-Hans] .FiguresTeaser--term,
[lang=zh-CN] .FiguresTeaser--term {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .FiguresTeaser--term {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.FiguresTeaser--text {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200;
    margin-top: .8em
}

.FiguresTeaser--action {
    margin-top: 2em
}

.FiguresTeaserArea {
    margin-top: 120px;
    margin-bottom: 120px
}

@media screen and (max-width:1000px) {
    .FiguresTeaserArea {
        margin-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .FiguresTeaserArea {
        margin-top: 60px
    }
}

@media screen and (max-width:1000px) {
    .FiguresTeaserArea {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .FiguresTeaserArea {
        margin-bottom: 60px
    }
}

.FiguresTeaserArea .SectionContainer.gradient {
    padding-top: 120px
}

@media screen and (max-width:1000px) {
    .FiguresTeaserArea .SectionContainer.gradient {
        padding-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .FiguresTeaserArea .SectionContainer.gradient {
        padding-top: 60px
    }
}

.FiguresTeaserArea .TeaserSlider {
    position: relative
}

.FiguresTeaserArea .TeaserSlider::before,
.FiguresTeaserArea .TeaserSlider::after {
    width: calc(50% - 615px);
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 2
}

@media(max-width:1430px) {

    .FiguresTeaserArea .TeaserSlider::before,
    .FiguresTeaserArea .TeaserSlider::after {
        width: 75px
    }
}

@media screen and (max-width:1200px) {

    .FiguresTeaserArea .TeaserSlider::before,
    .FiguresTeaserArea .TeaserSlider::after {
        width: 60px
    }
}

@media screen and (max-width:750px) {

    .FiguresTeaserArea .TeaserSlider::before,
    .FiguresTeaserArea .TeaserSlider::after {
        width: 30px
    }
}

@media screen and (max-width:580px) {

    .FiguresTeaserArea .TeaserSlider::before,
    .FiguresTeaserArea .TeaserSlider::after {
        width: 20px
    }
}

@media print {

    .FiguresTeaserArea .TeaserSlider::before,
    .FiguresTeaserArea .TeaserSlider::after {
        max-width: 100%;
        margin: 0
    }
}

.FiguresTeaserArea .TeaserSlider::before {
    left: 0;
    background-image: linear-gradient(90deg, white, white 60%, rgba(255, 255, 255, 0) 100%)
}

.FiguresTeaserArea .TeaserSlider::after {
    right: 0;
    background-image: linear-gradient(-90deg, white, white 60%, rgba(255, 255, 255, 0) 100%)
}

@media(min-width:1431px) {
    .FiguresTeaserArea .TeaserSlider::before {
        left: auto;
        right: calc(50% + 615px);
        width: 75px
    }

    .FiguresTeaserArea .TeaserSlider::after {
        right: auto;
        left: calc(50% + 615px);
        width: 75px
    }

    .FiguresTeaserArea .TeaserSlider .TeaserSlider--inner::before,
    .FiguresTeaserArea .TeaserSlider .TeaserSlider--inner::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        width: calc(50% - 690px);
        background-color: #fff;
        z-index: 2
    }

    .FiguresTeaserArea .TeaserSlider .TeaserSlider--inner::before {
        left: 0
    }

    .FiguresTeaserArea .TeaserSlider .TeaserSlider--inner::after {
        right: 0
    }
}

@media screen and (min-width:751px) {
    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide {
        position: relative
    }

    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide::before {
        content: "";
        position: absolute;
        left: -15px;
        top: 0;
        width: 1px;
        height: 100%;
        background-color: #ececee;
        opacity: 0;
        transition: opacity .2s
    }

    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide.is-selected~.TeaserSlider--slide.is-selected::before,
    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide.is-selected~.TeaserSlider--slide.is-visible::before,
    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide.is-visible~.TeaserSlider--slide.is-selected::before,
    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide.is-visible~.TeaserSlider--slide.is-visible::before {
        opacity: 1
    }

    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide.is-selected~.TeaserSlider--slide.is-selected:first-of-type::before,
    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide.is-selected~.TeaserSlider--slide.is-visible:first-of-type::before,
    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide.is-visible~.TeaserSlider--slide.is-selected:first-of-type::before,
    .FiguresTeaserArea .TeaserSlider .TeaserSlider--slide.is-visible~.TeaserSlider--slide.is-visible:first-of-type::before {
        opacity: 0
    }
}

.FiguresTeaserArea .FiguresTeaser {
    max-width: 383px;
    margin: 0 auto
}

.GridTeaser {
    position: relative;
    padding-top: 70%;
    min-height: 100%;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    will-change: transform;
    overflow: hidden
}

.GridTeaser:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .0375);
    opacity: 0;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1)
}

.GridTeaser.medium {
    padding-top: 140%;
    padding-top: calc((200% + 30px) * 0.7)
}

.GridTeaser.large {
    padding-top: 70%
}

.GridTeaser.small .GridTeaser--text {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200
}

.GridTeaser.campaign .GridTeaser--content {
    padding-right: 90px
}

@media screen and (max-width:1000px) {
    .GridTeaser.campaign.large {
        padding-top: 140%
    }

    .GridTeaser.campaign .GridTeaser--text {
        display: block
    }
}

@media screen and (max-width:750px) {
    .GridTeaser.campaign .GridTeaser--content {
        padding-left: 20px
    }

    .GridTeaser.campaign .GridTeaser--arrowIcon {
        right: 20px
    }

    .GridTeaser.campaign .GridTeaser--text {
        font-size: 18px;
        font-size: 1.125rem;
        font-weight: 200
    }
}

@media screen and (min-width:581px) {

    html:not(.can-touch) .GridTeaser:active,
    html:not(.can-touch) .GridTeaser:hover {
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px)
    }

    html:not(.can-touch) .GridTeaser:active:after,
    html:not(.can-touch) .GridTeaser:hover:after {
        opacity: 1
    }

    html:not(.can-touch) .GridTeaser:active .GridTeaser--content,
    html:not(.can-touch) .GridTeaser:hover .GridTeaser--content {
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px)
    }

    html:not(.can-touch) .GridTeaser:active .GridTeaser--arrowIcon::before,
    html:not(.can-touch) .GridTeaser:hover .GridTeaser--arrowIcon::before {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
        border-color: transparent;
        background-color: rgba(255, 255, 255, .2)
    }
}

@media screen and (max-width:1000px) {
    .GridTeaser {
        padding-top: 50%
    }

    .GridTeaser.medium,
    .GridTeaser.large {
        padding-top: 50%
    }
}

@media screen and (max-width:580px) {
    .GridTeaser {
        padding-top: 70%;
        box-shadow: none
    }

    .GridTeaser.medium,
    .GridTeaser.large {
        padding-top: 70%
    }
}

.GridTeaser--content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    max-height: 100%;
    padding: 30px;
    color: #fff;
    z-index: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    will-change: transform
}

.GridTeaser--category {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #fff;
    display: block;
    margin-bottom: .5em;
    opacity: .8
}

[lang=zh] .GridTeaser--category,
[lang=zh-Hant] .GridTeaser--category,
[lang=zh-Hans] .GridTeaser--category,
[lang=zh-CN] .GridTeaser--category {
    line-height: 1.5
}

.GridTeaser--title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    word-wrap: break-word
}

[lang=zh] .GridTeaser--title,
[lang=zh-Hant] .GridTeaser--title,
[lang=zh-Hans] .GridTeaser--title,
[lang=zh-CN] .GridTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .GridTeaser--title {
        font-size: 18px;
        font-size: 1.125rem;
        font-size: 30px;
        font-size: 1.875rem;
        font-weight: 200;
        line-height: 1.26667;
        font-weight: 700
    }

    [lang=zh] .GridTeaser--title,
    [lang=zh-Hant] .GridTeaser--title,
    [lang=zh-Hans] .GridTeaser--title,
    [lang=zh-CN] .GridTeaser--title {
        line-height: 1.5
    }

    .GridTeaser--title {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.GridTeaser--text {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-top: .6em
}

@media screen and (max-width:1000px) {
    .GridTeaser--text {
        display: none
    }
}

.GridTeaser--arrowIcon {
    position: absolute;
    right: 30px;
    bottom: 30px
}

.GridTeaser--background {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    overflow: hidden
}

@media screen and (max-width:580px) {
    .GridTeaser--background {
        border-radius: 0
    }
}

.GridTeaser--background>.Media {
    height: 100%
}

.GridTeaser--background::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(60, 65, 80, .4)
}

.GridTeaser--link {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1
}

.GridTeaserArea--inner {
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px)
}

@media(max-width:1430px) {
    .GridTeaserArea--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .GridTeaserArea--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .GridTeaserArea--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .GridTeaserArea--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .GridTeaserArea--inner {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:580px) {
    .GridTeaserArea--inner {
        margin-left: 0;
        margin-right: 0
    }
}

.GridTeaserArea--grid {
    margin-bottom: 60px;
    display: -ms-grid;
    display: grid;
    grid-gap: 30px;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr)
}

@media screen and (max-width:1000px) {
    .GridTeaserArea--grid {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .GridTeaserArea--grid {
        margin-bottom: 30px
    }
}

@media screen and (max-width:1000px) {
    .GridTeaserArea--grid {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr
    }
}

@media screen and (max-width:580px) {
    .GridTeaserArea--grid {
        grid-gap: 0
    }
}

.GridTeaserArea--grid--item {
    grid-area: span 1/span 1
}

.GridTeaserArea--grid--item.medium {
    grid-area: span 2/span 1
}

.GridTeaserArea--grid--item.large {
    grid-area: span 2/span 2
}

@media screen and (max-width:1000px) {
    .GridTeaserArea--grid--item {
        grid-area: auto !important
    }

    .GridTeaserArea--grid--item.large.campaign {
        -webkit-order: -1;
        -ms-flex-order: -1;
        order: -1
    }
}

.HeroTeaser {
    width: 100%;
    height: 100%;
    color: #fff
}

.HeroTeaser--inner {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    padding-top: 240px;
    padding-bottom: 60px;
    margin-bottom: 100px;
    margin-bottom: 6.25rem;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0
}

@media(max-width:1430px) {
    .HeroTeaser--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .HeroTeaser--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .HeroTeaser--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .HeroTeaser--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .HeroTeaser--inner {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .HeroTeaser--inner {
        padding-top: 30vw
    }
}

@media screen and (max-width:400px) {
    .HeroTeaser--inner {
        padding-top: 120px
    }
}

@media screen and (max-width:1000px) {
    .HeroTeaser--inner {
        padding-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .HeroTeaser--inner {
        padding-bottom: 30px
    }
}

@media screen and (max-width:1382px) {
    .HeroTeaser--inner {
        padding-bottom: 15px
    }
}

@media screen and (max-width:750px) {
    .HeroTeaser--inner {
        padding-top: 150px;
        padding-bottom: 0;
        margin-bottom: 45px
    }
}

@media screen and (max-width:580px) {
    .HeroTeaser--inner {
        margin-bottom: 60px
    }
}

.HeroTeaser--header {
    width: 80%
}

@media screen and (max-width:1000px) {
    .HeroTeaser--header {
        width: 90%
    }
}

@media screen and (max-width:750px) {
    .HeroTeaser--header {
        width: 100%
    }
}

.HeroTeaser--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    display: block;
    margin-bottom: 1em;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, .75);
    letter-spacing: .05ex
}

[lang=zh] .HeroTeaser--category,
[lang=zh-Hant] .HeroTeaser--category,
[lang=zh-Hans] .HeroTeaser--category,
[lang=zh-CN] .HeroTeaser--category {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .HeroTeaser--category {
        margin-bottom: .5em
    }
}

.HeroTeaser--preTitle {
    font-size: 50px;
    font-size: 3.125rem;
    font-weight: 200;
    line-height: 1.16;
    font-weight: 200;
    display: block;
    text-shadow: 0 2px 20px rgba(0, 0, 0, .5)
}

@media screen and (max-width:1000px) {
    .HeroTeaser--preTitle {
        font-size: 30px;
        font-size: 1.875rem;
        line-height: 1.53333
    }
}

.HeroTeaser--title {
    font-size: 50px;
    font-size: 3.125rem;
    font-weight: 200;
    line-height: 1.16;
    width: 60%;
    display: block;
    margin-bottom: .5em;
    text-shadow: 0 2px 20px rgba(0, 0, 0, .5)
}

@media screen and (max-width:1000px) {
    .HeroTeaser--title {
        font-size: 30px;
        font-size: 1.875rem;
        line-height: 1.53333
    }
}

@media screen and (max-width:1382px) {
    .HeroTeaser--title {
        font-size: 30px;
        font-size: 1.875rem;
        width: 70%;
        line-height: 1.3
    }
}

@media screen and (max-width:750px) {
    .HeroTeaser--title {
        width: 100%
    }
}

.HeroTeaser--text {
    width: 50%;
    margin-bottom: 30px;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, .75)
}

@media screen and (max-width:1382px) {
    .HeroTeaser--text {
        width: 60%;
        margin-bottom: 15px
    }
}

@media screen and (max-width:1200px) {
    .HeroTeaser--text {
        width: 70%
    }
}

@media screen and (max-width:750px) {
    .HeroTeaser--text {
        width: 100%;
        margin-bottom: 15px
    }
}

@media screen and (max-width:580px) {
    .HeroTeaser--text {
        font-size: 18px;
        font-size: 1.125rem;
        font-weight: 200;
        margin-bottom: 30px
    }
}

.HeroTeaser--cta {
    position: relative;
    z-index: 1;
    pointer-events: none
}

.HeroTeaser--cta .Button {
    pointer-events: auto
}

.HeroTeaser--link {
    top: 240px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%
}

@media screen and (max-width:1000px) {
    .HeroTeaser--link {
        top: 30vw
    }
}

@media screen and (max-width:400px) {
    .HeroTeaser--link {
        top: 120px
    }
}

@media screen and (max-width:750px) {
    .HeroTeaser--link {
        top: 150px
    }
}

.HeroTeaser--background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    opacity: 0
}

.HeroTeaser--background>.Media {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.HeroTeaser--background::before,
.HeroTeaser--background::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3
}

.HeroTeaser--background::before {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.7) 100%)
}

.HeroTeaser--background::after {
    background-color: rgba(60, 65, 80, .2)
}

.HeroTeaserArea {
    margin-bottom: 120px;
    height: 54.6875rem;
    max-height: calc(100vh - 90px);
    min-height: 37.5rem;
    overflow: hidden
}

@media screen and (max-width:1000px) {
    .HeroTeaserArea {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .HeroTeaserArea {
        margin-bottom: 60px
    }
}

@media screen and (max-width:1200px) {
    .HeroTeaserArea {
        height: 48.4375rem;
        max-height: 85vh
    }
}

@media screen and (max-width:750px) {
    .HeroTeaserArea {
        height: 150vw
    }
}

.HeroTeaserArea.has-boxteaser {
    margin-bottom: 0
}

.HeroTeaserArea.has-boxteaser .HeroTeaser--background::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.25) 10%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0.3) 100%)
}

@media screen and (max-width:750px) {
    .HeroTeaserArea.has-boxteaser .HeroTeaser--background::after {
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.25) 10%, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.45) 100%)
    }
}

.HeroTeaserArea.has-boxteaser+.BoxTeaserArea {
    position: relative;
    z-index: 5
}

@media screen and (min-width:751px) {
    .HeroTeaserArea.has-boxteaser {
        height: 48.4375rem;
        max-height: 100vh;
        min-height: 43.75rem;
        margin-bottom: -60px
    }

    .HeroTeaserArea.has-boxteaser .HeroTeaser--inner {
        padding-bottom: 90px
    }

    .HeroTeaserArea.has-boxteaser .HeroTeaserSlider--nav {
        padding-bottom: 75px
    }
}

@media screen and (min-width:1001px) {
    .HeroTeaserArea.has-boxteaser {
        height: 60.3125rem;
        min-height: 46.875rem;
        margin-bottom: -90px
    }

    .HeroTeaserArea.has-boxteaser .HeroTeaser--inner {
        padding-bottom: 150px
    }

    .HeroTeaserArea.has-boxteaser .HeroTeaserSlider--nav {
        padding-bottom: 105px
    }
}

@media screen and (min-width:1383px) {
    .HeroTeaserArea.has-boxteaser .HeroTeaser--inner {
        padding-bottom: 120px
    }

    .HeroTeaserArea.has-boxteaser .HeroTeaserSlider--nav {
        padding-bottom: 90px
    }
}

.HeroTeaserSlider {
    position: relative;
    height: 100%;
    background-color: #000
}

.HeroTeaserSlider .flickity-page-dots {
    display: none;
    position: absolute;
    top: auto;
    left: 50%;
    bottom: 24px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 4
}

.HeroTeaserSlider .flickity-page-dots .dot:after {
    background: #fff;
    opacity: .6
}

.HeroTeaserSlider .flickity-page-dots .dot.is-selected:after {
    opacity: .8
}

@media screen and (max-width:750px) {
    .HeroTeaserSlider.is-draggable:not(.is-single) .flickity-page-dots {
        display: block
    }
}

.HeroTeaserSlider--inner {
    height: 100%
}

.HeroTeaserSlider--wrapper {
    height: 100%
}

@media screen and (min-width:751px) {
    .HeroTeaserSlider--wrapper {
        -webkit-transform: none !important;
        transform: none !important;
        left: 0 !important
    }
}

.HeroTeaserSlider--slide {
    width: 100%;
    height: 100%;
    transition: visibility 0s 1s
}

@media screen and (min-width:751px) {
    .HeroTeaserSlider--slide {
        left: 0 !important;
        visibility: hidden
    }
}

@media screen and (max-width:750px) {
    .HeroTeaserSlider--slide {
        transition: none
    }

    .HeroTeaserSlider--slide.is-after-visible,
    .HeroTeaserSlider--slide.is-before-visible {
        visibility: hidden
    }
}

.HeroTeaserSlider:not(.is-slider-ready) .HeroTeaserSlider--slide {
    visibility: hidden
}

.HeroTeaserSlider:not(.is-slider-ready) .HeroTeaserSlider--slide:first-of-type {
    visibility: visible
}

.HeroTeaserSlider:not(.is-slider-ready) .HeroTeaserSlider--slide:first-of-type .HeroTeaser--inner .HeroTeaser--category,
.HeroTeaserSlider:not(.is-slider-ready) .HeroTeaserSlider--slide:first-of-type .HeroTeaser--inner .HeroTeaser--title,
.HeroTeaserSlider:not(.is-slider-ready) .HeroTeaserSlider--slide:first-of-type .HeroTeaser--inner .HeroTeaser--preTitle,
.HeroTeaserSlider:not(.is-slider-ready) .HeroTeaserSlider--slide:first-of-type .HeroTeaser--inner .HeroTeaser--text,
.HeroTeaserSlider:not(.is-slider-ready) .HeroTeaserSlider--slide:first-of-type .HeroTeaser--inner .HeroTeaser--cta {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.HeroTeaserSlider:not(.is-slider-ready) .HeroTeaserSlider--slide:first-of-type .HeroTeaser--background {
    opacity: 1
}

.HeroTeaserSlider--slide .HeroTeaser--inner {
    z-index: 4
}

.HeroTeaserSlider--slide .HeroTeaser--category,
.HeroTeaserSlider--slide .HeroTeaser--preTitle,
.HeroTeaserSlider--slide .HeroTeaser--title,
.HeroTeaserSlider--slide .HeroTeaser--text,
.HeroTeaserSlider--slide .HeroTeaser--cta {
    -webkit-transform: translateY(15px);
    transform: translateY(15px);
    opacity: 0;
    transition: opacity .25s .5s, -webkit-transform 0s .75s;
    transition: opacity .25s .5s, transform 0s .75s;
    transition: opacity .25s .5s, transform 0s .75s, -webkit-transform 0s .75s;
    will-change: opacity, transform;
    transition-timing-function: cubic-bezier(.165, .84, .44, 1)
}

.is-slider-ready .HeroTeaserSlider--slide .HeroTeaser--background {
    opacity: 1
}

@media screen and (min-width:751px) {
    .HeroTeaserSlider--slide .HeroTeaser--background {
        will-change: opacity
    }
}

.HeroTeaserSlider--slide.is-selected {
    visibility: visible;
    transition: visibility 0s
}

.HeroTeaserSlider--slide.is-selected .HeroTeaser--category,
.HeroTeaserSlider--slide.is-selected .HeroTeaser--preTitle,
.HeroTeaserSlider--slide.is-selected .HeroTeaser--title,
.HeroTeaserSlider--slide.is-selected .HeroTeaser--text,
.HeroTeaserSlider--slide.is-selected .HeroTeaser--cta {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
    transition: opacity .5s cubic-bezier(.39, .575, .565, 1) 1s, -webkit-transform .5s cubic-bezier(.39, .575, .565, 1) 1s;
    transition: opacity .5s cubic-bezier(.39, .575, .565, 1) 1s, transform .5s cubic-bezier(.39, .575, .565, 1) 1s;
    transition: opacity .5s cubic-bezier(.39, .575, .565, 1) 1s, transform .5s cubic-bezier(.39, .575, .565, 1) 1s, -webkit-transform .5s cubic-bezier(.39, .575, .565, 1) 1s
}

.HeroTeaserSlider--slide.is-selected .HeroTeaser--title {
    transition-delay: 1.2s
}

.HeroTeaserSlider--slide.is-selected .HeroTeaser--text {
    transition-delay: 1.4s
}

.HeroTeaserSlider--slide.is-selected .HeroTeaser--cta {
    transition-delay: 1.6s
}

@media screen and (min-width:751px) {
    .HeroTeaserSlider--slide.is-selected:nth-child(n+2) .HeroTeaser--background {
        z-index: 1;
        -webkit-animation-name: heroteaser-bg-animation;
        animation-name: heroteaser-bg-animation;
        -webkit-animation-duration: 1.25s;
        animation-duration: 1.25s;
        -webkit-animation-iteration-count: 1;
        animation-iteration-count: 1;
        -webkit-animation-timing-function: cubic-bezier(.645, .045, .355, 1);
        animation-timing-function: cubic-bezier(.645, .045, .355, 1);
        -webkit-animation-fill-mode: none;
        animation-fill-mode: none
    }

    .is-paused .HeroTeaserSlider--slide {
        transition: visibility 0s .5s
    }

    .is-paused .HeroTeaserSlider--slide.is-selected {
        transition: visibility 0s
    }

    .is-paused .HeroTeaserSlider--slide .HeroTeaser--background {
        -webkit-animation-duration: .5s;
        animation-duration: .5s
    }
}

.is-paused .HeroTeaserSlider--slide .HeroTeaser--category,
.is-paused .HeroTeaserSlider--slide .HeroTeaser--preTitle,
.is-paused .HeroTeaserSlider--slide .HeroTeaser--title,
.is-paused .HeroTeaserSlider--slide .HeroTeaser--text,
.is-paused .HeroTeaserSlider--slide .HeroTeaser--cta {
    transition: opacity .25s cubic-bezier(.215, .61, .355, 1) 0s, -webkit-transform 0s .25s;
    transition: opacity .25s cubic-bezier(.215, .61, .355, 1) 0s, transform 0s .25s;
    transition: opacity .25s cubic-bezier(.215, .61, .355, 1) 0s, transform 0s .25s, -webkit-transform 0s .25s
}

.is-paused .HeroTeaserSlider--slide.is-selected .HeroTeaser--category,
.is-paused .HeroTeaserSlider--slide.is-selected .HeroTeaser--preTitle,
.is-paused .HeroTeaserSlider--slide.is-selected .HeroTeaser--title,
.is-paused .HeroTeaserSlider--slide.is-selected .HeroTeaser--text,
.is-paused .HeroTeaserSlider--slide.is-selected .HeroTeaser--cta {
    transition: opacity .375s cubic-bezier(.215, .61, .355, 1) .375s, -webkit-transform .375s cubic-bezier(.215, .61, .355, 1) .375s;
    transition: opacity .375s cubic-bezier(.215, .61, .355, 1) .375s, transform .375s cubic-bezier(.215, .61, .355, 1) .375s;
    transition: opacity .375s cubic-bezier(.215, .61, .355, 1) .375s, transform .375s cubic-bezier(.215, .61, .355, 1) .375s, -webkit-transform .375s cubic-bezier(.215, .61, .355, 1) .375s
}

.HeroTeaserSlider--slide:not(.is-visible) .Media.video.is-started video {
    visibility: hidden
}

.HeroTeaserSlider--nav {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    width: 100%;
    top: auto;
    left: 0;
    bottom: 0;
    z-index: 5;
    border-top: 1px solid rgba(255, 255, 255, .2)
}

@media(max-width:1430px) {
    .HeroTeaserSlider--nav {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .HeroTeaserSlider--nav {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .HeroTeaserSlider--nav {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .HeroTeaserSlider--nav {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .HeroTeaserSlider--nav {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:750px) {
    .HeroTeaserSlider--nav {
        display: none
    }
}

.HeroTeaserSlider--nav--element {
    position: relative;
    width: 33.3%;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
}

.HeroTeaserSlider--nav--link {
    padding-top: 22px;
    padding-bottom: 22px;
    display: block;
    width: 100%;
    overflow: visible;
    text-shadow: 0 0 5px rgba(0, 0, 0, .5);
    transition-property: none;
    transition-duration: 6s;
    -webkit-transform: translate3d(0, 0, 3px);
    transform: translate3d(0, 0, 3px)
}

.HeroTeaserSlider--nav--link[disabled] {
    opacity: 1
}

.HeroTeaserSlider--nav--link:before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #fff;
    transition: -webkit-transform .5s;
    transition: transform .5s;
    transition: transform .5s, -webkit-transform .5s;
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    will-change: transform;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}

.HeroTeaserSlider--nav--link.is-selected:before {
    background-color: #fff;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    transition-timing-function: linear;
    transition-duration: inherit;
    transition-delay: .5s
}

.is-paused .HeroTeaserSlider--nav--link:before {
    transition-delay: 0s;
    transition-duration: 0s
}

.is-paused .HeroTeaserSlider--nav--link.is-selected:before {
    transition-delay: 0s;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.77, 0, .175, 1)
}

html:not(.can-touch) .HeroTeaserSlider--nav--link:active .HeroTeaserSlider--nav--category,
html:not(.can-touch) .HeroTeaserSlider--nav--link:active .HeroTeaserSlider--nav--title,
html:not(.can-touch) .HeroTeaserSlider--nav--link:hover .HeroTeaserSlider--nav--category,
html:not(.can-touch) .HeroTeaserSlider--nav--link:hover .HeroTeaserSlider--nav--title {
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px)
}

@media screen and (max-width:1382px) {
    .HeroTeaserSlider--nav--link {
        padding-top: 17px;
        padding-bottom: 17px
    }
}

.HeroTeaserSlider--nav--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    font-weight: 400;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #fff;
    letter-spacing: .05ex;
    display: block;
    width: calc(100% - 30px)
}

[lang=zh] .HeroTeaserSlider--nav--category,
[lang=zh-Hant] .HeroTeaserSlider--nav--category,
[lang=zh-Hans] .HeroTeaserSlider--nav--category,
[lang=zh-CN] .HeroTeaserSlider--nav--category {
    line-height: 1.5
}

.HeroTeaserSlider--nav--category>br {
    display: none
}

.HeroTeaserSlider--nav--title {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    font-weight: 700;
    color: #fff;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    letter-spacing: .02ex;
    display: block;
    width: calc(100% - 30px)
}

[lang=zh] .HeroTeaserSlider--nav--title,
[lang=zh-Hant] .HeroTeaserSlider--nav--title,
[lang=zh-Hans] .HeroTeaserSlider--nav--title,
[lang=zh-CN] .HeroTeaserSlider--nav--title {
    line-height: 1.5
}

.HeroTeaserSlider--nav--title>br {
    display: none
}

.HeroTeaserSlider--nav--category,
.HeroTeaserSlider--nav--title {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.IconTeaser {
    text-align: center
}

.IconTeaser.round .IconTeaser--image {
    border-radius: 100%;
    overflow: hidden
}

.IconTeaser.small .IconTeaser--image {
    width: 48px;
    height: 48px
}

.IconTeaser--image {
    width: 100px;
    height: 100px;
    margin-bottom: 30px;
    margin-left: auto;
    margin-right: auto
}

.IconTeaser--image .Media {
    width: 100%;
    height: 100%;
    background-color: transparent
}

.IconTeaser--image .Media [data-sizes] {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center
}

.IconTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    width: 100%;
    max-width: 22em;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1.5em
}

[lang=zh] .IconTeaser--title,
[lang=zh-Hant] .IconTeaser--title,
[lang=zh-Hans] .IconTeaser--title,
[lang=zh-CN] .IconTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .IconTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.IconTeaser--text {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200;
    width: 100%;
    max-width: 22em;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px
}

.IconTeaser--text:last-child {
    margin-bottom: 0
}

.IconTeaserArea {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    margin-bottom: 180px
}

@media(max-width:1430px) {
    .IconTeaserArea {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .IconTeaserArea {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .IconTeaserArea {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .IconTeaserArea {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .IconTeaserArea {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .IconTeaserArea {
        margin-bottom: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .IconTeaserArea {
        margin-bottom: 90px
    }
}

.IconTeaserArea--grid {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: -30px;
    margin-top: -30px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.IconTeaserArea--grid>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 33.33333%;
    margin-top: 30px;
    padding-right: 30px
}

.IconTeaserArea--grid:after {
    content: '';
    display: table;
    clear: both
}

@media screen and (max-width:1000px) {
    .IconTeaserArea--grid {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        page-break-inside: avoid;
        margin-right: 0;
        margin-top: -90px
    }

    .IconTeaserArea--grid>* {
        float: left;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
        margin-top: 90px;
        padding-right: 0
    }

    .IconTeaserArea--grid:after {
        content: '';
        display: table;
        clear: both
    }
}

.IconTeaserSlider {
    position: relative;
    width: 100%;
    padding-bottom: 2px;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.IconTeaserSlider:not(.is-draggable) .IconTeaserSlider--controls {
    display: none
}

.IconTeaserSlider.steps {
    padding-left: 45px;
    padding-right: 45px
}

.IconTeaserSlider--wrapper {
    white-space: nowrap
}

@supports(display:flex) {
    .IconTeaserSlider--wrapper {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        white-space: inherit
    }
}

.IconTeaserSlider--slide {
    display: inline-block;
    white-space: normal;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 25%;
    width: calc((100% + 30px)/4 - 30px);
    margin-right: 30px;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    min-height: 100%
}

@supports(display:flex) {
    .IconTeaserSlider--slide {
        display: block;
        white-space: inherit
    }
}

.IconTeaserSlider--slide.is-slider-ready {
    visibility: hidden
}

.IconTeaserSlider--slide.was-visible,
.IconTeaserSlider--slide.is-visible {
    visibility: visible
}

.IconTeaserSlider.steps .IconTeaserSlider--slide {
    display: inline-block;
    white-space: normal;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 25%;
    width: calc((100% + 60px)/4 - 60px);
    margin-right: 60px
}

@supports(display:flex) {
    .IconTeaserSlider.steps .IconTeaserSlider--slide {
        display: block;
        white-space: inherit
    }
}

.IconTeaserSlider.steps .IconTeaserSlider--slide.is-slider-ready {
    visibility: hidden
}

.IconTeaserSlider.steps .IconTeaserSlider--slide.was-visible,
.IconTeaserSlider.steps .IconTeaserSlider--slide.is-visible {
    visibility: visible
}

.IconTeaserSlider.steps .IconTeaserSlider--slide:not(:last-child) {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.IconTeaserSlider.steps .IconTeaserSlider--slide:not(:last-child):after {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    width: .585em;
    height: .585em;
    border-width: 1px;
    border-style: solid none none solid;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(0) translateX(50%) rotate(135deg);
    transform: rotate(0) translateX(50%) rotate(135deg)
}

.IconTeaserSlider.steps .IconTeaserSlider--slide:not(:last-child):before {
    content: "";
    position: absolute;
    font-size: 10px;
    top: 50%;
    content: none
}

.IconTeaserSlider.steps .IconTeaserSlider--slide:not(:last-child):after {
    top: 92px;
    right: -40px;
    border-width: 2px;
    font-size: 14px;
    color: #223362
}

@media screen and (max-width:1000px) {
    .IconTeaserSlider.steps .IconTeaserSlider--slide:not(:last-child):after {
        top: 90px
    }
}

.IconTeaserSlider--slide .IconTeaser {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 100%;
    width: 100%
}

.IconTeaserSlider--slide .IconTeaser .IconTeaser--cta {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: auto
}

@media screen and (min-width:1383px) {
    .IconTeaserSlider.grid3 .IconTeaserSlider--slide {
        width: 33.33333%;
        width: calc((100% + 30px)/3 - 30px);
        margin-right: 30px
    }

    .IconTeaserSlider.grid3.steps .IconTeaserSlider--slide {
        width: 33.33333%;
        width: calc((100% + 60px)/3 - 60px);
        margin-right: 60px
    }
}

@media screen and (max-width:1382px) {
    .IconTeaserSlider--slide {
        width: 33.33333%;
        width: calc((100% + 30px)/3 - 30px);
        margin-right: 30px
    }

    .IconTeaserSlider.steps .IconTeaserSlider--slide {
        width: 33.33333%;
        width: calc((100% + 60px)/3 - 60px);
        margin-right: 60px
    }
}

@media screen and (max-width:1000px) {
    .IconTeaserSlider--slide {
        width: 50%;
        width: calc((100% + 30px)/2 - 30px);
        margin-right: 30px
    }

    .IconTeaserSlider.steps .IconTeaserSlider--slide {
        width: 50%;
        width: calc((100% + 60px)/2 - 60px);
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .IconTeaserSlider--slide {
        width: 100%;
        width: calc((100% + 15px)/1 - 15px);
        margin-right: 15px
    }

    .IconTeaserSlider.steps .IconTeaserSlider--slide {
        width: 100%;
        width: calc((100% + 60px)/1 - 60px);
        margin-right: 60px
    }
}

.IconTeaserSlider--controls {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    padding-bottom: 3px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    z-index: 3
}

.IconTeaserSlider--controls .RoundIconButton {
    display: block;
    margin-left: 4px;
    margin-right: 4px
}

.IconTeaserSliderArea {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px)
}

@media(max-width:1430px) {
    .IconTeaserSliderArea {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .IconTeaserSliderArea {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .IconTeaserSliderArea {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .IconTeaserSliderArea {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .IconTeaserSliderArea {
        max-width: 100%;
        margin: 0
    }
}

.ImageTextTeaser {
    position: relative
}

@media screen and (min-width:1001px) {
    .ImageTextTeaser .SectionContainer.gradient {
        margin-bottom: 180px
    }
}

.ImageTextTeaser .SectionContainer.gradient::before {
    max-width: 1230px
}

@media(max-width:1430px) {
    .ImageTextTeaser .SectionContainer.gradient::before {
        max-width: calc(100% - 120px)
    }
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser .SectionContainer.gradient::before {
        max-width: 100%
    }
}

.ImageTextTeaser .SectionContainer.gradient::after {
    width: 285px;
    content: "";
    position: absolute;
    top: 0;
    left: auto;
    right: 0;
    height: 100%;
    padding-right: calc(50% - 615px);
    z-index: -1;
    background-color: #fff
}

@media(max-width:1430px) {
    .ImageTextTeaser .SectionContainer.gradient::after {
        width: calc(((100vw - 150px + 30px)/4) - 30px)
    }
}

@media screen and (max-width:1200px) {
    .ImageTextTeaser .SectionContainer.gradient::after {
        width: calc(((100vw - 120px + 30px)/4) - 30px)
    }
}

@media(max-width:1430px) {
    .ImageTextTeaser .SectionContainer.gradient::after {
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .ImageTextTeaser .SectionContainer.gradient::after {
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .ImageTextTeaser .SectionContainer.gradient::after {
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .ImageTextTeaser .SectionContainer.gradient::after {
        padding-right: 20px
    }
}

@media print {
    .ImageTextTeaser .SectionContainer.gradient::after {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser .SectionContainer.gradient::after {
        display: none
    }

    .ImageTextTeaser .SectionContainer {
        margin-top: 0;
        padding-top: 0
    }
}

.ImageTextTeaser.left .ImageTextTeaser--content {
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser.left .ImageTextTeaser--content {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

.ImageTextTeaser.left .SectionContainer.gradient::after {
    padding-left: calc(50% - 615px);
    left: 0;
    right: auto;
    padding-right: 0
}

@media(max-width:1430px) {
    .ImageTextTeaser.left .SectionContainer.gradient::after {
        padding-left: 75px
    }
}

@media screen and (max-width:1200px) {
    .ImageTextTeaser.left .SectionContainer.gradient::after {
        padding-left: 60px
    }
}

@media screen and (max-width:750px) {
    .ImageTextTeaser.left .SectionContainer.gradient::after {
        padding-left: 30px
    }
}

@media screen and (max-width:580px) {
    .ImageTextTeaser.left .SectionContainer.gradient::after {
        padding-left: 20px
    }
}

@media print {
    .ImageTextTeaser.left .SectionContainer.gradient::after {
        max-width: 100%;
        margin: 0
    }
}

.ImageTextTeaser.left .ImageTextTeaser--teaser--inner {
    padding-left: 60px
}

@media screen and (max-width:750px) {
    .ImageTextTeaser.left .ImageTextTeaser--teaser--inner {
        padding: 0 30px
    }
}

@media screen and (max-width:580px) {
    .ImageTextTeaser.left .ImageTextTeaser--teaser--inner {
        padding: 0 20px
    }
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser .SectionTitle--headline {
        margin-bottom: 30px
    }
}

.ImageTextTeaser--inner {
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px)
}

@media(max-width:1430px) {
    .ImageTextTeaser--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .ImageTextTeaser--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .ImageTextTeaser--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .ImageTextTeaser--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .ImageTextTeaser--inner {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser--inner {
        padding-top: 0;
        margin: 0
    }
}

.ImageTextTeaser--content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: -30px;
    margin-top: 0;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.ImageTextTeaser--content>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 50%;
    margin-top: 0;
    padding-right: 30px
}

.ImageTextTeaser--content:after {
    content: '';
    display: table;
    clear: both
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser--content {
        margin-right: 0;
        margin-top: 0;
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }

    .ImageTextTeaser--content>* {
        padding-right: 0;
        margin-top: 0
    }

    .ImageTextTeaser--teaser {
        width: 100%
    }
}

.ImageTextTeaser--teaser--inner {
    padding: 0 90px
}

@media(max-width:1430px) {
    .ImageTextTeaser--teaser--inner {
        padding: 0 60px
    }
}

@media screen and (max-width:750px) {
    .ImageTextTeaser--teaser--inner {
        padding: 0 30px
    }
}

@media screen and (max-width:580px) {
    .ImageTextTeaser--teaser--inner {
        padding: 0 20px
    }
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser--image {
        margin-bottom: 60px;
        width: 100%;
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .ImageTextTeaser--image {
        margin-bottom: 30px
    }
}

.ImageTextTeaser--image--inner {
    position: relative
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser--image--inner {
        overflow: hidden;
        max-height: 30vh;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center
    }
}

.ImageTextTeaser--image--inner>.Media {
    width: 100%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    border-radius: 4px;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2)
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser--image--inner>.Media {
        border-radius: 0;
        box-shadow: none
    }
}

.ImageTextTeaser--image--link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: transparent;
    border-radius: 4px;
    transition: background-color .2s ease-out
}

.ImageTextTeaser--image--link .Icon {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-45%, -50%);
    transform: translate(-45%, -50%)
}

.ImageTextTeaser--image--link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    height: 70px;
    width: 70px;
    margin-top: -35px;
    margin-left: -35px;
    border-radius: 100%;
    background-color: #fff;
    transition: -webkit-transform .2s ease-out;
    transition: transform .2s ease-out;
    transition: transform .2s ease-out, -webkit-transform .2s ease-out
}

html:not(.can-touch) .ImageTextTeaser--image--link:active,
html:not(.can-touch) .ImageTextTeaser--image--link:hover {
    background-color: rgba(0, 0, 0, .3)
}

html:not(.can-touch) .ImageTextTeaser--image--link:active::before,
html:not(.can-touch) .ImageTextTeaser--image--link:hover::before {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

@media screen and (max-width:580px) {
    .ImageTextTeaser--image--link .Icon {
        -webkit-transform: translate(-50%, -50%) scale(.75);
        transform: translate(-50%, -50%) scale(.75)
    }

    .ImageTextTeaser--image--link::before {
        -webkit-transform: scale(.75);
        transform: scale(.75)
    }
}

.ImageTextTeaser--text {
    margin-bottom: 36px
}

.ImageTextTeaser--text p {
    margin-top: 1em;
    margin-bottom: 1em;
    color: #3c4150
}

.ImageTextTeaser--text ul {
    margin: 1em 0;
    display: block
}

.ImageTextTeaser--text ul>li {
    padding-left: 25px;
    padding-left: 1.5625rem;
    position: relative;
    list-style-type: none;
    margin-bottom: .75ex;
    text-align: left;
    color: #3c4150
}

.ImageTextTeaser--text ul>li:before {
    position: absolute;
    left: 0;
    display: inline-block;
    content: "\2022";
    color: #636363
}

.ImageTextTeaser--text ol {
    margin: 1em 0;
    display: block;
    display: block;
    counter-reset: ol--counter
}

.ImageTextTeaser--text ol>li {
    padding-left: 25px;
    padding-left: 1.5625rem;
    position: relative;
    list-style-type: none;
    margin-bottom: .75ex;
    text-align: left;
    color: #3c4150
}

.ImageTextTeaser--text ol>li:before {
    position: absolute;
    left: 0;
    display: inline-block;
    content: "\2022";
    color: #636363
}

.ImageTextTeaser--text ol>li {
    list-style-type: none;
    padding-left: 20px;
    padding-left: 1.25rem;
    margin-left: 4ex
}

.ImageTextTeaser--text ol>li:before {
    counter-increment: ol--counter;
    content: counters(ol--counter, ".") ".";
    left: auto;
    right: 100%;
    text-align: right;
    width: 4ex
}

html.ie .ImageTextTeaser--text ol>li {
    list-style: decimal inside none
}

.ImageTextTeaser--text li>:first-child {
    margin-top: 0
}

.ImageTextTeaser--text li>:last-child {
    margin-bottom: 0
}

.ImageTextTeaser--text table {
    border-collapse: collapse;
    border-spacing: 0;
    overflow: hidden;
    float: none;
    width: 100%
}

.ImageTextTeaser--text table caption {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667;
    padding: 1em 0
}

[lang=zh] .ImageTextTeaser--text table caption,
[lang=zh-Hant] .ImageTextTeaser--text table caption,
[lang=zh-Hans] .ImageTextTeaser--text table caption,
[lang=zh-CN] .ImageTextTeaser--text table caption {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ImageTextTeaser--text table caption {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

.ImageTextTeaser--text table thead {
    background-color: #f9f9fa
}

.ImageTextTeaser--text table tfoot tr {
    border-bottom: none
}

.ImageTextTeaser--text table tr {
    border-top: 1px solid #d4d4d4;
    border-bottom: 1px solid #d4d4d4
}

.ImageTextTeaser--text table th {
    font-weight: 700
}

.ImageTextTeaser--text table th [data-picto] {
    margin-bottom: 5px
}

.ImageTextTeaser--text table th [data-picto]>svg {
    height: 22px
}

.ImageTextTeaser--text table th,
.ImageTextTeaser--text table td {
    padding: 1.2em;
    vertical-align: top;
    border-left: 1px solid #d4d4d4;
    border-right: 1px solid #d4d4d4
}

@media screen and (max-width:1200px) {

    .ImageTextTeaser--text table th,
    .ImageTextTeaser--text table td {
        padding: 1em
    }
}

@media screen and (max-width:750px) {

    .ImageTextTeaser--text table th,
    .ImageTextTeaser--text table td {
        padding: .5em 1em
    }
}

.ImageTextTeaser--text table th:first-child,
.ImageTextTeaser--text table td:first-child {
    border-left: none
}

.ImageTextTeaser--text table th:last-child,
.ImageTextTeaser--text table td:last-child {
    border-right: none
}

.ImageTextTeaser--text table a:not([class]) {
    color: #223362;
    border-bottom: 1px solid;
    transition: border-color .1s cubic-bezier(.39, .575, .565, 1)
}

.template-red .ImageTextTeaser--text table a:not([class]) {
    color: #9b14b4
}

.template-green .ImageTextTeaser--text table a:not([class]) {
    color: #1455b4
}

.template-blue .ImageTextTeaser--text table a:not([class]) {
    color: #1455b4
}

.template-purple .ImageTextTeaser--text table a:not([class]) {
    color: #9b14b4
}

.template-violet .ImageTextTeaser--text table a:not([class]) {
    color: #9b14b4
}

html:not(.can-touch) .ImageTextTeaser--text table a:not([class]):active,
html:not(.can-touch) .ImageTextTeaser--text table a:not([class]):hover {
    border-color: #cce2e3
}

html.template-red:not(.can-touch) .ImageTextTeaser--text table a:not([class]):active,
html.template-red:not(.can-touch) .ImageTextTeaser--text table a:not([class]):hover {
    border-color: rgba(255, 160, 47, .5)
}

html.template-green:not(.can-touch) .ImageTextTeaser--text table a:not([class]):active,
html.template-green:not(.can-touch) .ImageTextTeaser--text table a:not([class]):hover {
    border-color: rgba(201, 221, 3, .5)
}

html.template-blue:not(.can-touch) .ImageTextTeaser--text table a:not([class]):active,
html.template-blue:not(.can-touch) .ImageTextTeaser--text table a:not([class]):hover {
    border-color: rgba(145, 200, 255, .5)
}

html.template-violet:not(.can-touch) .ImageTextTeaser--text table a:not([class]):active,
html.template-violet:not(.can-touch) .ImageTextTeaser--text table a:not([class]):hover {
    border-color: rgba(250, 140, 255, .5)
}

.ImageTextTeaser--text table p {
    margin-top: 0
}

.ImageTextTeaser--text table p:last-child {
    margin-bottom: 0
}

.ImageTextTeaser--text table tr.is-highlighted {
    background-color: rgba(249, 249, 250, .8)
}

.ImageTextTeaser--text table th.is-highlighted {
    background-color: #e6f1f1;
    color: #223362
}

.ImageTextTeaser--text s {
    text-decoration: line-through
}

.ImageTextTeaser--text u {
    text-decoration: none
}

.ImageTextTeaser--text em {
    font-style: italic
}

.ImageTextTeaser--text small {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4
}

[lang=zh] .ImageTextTeaser--text small,
[lang=zh-Hant] .ImageTextTeaser--text small,
[lang=zh-Hans] .ImageTextTeaser--text small,
[lang=zh-CN] .ImageTextTeaser--text small {
    line-height: 1.5
}

.ImageTextTeaser--text strong,
.ImageTextTeaser--text b {
    font-weight: 700
}

.ImageTextTeaser--text a:not([class]) {
    color: #223362;
    border-bottom: 1px solid;
    transition: border-color .1s cubic-bezier(.39, .575, .565, 1)
}

.template-red .ImageTextTeaser--text a:not([class]) {
    color: #9b14b4
}

.template-green .ImageTextTeaser--text a:not([class]) {
    color: #1455b4
}

.template-blue .ImageTextTeaser--text a:not([class]) {
    color: #1455b4
}

.template-purple .ImageTextTeaser--text a:not([class]) {
    color: #9b14b4
}

.template-violet .ImageTextTeaser--text a:not([class]) {
    color: #9b14b4
}

html:not(.can-touch) .ImageTextTeaser--text a:not([class]):active,
html:not(.can-touch) .ImageTextTeaser--text a:not([class]):hover {
    border-color: #cce2e3
}

html.template-red:not(.can-touch) .ImageTextTeaser--text a:not([class]):active,
html.template-red:not(.can-touch) .ImageTextTeaser--text a:not([class]):hover {
    border-color: rgba(255, 160, 47, .5)
}

html.template-green:not(.can-touch) .ImageTextTeaser--text a:not([class]):active,
html.template-green:not(.can-touch) .ImageTextTeaser--text a:not([class]):hover {
    border-color: rgba(201, 221, 3, .5)
}

html.template-blue:not(.can-touch) .ImageTextTeaser--text a:not([class]):active,
html.template-blue:not(.can-touch) .ImageTextTeaser--text a:not([class]):hover {
    border-color: rgba(145, 200, 255, .5)
}

html.template-violet:not(.can-touch) .ImageTextTeaser--text a:not([class]):active,
html.template-violet:not(.can-touch) .ImageTextTeaser--text a:not([class]):hover {
    border-color: rgba(250, 140, 255, .5)
}

.ImageTextTeaser--text>*:first-child {
    margin-top: 0
}

.ImageTextTeaser--buttons {
    margin-top: -8px
}

.ImageTextTeaser--buttons>.Button {
    margin-top: 8px
}

.ImmersiveTeaser {
    position: relative;
    width: 100%;
    height: 800px;
    max-height: 90vh;
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    text-align: center
}

.ImmersiveTeaser .SectionTitle {
    margin-bottom: 0;
    text-align: center
}

.ImmersiveTeaser .SectionTitle--content {
    padding-left: 60px;
    padding-right: 60px;
    color: #fff
}

@media(max-width:1430px) {
    .ImmersiveTeaser {
        padding-left: 110px;
        padding-right: 110px
    }
}

@media screen and (max-width:750px) {
    .ImmersiveTeaser {
        height: 177vw;
        max-height: none;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        padding-top: 105px;
        padding-left: 20px;
        padding-right: 20px
    }

    .ImmersiveTeaser .SectionTitle--content {
        font-size: 18px;
        font-size: 1.125rem;
        font-weight: 200
    }
}

.ImmersiveTeaser--text {
    width: 50%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    position: relative;
    z-index: 1
}

@media screen and (max-width:1200px) {
    .ImmersiveTeaser--text {
        width: 50%
    }
}

@media screen and (max-width:750px) {
    .ImmersiveTeaser--text {
        width: 100%
    }
}

.ImmersiveTeaser--text .ImmersiveTeaser--counter,
.ImmersiveTeaser--text .SectionTitle--headline,
.ImmersiveTeaser--text .SectionTitle--content,
.ImmersiveTeaser--text .Button {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    transition: opacity .2s, -webkit-transform 0s .2s;
    transition: opacity .2s, transform 0s .2s;
    transition: opacity .2s, transform 0s .2s, -webkit-transform 0s .2s
}

.ImmersiveTeaserArea--slide.is-selected .ImmersiveTeaser--text .ImmersiveTeaser--counter,
.ImmersiveTeaserArea--slide.is-selected .ImmersiveTeaser--text .SectionTitle--headline,
.ImmersiveTeaserArea--slide.is-selected .ImmersiveTeaser--text .SectionTitle--content,
.ImmersiveTeaserArea--slide.is-selected .ImmersiveTeaser--text .Button {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: opacity .4s .4s, -webkit-transform .4s .4s;
    transition: opacity .4s .4s, transform .4s .4s;
    transition: opacity .4s .4s, transform .4s .4s, -webkit-transform .4s .4s
}

.ImmersiveTeaserArea--slide.is-selected .ImmersiveTeaser--text .SectionTitle--headline {
    transition-delay: .4s .5s, .4s .5s
}

.ImmersiveTeaserArea--slide.is-selected .ImmersiveTeaser--text .SectionTitle--content {
    transition-delay: .4s .6s, .4s .6s
}

.ImmersiveTeaserArea--slide.is-selected .ImmersiveTeaser--text .Button {
    transition-delay: .4s .7s, .4s .7s
}

.ImmersiveTeaser--cta {
    margin-top: 45px
}

@media screen and (max-width:750px) {
    .ImmersiveTeaser--cta {
        margin-top: 30px
    }
}

.ImmersiveTeaser--counter {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 15px
}

[lang=zh] .ImmersiveTeaser--counter,
[lang=zh-Hant] .ImmersiveTeaser--counter,
[lang=zh-Hans] .ImmersiveTeaser--counter,
[lang=zh-CN] .ImmersiveTeaser--counter {
    line-height: 1.5
}

.ImmersiveTeaser--counter--total {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-left: .125em;
    color: rgba(255, 255, 255, .6)
}

.ImmersiveTeaser--counter--total::before {
    content: '/';
    margin-right: .125em
}

.ImmersiveTeaser--background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0;
    transition: opacity 1s, -webkit-transform 0s 1s;
    transition: opacity 1s, transform 0s 1s;
    transition: opacity 1s, transform 0s 1s, -webkit-transform 0s 1s
}

.ImmersiveTeaserArea--slide.is-selected .ImmersiveTeaser--background {
    opacity: 1;
    transition: opacity 1s, -webkit-transform 18s;
    transition: opacity 1s, transform 18s;
    transition: opacity 1s, transform 18s, -webkit-transform 18s
}

.ImmersiveTeaser--background:not(.video) {
    -webkit-transform: translate(5%, -5%) scale(1.1);
    transform: translate(5%, -5%) scale(1.1)
}

.ImmersiveTeaserArea--slide.is-selected .ImmersiveTeaser--background:not(.video) {
    -webkit-transform: translate(-1%, 1%) scale(1.02);
    transform: translate(-1%, 1%) scale(1.02)
}

.ImmersiveTeaser--background .Media {
    width: 100%;
    height: 100%;
    opacity: .4
}

.ImmersiveTeaserArea {
    margin-top: 120px;
    margin-bottom: 120px;
    position: relative
}

@media screen and (max-width:1000px) {
    .ImmersiveTeaserArea {
        margin-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .ImmersiveTeaserArea {
        margin-top: 60px
    }
}

@media screen and (max-width:1000px) {
    .ImmersiveTeaserArea {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .ImmersiveTeaserArea {
        margin-bottom: 60px
    }
}

.ImmersiveTeaserArea:last-child {
    margin-bottom: 0
}

.l-Page.campaign .ImmersiveTeaserArea {
    margin-bottom: 180px;
    margin-top: 0
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .ImmersiveTeaserArea {
        margin-bottom: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .ImmersiveTeaserArea {
        margin-bottom: 90px
    }
}

.ImmersiveTeaserArea--wrapper {
    -webkit-transform: none !important;
    transform: none !important
}

.ImmersiveTeaserArea--slider {
    position: relative;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    overflow: hidden
}

.ImmersiveTeaserArea--slide {
    width: 100%;
    left: 120% !important;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    visibility: hidden
}

.ImmersiveTeaserArea--slider.is-slider-ready .ImmersiveTeaserArea--slide {
    visibility: visible;
    transition: left 0s 1s
}

.ImmersiveTeaserArea--slider.is-slider-ready .ImmersiveTeaserArea--slide.is-selected {
    left: 0 !important;
    transition: left 0s 0s;
    z-index: 9
}

@media screen and (max-width:750px) {
    .ImmersiveTeaserArea--slider--controls {
        position: absolute;
        bottom: 60px;
        left: 0;
        width: 100%;
        z-index: 9;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

.ImmersiveTeaserArea--slider--controls .js-slider--prev,
.ImmersiveTeaserArea--slider--controls .js-slider--next {
    position: absolute;
    top: 50%;
    left: 20px;
    z-index: 9;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media screen and (max-width:750px) {

    .ImmersiveTeaserArea--slider--controls .js-slider--prev,
    .ImmersiveTeaserArea--slider--controls .js-slider--next {
        position: relative;
        -webkit-transform: none;
        transform: none;
        top: 0;
        left: auto;
        margin-right: 3px
    }
}

.ImmersiveTeaserArea--slider--controls .js-slider--next {
    left: auto;
    right: 20px
}

@media screen and (max-width:750px) {
    .ImmersiveTeaserArea--slider--controls .js-slider--next {
        right: auto;
        margin-left: 3px;
        margin-right: 0
    }
}

.JobTeaser {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    padding-top: 30px;
    padding-bottom: 26px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    transition: background-color .2s cubic-bezier(.39, .575, .565, 1)
}

@media(max-width:1430px) {
    .JobTeaser {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .JobTeaser {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .JobTeaser {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .JobTeaser {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .JobTeaser {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:750px) {
    .JobTeaser {
        -webkit-align-items: flex-end;
        -ms-flex-align: end;
        align-items: flex-end
    }
}

@media screen and (max-width:580px) {
    .JobTeaser {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

html:not(.can-touch) .JobTeaser:active,
html:not(.can-touch) .JobTeaser:hover {
    background-color: #f9f9fa
}

.JobTeaser--main {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding-right: 15px
}

@media screen and (max-width:580px) {
    .JobTeaser--main {
        -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
        align-self: flex-start
    }
}

.JobTeaser--department {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 8px;
    color: #223362
}

[lang=zh] .JobTeaser--department,
[lang=zh-Hant] .JobTeaser--department,
[lang=zh-Hans] .JobTeaser--department,
[lang=zh-CN] .JobTeaser--department {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .JobTeaser--department {
        margin-bottom: 5px
    }
}

.JobTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    font-weight: 700
}

[lang=zh] .JobTeaser--title,
[lang=zh-Hant] .JobTeaser--title,
[lang=zh-Hans] .JobTeaser--title,
[lang=zh-CN] .JobTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .JobTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.JobTeaser--location {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #b1b3b9;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

[lang=zh] .JobTeaser--location,
[lang=zh-Hant] .JobTeaser--location,
[lang=zh-Hans] .JobTeaser--location,
[lang=zh-CN] .JobTeaser--location {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .JobTeaser--location {
        margin-bottom: 1px
    }
}

@media screen and (max-width:580px) {
    .JobTeaser--location {
        margin-top: 5px
    }
}

.JobTeaser--link {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.JobTeaserList--item {
    border-bottom: 1px solid #d4d4d4
}

.JobTeaserSliderArea .TeaserSlider {
    padding-left: 0;
    padding-right: 0
}

.JobTeaserSliderArea--searchheader {
    padding-top: 60px;
    padding-bottom: 30px
}

@media screen and (max-width:1000px) {
    .JobTeaserSliderArea--searchheader {
        padding-top: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .JobTeaserSliderArea--searchheader {
        padding-top: 30px
    }
}

@media screen and (max-width:1000px) {
    .JobTeaserSliderArea--searchheader {
        padding-bottom: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .JobTeaserSliderArea--searchheader {
        padding-bottom: 15px
    }
}

.JobTeaserSliderArea--slider {
    margin-top: 30px;
    padding-bottom: 4px;
    overflow: hidden
}

@media screen and (max-width:1000px) {
    .JobTeaserSliderArea--slider {
        margin-top: 3.75vw
    }
}

@media screen and (max-width:400px) {
    .JobTeaserSliderArea--slider {
        margin-top: 15px
    }
}

.JobTeaserSliderArea--searchheader+.JobTeaserSliderArea--slider {
    margin-top: 0
}

.ListingTeaser {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px);
    position: relative;
    transition: background-color .2s cubic-bezier(.39, .575, .565, 1)
}

@media(max-width:1430px) {
    .ListingTeaser {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .ListingTeaser {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .ListingTeaser {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .ListingTeaser {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .ListingTeaser {
        max-width: 100%;
        margin: 0
    }
}

html:not(.can-touch) .ListingTeaser:active,
html:not(.can-touch) .ListingTeaser:hover {
    background-color: #f9f9fa
}

.ListingTeaser.small {
    padding-left: calc(50% - 405px);
    padding-right: calc(50% - 405px)
}

@media(max-width:1010px) {
    .ListingTeaser.small {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .ListingTeaser.small {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .ListingTeaser.small {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .ListingTeaser.small {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .ListingTeaser.small {
        max-width: 100%;
        margin: 0
    }
}

.ListingTeaser.small .ListingTeaser--header {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.ListingTeaser.basic .ListingTeaser--header {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    max-width: 66.6666%
}

@media screen and (max-width:1000px) {
    .ListingTeaser.basic .ListingTeaser--header {
        max-width: 100%
    }
}

.ListingTeaser.basic .ListingTeaser--title {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 200;
    line-height: 1.26667
}

[lang=zh] .ListingTeaser.basic .ListingTeaser--title,
[lang=zh-Hant] .ListingTeaser.basic .ListingTeaser--title,
[lang=zh-Hans] .ListingTeaser.basic .ListingTeaser--title,
[lang=zh-CN] .ListingTeaser.basic .ListingTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ListingTeaser.basic .ListingTeaser--title {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.36364
    }
}

html:not(.can-touch) .ListingTeaser.basic:active,
html:not(.can-touch) .ListingTeaser.basic:hover {
    background-color: initial
}

.ListingTeaser--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 30px;
    padding-bottom: 30px
}

@media screen and (max-width:1000px) {
    .ListingTeaser--inner {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.ListingTeaser--header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

@media screen and (max-width:1000px) {
    .ListingTeaser--header {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        width: 100%
    }
}

.ListingTeaser--date {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363;
    padding-right: 30px;
    width: 180px;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

[lang=zh] .ListingTeaser--date,
[lang=zh-Hant] .ListingTeaser--date,
[lang=zh-Hans] .ListingTeaser--date,
[lang=zh-CN] .ListingTeaser--date {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ListingTeaser--date {
        width: 100%;
        margin-bottom: .5em
    }
}

.ListingTeaser--info {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363;
    margin-bottom: 1em
}

[lang=zh] .ListingTeaser--info,
[lang=zh-Hant] .ListingTeaser--info,
[lang=zh-Hans] .ListingTeaser--info,
[lang=zh-CN] .ListingTeaser--info {
    line-height: 1.5
}

.ListingTeaser--category:before {
    color: #b1b3b9;
    content: "|";
    display: inline-block;
    margin: 0 .25em
}

.ListingTeaser--content {
    margin-right: auto;
    padding-right: 60px
}

@media screen and (max-width:1200px) {
    .ListingTeaser--content {
        padding-right: 30px
    }
}

@media screen and (max-width:1000px) {
    .ListingTeaser--content {
        padding-right: 0
    }
}

.ListingTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3
}

[lang=zh] .ListingTeaser--title,
[lang=zh-Hant] .ListingTeaser--title,
[lang=zh-Hans] .ListingTeaser--title,
[lang=zh-CN] .ListingTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .ListingTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.ListingTeaser--text {
    margin-top: 1em;
    max-width: 615px
}

@media screen and (max-width:1000px) {
    .ListingTeaser--text {
        max-width: 100%
    }
}

.ListingTeaser--footer {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    max-width: 33.3333%
}

@media screen and (max-width:1000px) {
    .ListingTeaser--footer {
        max-width: 100%;
        width: 100%
    }
}

.ListingTeaser--meta {
    position: relative;
    z-index: 1;
    margin-left: -30px;
    margin-bottom: -15px;
    text-align: right
}

.ListingTeaser--meta>* {
    margin-left: 30px;
    margin-bottom: 15px
}

@media screen and (max-width:1000px) {
    .ListingTeaser--meta {
        margin-top: 1em;
        margin-left: 0;
        margin-right: -30px;
        text-align: left
    }

    .ListingTeaser--meta>* {
        margin-left: 0;
        margin-right: 30px
    }
}

.ListingTeaser--link {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.ListingTeaserArea {
    margin-bottom: 60px
}

@media screen and (max-width:1000px) {
    .ListingTeaserArea {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .ListingTeaserArea {
        margin-bottom: 30px
    }
}

.LogoTeaser {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    padding: 30px;
    transition: background-color .2s cubic-bezier(.39, .575, .565, 1)
}

html:not(.can-touch) .LogoTeaser:active,
html:not(.can-touch) .LogoTeaser:hover {
    background-color: #f9f9fa
}

html:not(.can-touch) .LogoTeaser:active .LogoTeaser--text,
html:not(.can-touch) .LogoTeaser:hover .LogoTeaser--text {
    color: #3c4150
}

@media screen and (max-width:750px) {
    .LogoTeaser {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .LogoTeaser {
        padding-left: 20px;
        padding-right: 20px
    }
}

.LogoTeaser--image {
    margin: auto 0;
    padding-bottom: 30px;
    width: 100%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.LogoTeaser--image>img {
    display: block;
    max-width: 100%;
    margin: 0 auto
}

@media screen and (max-width:750px) {
    .LogoTeaser--image {
        padding-bottom: 15px
    }
}

.LogoTeaser--text {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    display: block;
    width: 100%;
    color: #636363;
    text-align: center;
    transition: color .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

[lang=zh] .LogoTeaser--text,
[lang=zh-Hant] .LogoTeaser--text,
[lang=zh-Hans] .LogoTeaser--text,
[lang=zh-CN] .LogoTeaser--text {
    line-height: 1.5
}

.LogoTeaserArea--inner {
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    padding: 30px 0
}

@media(max-width:1430px) {
    .LogoTeaserArea--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .LogoTeaserArea--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .LogoTeaserArea--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .LogoTeaserArea--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .LogoTeaserArea--inner {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .LogoTeaserArea--inner {
        margin: 0
    }
}

.LogoTeaserArea--inner .LoadMore {
    margin-top: 60px;
    margin-bottom: 0
}

.LogoTeaserArea--grid {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: 0;
    margin-top: -90px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.LogoTeaserArea--grid>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 33.33333%;
    margin-top: 90px;
    padding-right: 0
}

.LogoTeaserArea--grid:after {
    content: '';
    display: table;
    clear: both
}

@media screen and (max-width:1000px) {
    .LogoTeaserArea--grid {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        page-break-inside: avoid;
        margin-right: 0;
        margin-top: -60px
    }

    .LogoTeaserArea--grid>* {
        float: left;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
        margin-top: 60px;
        padding-right: 0
    }

    .LogoTeaserArea--grid:after {
        content: '';
        display: table;
        clear: both
    }
}

@media screen and (max-width:750px) {
    .LogoTeaserArea--grid {
        margin-right: 0;
        margin-top: 0
    }

    .LogoTeaserArea--grid>* {
        padding-right: 0;
        margin-top: 0
    }
}

.LogoTeaserArea--grid--item {
    position: relative;
    border-left: 1px solid #d4d4d4
}

@media screen and (min-width:1001px) {

    .LogoTeaserArea--grid--item:first-child,
    .LogoTeaserArea--grid--item:nth-child(3n+1) {
        border-left: none
    }
}

@media screen and (max-width:1000px) {

    .LogoTeaserArea--grid--item:first-child,
    .LogoTeaserArea--grid--item:nth-child(2n+1) {
        border-left: none
    }
}

@media screen and (max-width:750px) {
    .LogoTeaserArea--grid--item {
        width: 100%;
        border-left: none;
        border-top: 1px solid #d4d4d4
    }

    .LogoTeaserArea--grid--item:first-child {
        border-top: none
    }
}

@-webkit-keyframes SpinnerAnim {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes SpinnerAnim {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.MediaTeaser {
    position: relative
}

html:not(.can-touch) .MediaTeaser:active .MediaTeaser--media,
html:not(.can-touch) .MediaTeaser:hover .MediaTeaser--media {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .MediaTeaser:active .MediaTeaser--media:after,
html:not(.can-touch) .MediaTeaser:hover .MediaTeaser--media:after {
    opacity: 1
}

html:not(.can-touch) .MediaTeaser:active .MediaTeaser--caption,
html:not(.can-touch) .MediaTeaser:hover .MediaTeaser--caption {
    -webkit-transform: translateY(-12px);
    transform: translateY(-12px)
}

.MediaTeaser.is-inlinevideo-playing .Media,
.MediaTeaser.is-inlinevideo-playing .MediaTeaser--dimming,
.MediaTeaser.is-inlinevideo-playing .MediaTeaser--link {
    display: none
}

.MediaTeaser.is-inlinevideo-playing .MediaTeaser--videoContainer {
    display: block
}

.MediaTeaser--media {
    position: relative;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    will-change: transform
}

.MediaTeaser--media:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .0375);
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1);
    pointer-events: none
}

.MediaTeaser--media>.Media {
    border-radius: 4px
}

.MediaTeaser--videoContainer {
    display: none;
    position: relative;
    padding-bottom: 66.667%;
    width: 100%;
    height: 0;
    border-radius: 4px;
    overflow: hidden
}

.MediaTeaser--videoContainer iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000
}

.MediaTeaser--dimming {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-color: rgba(0, 0, 0, .3)
}

.MediaTeaser--dimming .Icon {
    position: absolute;
    left: 50%;
    top: 50%;
    font-size: 10px;
    -webkit-transform: translate(-45%, -50%);
    transform: translate(-45%, -50%)
}

.MediaTeaser--dimming::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    height: 50px;
    width: 50px;
    margin-top: -25px;
    margin-left: -25px;
    border-radius: 100%;
    background-color: #fff
}

.MediaTeaser--spinner {
    width: 66px;
    height: 66px;
    color: #fff;
    visibility: hidden;
    opacity: 0;
    transition: opacity .2s
}

.is-inlinevideo-loading .MediaTeaser--spinner {
    visibility: visible;
    opacity: 1
}

.MediaTeaser--spinner::before,
.MediaTeaser--spinner::after {
    border-width: 4px
}

.MediaTeaser--caption {
    margin-top: 20px;
    padding-bottom: 20px;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

.MediaTeaser--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    color: #636363;
    margin-bottom: 1em
}

[lang=zh] .MediaTeaser--category,
[lang=zh-Hant] .MediaTeaser--category,
[lang=zh-Hans] .MediaTeaser--category,
[lang=zh-CN] .MediaTeaser--category {
    line-height: 1.5
}

.MediaTeaser--title {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363
}

[lang=zh] .MediaTeaser--title,
[lang=zh-Hant] .MediaTeaser--title,
[lang=zh-Hans] .MediaTeaser--title,
[lang=zh-CN] .MediaTeaser--title {
    line-height: 1.5
}

.MediaTeaser--link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

.MediaTextTeaser {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.l-Page.campaign .MediaTextTeaser {
    margin-top: 180px;
    margin-bottom: 180px
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .MediaTextTeaser {
        margin-top: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .MediaTextTeaser {
        margin-top: 90px
    }
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .MediaTextTeaser {
        margin-bottom: 22.5vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .MediaTextTeaser {
        margin-bottom: 90px
    }
}

@media screen and (min-width:1001px) {
    .MediaTextTeaser.left {
        -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .MediaTextTeaser.left .MediaTextTeaser--text {
        padding-right: calc(50% - 615px);
        padding-left: 9%
    }
}

@media screen and (min-width:1001px) and (max-width:1430px) {
    .MediaTextTeaser.left .MediaTextTeaser--text {
        padding-right: 75px
    }
}

@media screen and (min-width:1001px) and (max-width:1200px) {
    .MediaTextTeaser.left .MediaTextTeaser--text {
        padding-right: 60px
    }
}

@media screen and (max-width:1000px) {
    .MediaTextTeaser {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

.MediaTextTeaser .SectionTitle {
    margin-bottom: 30px
}

.MediaTextTeaser .SectionTitle--content {
    margin-top: 30px
}

.MediaTextTeaser--text {
    padding-left: calc(50% - 615px);
    width: 50%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 9%
}

@media(max-width:1430px) {
    .MediaTextTeaser--text {
        padding-left: 75px
    }
}

@media screen and (max-width:1200px) {
    .MediaTextTeaser--text {
        padding-left: 60px
    }
}

@media screen and (max-width:750px) {
    .MediaTextTeaser--text {
        padding-left: 30px
    }
}

@media screen and (max-width:580px) {
    .MediaTextTeaser--text {
        padding-left: 20px
    }
}

@media print {
    .MediaTextTeaser--text {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .MediaTextTeaser--text {
        width: 100%;
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:750px) {
    .MediaTextTeaser--text {
        padding-left: 20px;
        padding-right: 20px
    }
}

.MediaTextTeaser--image {
    position: relative;
    width: 50%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

@media screen and (max-width:1000px) {
    .MediaTextTeaser--image {
        width: 100%;
        margin-bottom: 30px
    }
}

.MediaTextTeaser--image .Media>img {
    -o-object-fit: cover;
    object-fit: cover
}

.MediaTextTeaser--image--link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: transparent;
    border-radius: 4px;
    transition: background-color .2s ease-out
}

.MediaTextTeaser--image--link .Icon {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-45%, -50%);
    transform: translate(-45%, -50%)
}

.MediaTextTeaser--image--link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    height: 70px;
    width: 70px;
    margin-top: -35px;
    margin-left: -35px;
    border-radius: 100%;
    background-color: #fff;
    transition: -webkit-transform .2s ease-out;
    transition: transform .2s ease-out;
    transition: transform .2s ease-out, -webkit-transform .2s ease-out
}

html:not(.can-touch) .MediaTextTeaser--image--link:active,
html:not(.can-touch) .MediaTextTeaser--image--link:hover {
    background-color: rgba(0, 0, 0, .3)
}

html:not(.can-touch) .MediaTextTeaser--image--link:active::before,
html:not(.can-touch) .MediaTextTeaser--image--link:hover::before {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

@media screen and (max-width:580px) {
    .MediaTextTeaser--image--link .Icon {
        -webkit-transform: translate(-50%, -50%) scale(.75);
        transform: translate(-50%, -50%) scale(.75)
    }

    .MediaTextTeaser--image--link::before {
        -webkit-transform: scale(.75);
        transform: scale(.75)
    }
}

.PeopleArea.blue .SectionTitle--headline {
    color: #1455b4
}

.PeopleArea.purple .SectionTitle--headline {
    color: #9b14b4
}

.PeopleArea.dark.blue .SectionTitle--headline {
    color: #91c8ff
}

.PeopleArea.dark.purple .SectionTitle--headline {
    color: #fa8cff
}

.PeopleArea--inner {
    position: relative;
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px)
}

@media(max-width:1430px) {
    .PeopleArea--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .PeopleArea--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .PeopleArea--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .PeopleArea--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .PeopleArea--inner {
        max-width: 100%;
        margin: 0
    }
}

.PeopleArea--grid {
    margin-bottom: 60px
}

@media screen and (max-width:1000px) {
    .PeopleArea--grid {
        margin-top: 30px
    }
}

.PeopleArea--grid:not(.large) {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: -30px;
    margin-top: -30px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.PeopleArea--grid:not(.large)>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-top: 30px;
    padding-right: 30px
}

.PeopleArea--grid:not(.large):after {
    content: '';
    display: table;
    clear: both
}

.PeopleArea--grid.large {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.PeopleArea--grid.large .PeopleArea--grid--item {
    width: 100%;
    max-width: 1020px;
    margin-bottom: 30px
}

.PeopleArea--grid.small .PeopleArea--grid--item {
    width: 33.33333%
}

@media screen and (max-width:1000px) {
    .PeopleArea--grid.small .PeopleArea--grid--item {
        width: 50%
    }
}

@media screen and (max-width:580px) {
    .PeopleArea--grid.small .PeopleArea--grid--item {
        width: 100%
    }
}

.PeopleArea--grid.tiny .PeopleArea--grid--item {
    width: 25%
}

@media screen and (max-width:1382px) {
    .PeopleArea--grid.tiny .PeopleArea--grid--item {
        width: 33.33333%
    }
}

@media screen and (max-width:1000px) {
    .PeopleArea--grid.tiny .PeopleArea--grid--item {
        width: 50%
    }
}

@media screen and (max-width:580px) {
    .PeopleArea--grid.tiny .PeopleArea--grid--item {
        width: 100%
    }
}

.PeopleArea--grid:last-child {
    margin-bottom: 0
}

.PeopleArea--grid--item {
    width: 50%
}

.PeopleArea--grid--item .PeopleCard {
    height: 100%
}

@media screen and (max-width:1000px) {
    .PeopleArea--grid--item {
        width: 100%
    }
}

.PeopleArea--link {
    margin-bottom: 60px;
    text-align: center
}

@media screen and (max-width:1000px) {
    .PeopleArea--link {
        margin-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .PeopleArea--link {
        margin-bottom: 30px
    }
}

.PeopleCard {
    color: #3c4150;
    padding-top: 45px
}

@media screen and (max-width:1000px) {
    .PeopleCard {
        width: 100%;
        text-align: center
    }
}

@media screen and (min-width:1001px) {
    .PeopleCard.large {
        padding-top: 60px
    }

    .PeopleCard.large .PeopleCard--inner {
        padding-top: 90px;
        padding-left: 100px;
        padding-right: 100px;
        padding-bottom: 60px
    }

    .PeopleCard.large .PeopleCard--portrait {
        height: 120px;
        width: 120px
    }

    .PeopleCard.large .PeopleCard--name {
        font-size: 50px;
        font-size: 3.125rem;
        font-weight: 200;
        line-height: 1.16
    }

    .PeopleCard.large .PeopleCard--text {
        font-size: 22px;
        font-size: 1.375rem;
        font-weight: 200;
        line-height: 1.5
    }

    [lang=zh] .PeopleCard.large .PeopleCard--text,
    [lang=zh-Hant] .PeopleCard.large .PeopleCard--text,
    [lang=zh-Hans] .PeopleCard.large .PeopleCard--text,
    [lang=zh-CN] .PeopleCard.large .PeopleCard--text {
        line-height: 1.7
    }
}

@media screen and (min-width:1201px) {
    .PeopleCard.large .PeopleCard--meta>* {
        max-width: 30em
    }

    .PeopleCard.large .PeopleCard--text+.PeopleCard--actions {
        margin-top: 60px
    }
}

.PeopleCard.tiny,
.PeopleCard.small {
    text-align: center
}

.PeopleCard.tiny .PeopleCard--portrait,
.PeopleCard.small .PeopleCard--portrait {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.PeopleCard.tiny .PeopleCard--actions,
.PeopleCard.small .PeopleCard--actions {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.PeopleCard.tiny .PeopleCard--actions>.Button+.Button,
.PeopleCard.small .PeopleCard--actions>.Button+.Button {
    margin-top: 10px;
    margin-left: 0
}

@media screen and (min-width:1001px) {

    .PeopleCard.tiny .PeopleCard--inner,
    .PeopleCard.small .PeopleCard--inner {
        padding-left: 30px;
        padding-right: 30px;
        padding-bottom: 40px
    }

    .PeopleCard.tiny .PeopleCard--name,
    .PeopleCard.small .PeopleCard--name {
        font-size: 22px;
        font-size: 1.375rem;
        font-weight: 700;
        line-height: 1.3
    }

    [lang=zh] .PeopleCard.tiny .PeopleCard--name,
    [lang=zh-Hant] .PeopleCard.tiny .PeopleCard--name,
    [lang=zh-Hans] .PeopleCard.tiny .PeopleCard--name,
    [lang=zh-CN] .PeopleCard.tiny .PeopleCard--name,
    [lang=zh] .PeopleCard.small .PeopleCard--name,
    [lang=zh-Hant] .PeopleCard.small .PeopleCard--name,
    [lang=zh-Hans] .PeopleCard.small .PeopleCard--name,
    [lang=zh-CN] .PeopleCard.small .PeopleCard--name {
        line-height: 1.5
    }
}

.PeopleCard.blue .PeopleCard--name {
    color: #418ce1
}

.PeopleCard.purple .PeopleCard--name {
    color: #d241c8
}

.PeopleCard.dark .PeopleCard--portrait {
    background-color: #242730
}

.PeopleCard.dark .PeopleCard--portrait .Media {
    background-color: #242730
}

.PeopleCard.dark .PeopleCard--inner {
    background-color: #505461
}

.PeopleCard.dark .PeopleCard--position,
.PeopleCard.dark .PeopleCard--department {
    color: #d4d4d4
}

.PeopleCard.dark .PeopleCard--text {
    color: #fff
}

.PeopleCard.dark .PeopleCard--text.richtext * {
    color: inherit
}

.PeopleCard.dark.blue .PeopleCard--name {
    color: #91c8ff
}

.PeopleCard.dark.purple .PeopleCard--name {
    color: #fa8cff
}

.PeopleCard--inner {
    padding-bottom: 60px;
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    padding-left: 60px;
    padding-right: 60px;
    padding-top: 75px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2)
}

@media screen and (max-width:1000px) {
    .PeopleCard--inner {
        padding-bottom: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .PeopleCard--inner {
        padding-bottom: 30px
    }
}

.PeopleCard--inner>header {
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
}

.PeopleCard--inner>footer {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

@media screen and (max-width:1200px) {
    .PeopleCard--inner {
        padding: 75px 45px 45px
    }
}

@media screen and (max-width:1000px) {
    .PeopleCard--inner {
        padding: 60px 30px 30px
    }
}

.PeopleCard--portrait {
    width: 90px;
    height: 90px;
    border-radius: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    background-color: #f9f9fa;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0)
}

.PeopleCard--portrait>img {
    max-width: 100%
}

@media screen and (max-width:1000px) {
    .PeopleCard--portrait {
        left: 50%;
        -webkit-transform: translate3d(-50%, -50%, 0);
        transform: translate3d(-50%, -50%, 0)
    }
}

.PeopleCard--name {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 15px;
    color: #418ce1
}

[lang=zh] .PeopleCard--name,
[lang=zh-Hant] .PeopleCard--name,
[lang=zh-Hans] .PeopleCard--name,
[lang=zh-CN] .PeopleCard--name {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .PeopleCard--name {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.PeopleCard--meta {
    margin-bottom: 30px
}

.PeopleCard--position {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363
}

[lang=zh] .PeopleCard--position,
[lang=zh-Hant] .PeopleCard--position,
[lang=zh-Hans] .PeopleCard--position,
[lang=zh-CN] .PeopleCard--position {
    line-height: 1.5
}

.PeopleCard--department {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363
}

[lang=zh] .PeopleCard--department,
[lang=zh-Hant] .PeopleCard--department,
[lang=zh-Hans] .PeopleCard--department,
[lang=zh-CN] .PeopleCard--department {
    line-height: 1.5
}

.PeopleCard--text {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 200
}

.PeopleCard--actions {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.PeopleCard--text+.PeopleCard--actions {
    margin-top: 40px
}

.PeopleCard--actions>.Button+.Button {
    margin-left: 10px
}

@media screen and (max-width:1000px) {
    .PeopleCard--actions {
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

@media screen and (max-width:580px) {
    .PeopleCard--actions {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .PeopleCard--actions>.Button {
        margin-bottom: 10px;
        width: 100%
    }

    .PeopleCard--actions>.Button+.Button {
        margin-left: 0
    }
}

.SocialMediaTeaser {
    margin-bottom: 120px;
    padding-bottom: 0
}

@media screen and (max-width:1000px) {
    .SocialMediaTeaser {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .SocialMediaTeaser {
        margin-bottom: 60px
    }
}

.SocialMediaTeaser iframe {
    width: 100%;
    height: 545px;
    margin-top: -30px;
    border: none;
    overflow: hidden
}

.SolutionTeaser {
    position: relative;
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    will-change: transform
}

.SolutionTeaser:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 20px 30px 0 rgba(0, 0, 0, .0375);
    opacity: 0;
    transition: opacity .2s cubic-bezier(.39, .575, .565, 1)
}

html:not(.can-touch) .SolutionTeaser:active,
html:not(.can-touch) .SolutionTeaser:hover {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

html:not(.can-touch) .SolutionTeaser:active:after,
html:not(.can-touch) .SolutionTeaser:hover:after {
    opacity: 1
}

html:not(.can-touch) .SolutionTeaser:active .SolutionTeaser--content,
html:not(.can-touch) .SolutionTeaser:hover .SolutionTeaser--content {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
}

.is-slider-ready .SolutionTeaser {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 100%
}

@supports(display:flex) {
    .is-slider-ready .SolutionTeaser {
        position: relative;
        height: auto
    }
}

.SolutionTeaser--header {
    max-height: 160px;
    overflow: hidden;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.SolutionTeaser--header--dimming {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, .3);
    border-radius: 4px
}

.SolutionTeaser--header--dimming .Icon {
    position: absolute;
    left: 50%;
    top: 50%;
    font-size: 10px;
    -webkit-transform: translate(-45%, -50%);
    transform: translate(-45%, -50%)
}

.SolutionTeaser--header--dimming::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    height: 50px;
    width: 50px;
    margin-top: -25px;
    margin-left: -25px;
    border-radius: 100%;
    background-color: #fff
}

.SolutionTeaser--inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    border-radius: 4px;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2);
    z-index: 1
}

.SolutionTeaser--content {
    position: relative;
    min-height: 338px;
    padding: 34px;
    padding-top: 114px;
    background-color: #fff;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1);
    transition: transform .2s cubic-bezier(.39, .575, .565, 1), -webkit-transform .2s cubic-bezier(.39, .575, .565, 1)
}

@media screen and (max-width:1000px) {
    .SolutionTeaser--content {
        min-height: 260px;
        padding-top: 90px;
        padding-left: 1em;
        padding-right: 1em;
        padding-bottom: 1.5em
    }
}

.SolutionTeaser--category {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.4;
    display: block;
    margin-bottom: 18px;
    color: #8a8d96
}

[lang=zh] .SolutionTeaser--category,
[lang=zh-Hant] .SolutionTeaser--category,
[lang=zh-Hans] .SolutionTeaser--category,
[lang=zh-CN] .SolutionTeaser--category {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SolutionTeaser--category {
        margin-bottom: 9px
    }
}

.SolutionTeaser--title {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: .5em;
    color: #223362
}

[lang=zh] .SolutionTeaser--title,
[lang=zh-Hant] .SolutionTeaser--title,
[lang=zh-Hans] .SolutionTeaser--title,
[lang=zh-CN] .SolutionTeaser--title {
    line-height: 1.5
}

@media screen and (max-width:1000px) {
    .SolutionTeaser--title {
        font-size: 18px;
        font-size: 1.125rem
    }
}

.SolutionTeaser--text {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    color: #636363;
    margin-top: 10px
}

[lang=zh] .SolutionTeaser--text,
[lang=zh-Hant] .SolutionTeaser--text,
[lang=zh-Hans] .SolutionTeaser--text,
[lang=zh-CN] .SolutionTeaser--text {
    line-height: 1.5
}

.SolutionTeaser--link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

@media screen and (max-width:750px) {
    .SurveyTeaser .SectionContainer {
        padding-top: 30px;
        padding-bottom: 30px
    }
}

@media screen and (max-width:580px) {
    .SurveyTeaser .SectionContainer {
        padding-top: 20px;
        padding-bottom: 20px
    }
}

.SurveyTeaser--inner {
    margin-left: calc(50% - 405px);
    margin-right: calc(50% - 405px);
    color: #3c4150;
    padding: 45px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 10px 60px 0 rgba(0, 0, 0, .2)
}

@media(max-width:1010px) {
    .SurveyTeaser--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .SurveyTeaser--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .SurveyTeaser--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .SurveyTeaser--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .SurveyTeaser--inner {
        max-width: 100%;
        margin: 0
    }
}

.SurveyTeaser--inner .BasicContentTeaser {
    margin-left: calc(50% - 307.5px);
    margin-right: calc(50% - 307.5px)
}

@media(max-width:815px) {
    .SurveyTeaser--inner .BasicContentTeaser {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1000px) {
    .SurveyTeaser--inner .BasicContentTeaser {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .SurveyTeaser--inner .BasicContentTeaser {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .SurveyTeaser--inner .BasicContentTeaser {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .SurveyTeaser--inner .BasicContentTeaser {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:750px) {
    .SurveyTeaser--inner .BasicContentTeaser {
        margin: 0
    }

    .SurveyTeaser--inner {
        padding: 30px 15px;
        margin-top: 0;
        margin-bottom: 0
    }
}

.TeaserGrid--inner {
    margin-left: calc(50% - 615px);
    margin-right: calc(50% - 615px);
    margin-bottom: 120px
}

@media(max-width:1430px) {
    .TeaserGrid--inner {
        margin-left: 75px;
        margin-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .TeaserGrid--inner {
        margin-left: 60px;
        margin-right: 60px
    }
}

@media screen and (max-width:750px) {
    .TeaserGrid--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

@media screen and (max-width:580px) {
    .TeaserGrid--inner {
        margin-left: 20px;
        margin-right: 20px
    }
}

@media print {
    .TeaserGrid--inner {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:1000px) {
    .TeaserGrid--inner {
        margin-bottom: 15vw
    }
}

@media screen and (max-width:400px) {
    .TeaserGrid--inner {
        margin-bottom: 60px
    }
}

@media screen and (max-width:580px) {
    .TeaserGrid--inner {
        margin-left: 30px;
        margin-right: 30px
    }
}

.TeaserGrid--inner .LoadMore {
    margin-top: 60px
}

@media screen and (max-width:1000px) {
    .TeaserGrid--inner .LoadMore {
        margin-top: 7.5vw
    }
}

@media screen and (max-width:400px) {
    .TeaserGrid--inner .LoadMore {
        margin-top: 30px
    }
}

.TeaserGrid--grid {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    page-break-inside: avoid;
    margin-right: -30px;
    margin-top: -30px
}

.TeaserGrid--grid>* {
    float: left;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 33.33333%;
    margin-top: 30px;
    padding-right: 30px
}

.TeaserGrid--grid:after {
    content: '';
    display: table;
    clear: both
}

.TeaserGrid--grid--item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.TeaserGrid--grid--item>* {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    max-width: 100%
}

.TeaserGrid--grid--item.medium {
    width: 66.66667%
}

@media screen and (max-width:1000px) {
    .TeaserGrid--grid--item {
        width: 50%
    }

    .TeaserGrid--grid--item.medium {
        width: 100%
    }
}

@media screen and (max-width:750px) {
    .TeaserGrid--grid--item {
        width: 100%
    }
}

.TeaserSliderArea {
    margin-top: 90px;
    overflow: hidden
}

@media screen and (max-width:1000px) {
    .TeaserSliderArea {
        margin-top: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .TeaserSliderArea {
        margin-top: 45px
    }
}

@media screen and (max-width:1000px) {
    .TeaserSliderArea {
        margin-top: 120px;
        margin-top: 15vw
    }
}

@media screen and (max-width:400px) {
    .TeaserSliderArea {
        margin-top: 60px
    }
}

.TeaserSliderArea .SectionContainer {
    margin-top: 0
}

.l-Page.campaign .TeaserSliderArea {
    margin-bottom: 90px
}

@media screen and (max-width:1000px) {
    .l-Page.campaign .TeaserSliderArea {
        margin-bottom: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .l-Page.campaign .TeaserSliderArea {
        margin-bottom: 45px
    }
}

.TeaserSlider {
    padding-left: calc(50% - 615px);
    padding-right: calc(50% - 615px)
}

@media(max-width:1430px) {
    .TeaserSlider {
        padding-left: 75px;
        padding-right: 75px
    }
}

@media screen and (max-width:1200px) {
    .TeaserSlider {
        padding-left: 60px;
        padding-right: 60px
    }
}

@media screen and (max-width:750px) {
    .TeaserSlider {
        padding-left: 30px;
        padding-right: 30px
    }
}

@media screen and (max-width:580px) {
    .TeaserSlider {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media print {
    .TeaserSlider {
        max-width: 100%;
        margin: 0
    }
}

@media screen and (max-width:580px) {
    .TeaserSlider {
        padding-left: 30px;
        padding-right: 30px
    }
}

.TeaserSlider .flickity-viewport {
    margin-bottom: 45px;
    z-index: 1
}

.TeaserSliderAreaTabs .Tabs--navigation {
    margin-bottom: 0
}

.TeaserSliderAreaTabs .TeaserSliderArea {
    padding-top: 90px;
    margin-top: 0
}

@media screen and (max-width:1000px) {
    .TeaserSliderAreaTabs .TeaserSliderArea {
        padding-top: 11.25vw
    }
}

@media screen and (max-width:400px) {
    .TeaserSliderAreaTabs .TeaserSliderArea {
        padding-top: 45px
    }
}

.TeaserSlider--slider {
    position: relative
}

.TeaserSlider--slider:not(.is-draggable) .TeaserSlider--slider--controls {
    display: none
}

.TeaserSlider--wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    white-space: inherit
}

.TeaserSlider--slide {
    display: inline-block;
    white-space: normal;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 33.33333%;
    width: calc((100% + 30px)/3 - 30px);
    margin-right: 30px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 100%
}

@supports(display:flex) {
    .TeaserSlider--slide {
        display: block;
        white-space: inherit
    }
}

.TeaserSlider--slide.is-slider-ready {
    visibility: hidden
}

.TeaserSlider--slide.was-visible,
.TeaserSlider--slide.is-visible {
    visibility: visible
}

@supports(display:flex) {
    .TeaserSlider--slide {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }
}

.TeaserSlider--slide>* {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%
}

@media screen and (min-width:1001px) {
    .TeaserSlider.grid-4 .TeaserSlider--slide {
        display: inline-block;
        white-space: normal;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333%;
        width: calc((100% + 30px)/3 - 30px);
        margin-right: 30px
    }

    @supports(display:flex) {
        .TeaserSlider.grid-4 .TeaserSlider--slide {
            display: block;
            white-space: inherit
        }
    }

    .TeaserSlider.grid-4 .TeaserSlider--slide.is-slider-ready {
        visibility: hidden
    }

    .TeaserSlider.grid-4 .TeaserSlider--slide.was-visible,
    .TeaserSlider.grid-4 .TeaserSlider--slide.is-visible {
        visibility: visible
    }
}

@media screen and (min-width:1201px) {
    .TeaserSlider.grid-4 .TeaserSlider--slide {
        display: inline-block;
        white-space: normal;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
        width: calc((100% + 30px)/4 - 30px);
        margin-right: 30px
    }

    @supports(display:flex) {
        .TeaserSlider.grid-4 .TeaserSlider--slide {
            display: block;
            white-space: inherit
        }
    }

    .TeaserSlider.grid-4 .TeaserSlider--slide.is-slider-ready {
        visibility: hidden
    }

    .TeaserSlider.grid-4 .TeaserSlider--slide.was-visible,
    .TeaserSlider.grid-4 .TeaserSlider--slide.is-visible {
        visibility: visible
    }
}

@media screen and (min-width:1001px) {
    .TeaserSlider.grid-2 .TeaserSlider--slide {
        display: inline-block;
        white-space: normal;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
        width: calc((100% + 30px)/2 - 30px);
        margin-right: 30px
    }

    @supports(display:flex) {
        .TeaserSlider.grid-2 .TeaserSlider--slide {
            display: block;
            white-space: inherit
        }
    }

    .TeaserSlider.grid-2 .TeaserSlider--slide.is-slider-ready {
        visibility: hidden
    }

    .TeaserSlider.grid-2 .TeaserSlider--slide.was-visible,
    .TeaserSlider.grid-2 .TeaserSlider--slide.is-visible {
        visibility: visible
    }
}

@media screen and (max-width:1000px) {
    .TeaserSlider--slide {
        width: 50%;
        width: calc((100% + 30px)/2 - 30px);
        margin-right: 30px
    }
}

@media screen and (max-width:750px) {
    .TeaserSlider--slide {
        width: 100%;
        width: calc((100% + 15px)/1 - 15px);
        margin-right: 15px
    }
}

.TeaserSlider.grid-1 .TeaserSlider--slide {
    display: inline-block;
    white-space: normal;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
    width: calc((100% + 30px)/1 - 30px);
    margin-right: 30px
}

@supports(display:flex) {
    .TeaserSlider.grid-1 .TeaserSlider--slide {
        display: block;
        white-space: inherit
    }
}

.TeaserSlider.grid-1 .TeaserSlider--slide.is-slider-ready {
    visibility: hidden
}

.TeaserSlider.grid-1 .TeaserSlider--slide.was-visible,
.TeaserSlider.grid-1 .TeaserSlider--slide.is-visible {
    visibility: visible
}

.TeaserSlider--slider--controls {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 3
}

.TeaserSlider--slider--controls .RoundIconButton {
    display: block;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-left: 4px;
    margin-right: 4px
}

.TeaserSlider--index-indicator {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375;
    min-width: 190px;
    margin-left: 50px;
    margin-right: 50px;
    text-align: center
}

[lang=zh] .TeaserSlider--index-indicator,
[lang=zh-Hant] .TeaserSlider--index-indicator,
[lang=zh-Hans] .TeaserSlider--index-indicator,
[lang=zh-CN] .TeaserSlider--index-indicator {
    line-height: 1.5
}

@media screen and (max-width:750px) {
    .TeaserSlider--index-indicator {
        min-width: auto;
        margin-left: 15px;
        margin-right: 15px
    }
}

.TeaserSlider--index-indicator b,
.TeaserSlider--index-indicator strong {
    font-weight: 700
}

.TeaserSlider--index-indicator .TeaserSlider--index-indicator--current {
    white-space: nowrap
}

.TeaserSlider--slider:not(.is-draggable) .TeaserSlider--index-indicator {
    display: none
}

.is-hidden {
    display: none !important
}

.is-disabled,
*[disabled] {
    opacity: .25;
    cursor: default
}