.vista-index-section {
    padding-bottom: calc(155* var(--rpx-50));
    background-color: #fafbfd;
}

.vista-index-section .section-title {
    padding-top: calc(140* var(--rpx-50));
    margin-bottom: calc(40* var(--rpx-50));
    text-align: center;
}

.vista-index-section .section-title .en {
    font-size: calc(24* var(--rpx));
    line-height: 1;
}

.landscape-section {
    background: url(../images/premiervista_index/gradient-bg.jpg) center / cover no-repeat;
    color: #fff;
    padding-bottom: 0;
}

.landscape-section .section-back svg {
    transform: rotate(100deg) translate(33%, 55%);
}

.maintenance-section .section-back svg {
    transform: rotate(100deg) translate(32%, 72%);
}

section.landscape-section .wrapper {
    padding-top: 0;
}

.landscape-section .cap-list .cap-title {
    text-align: left;
    font-size: calc(24* var(--rpx));
    font-family: initial;
    color: #fff;
}

.landscape-section .desc {
    text-align: center;
    max-width: 50%;
    margin: auto;
    margin-bottom: calc(80* var(--rpx-50));
}

.landscape-section .cap-list .cap-title .en {
    font-size: calc(18* var(--rpx));
    font-weight: normal;
}

.landscape-section .cap-links a {
    color: #000;
}

.cap-links a.wfEditorMode::after {
    content: unset;
}

.landscape-section .cap-list .cap-desc {
    text-align: left;
    margin-left: 0;
    padding-bottom: calc(90* var(--rpx-50));
}

.landscape-section .cap-list .cap-desc .intro {
    line-height: 1.5em;
    height: 9em;
}

.layout-custom {
    padding-top: calc(80* var(--rpx-50));
}

.layout-custom-top {
    display: flex;
    gap: calc(40* var(--rpx));
}

.layout-custom-top .serial {
    width: calc(100* var(--rpx));
    height: calc(100* var(--rpx));
    background-color: #e6e9f3;
    position: relative;
    flex-shrink: 0;
}

.layout-custom-top .serial span {
    font-size: calc(63* var(--rpx));
    font-family: var(--serif-font);
    position: absolute;
    bottom: .1em;
    right: .2em;
    font-weight: bold;
    line-height: 1;
}

.layout-custom-top .title {
    font-size: calc(28* var(--rpx));
    font-weight: bold;
}

.layout-custom-top .title_sub {
    font-size: calc(18* var(--rpx));
    font-weight: normal;
}

.layout-custom-top .intro {
    font-size: calc(24* var(--rpx));
    margin-top: calc(40* var(--rpx-50));
}

.layout-custom-body {
    padding-top: calc(80* var(--rpx-50));
}

.tab-header::after {
    background: unset;
}

.tab-header .tab {
    font-size: calc(22* var(--rpx));
    background-color: #e6e9f3;
    color: var(--theme-navy);
    font-weight: normal;
}

.tab-header .tab:hover {
    background-color: #a8b2d3;
    font-weight: bold;
}

.tab-header .tab.active {
    background: linear-gradient(to right, var(--theme-navy), var(--theme-lavender));
    font-weight: bold;
    color: #fff;
}

.tab-header .tab::after {
    border-top-color: #48488e;
}

.tab-header .tab:not(.active)+.tab:not(.active) {
    border-left-color: #cfd1da;
}

.landscape-section .cap-list .cap:nth-child(1) .cap-links {
    background: linear-gradient(to top right, white, #f4ecdb);
}

.landscape-section .cap-list .cap:nth-child(2) .cap-links {
    background: linear-gradient(to top right, white, #ddd2f1);
}

.landscape-section .cap-list .cap:nth-child(3) .cap-links {
    background: linear-gradient(to top right, white, #dadfed);
}

.landscape-section .cap-links a:hover {
    background-color: #fff;
}

.investment-section {
    background-color: #f5f7fc;
}

.classification-section {
    background-color: #e6e9f3;
}

.classification-section .layout-custom-top .serial {
    background-color: #a8b2d3;
}

.vista-index-tips {
    padding: calc(20* var(--rpx-50));
    font-size: calc(20* var(--rpx));
    position: relative;
    overflow: hidden;
    margin-top: calc(40* var(--rpx-50));
}

.plx-timeline-back {
    position: absolute;
    width: calc(100% + 1px);
    height: auto;
    right: 0;
    top: 0;
    mix-blend-mode: multiply;
    z-index: 210;
    pointer-events: none;
}

.vista-index-tips .plx-timeline-back {
    transform: rotate(180deg);
}

.layout-items {
    position: relative;
}

.layout-items::after {
    content: '';
    width: calc(50* var(--rpx));
    height: calc(44* var(--rpx));
    position: absolute;
    top: 0;
    left: 0;
    transform: translate3d(calc(-50% + 50* var(--rpx) + 1px), -50%, 0);
    background: url(../images/premiervista_index/arrows_bottom.svg) no-repeat center / contain;
}

.layout-item {
    width: 100%;
    display: flex;
    gap: calc(40* var(--rpx-50));
    position: relative;
}

.layout-item::after {
    content: '';
    width: 2px;
    height: calc(100% + 40* var(--rpx-50));
    position: absolute;
    top: 0;
    left: 0;
    transform: translate3d(calc(50* var(--rpx)), 0, 0);
    background-color: #dcdee2;
}

.complication-section .layout-item:last-child::after {
    height: 50%;
}

.layout-item .icon {
    flex-shrink: 0;
    position: relative;
    z-index: 1;
}

.layout-item .icon {
    width: calc(100* var(--rpx));
    display: flex;
    align-items: center;
    justify-content: center;
}

.layout-item .txt {
    padding: calc(50* var(--rpx-50)) calc(40* var(--rpx-50));
    background-color: #fff;
    box-shadow: 0px 0px 10px 0px rgba(71, 52, 26, 0.1);
    flex: 1;
    margin-bottom: calc(20* var(--rpx-50));
    position: relative;
}

.layout-item.openDialog .txt::after {
    content: '';
    width: calc(40* var(--rpx));
    height: calc(40* var(--rpx));
    position: absolute;
    top: calc(50* var(--rpx-50));
    right: calc(50* var(--rpx-50));
    background: url(../images/premiervista_index/+.png) no-repeat center / contain;
}

.layout-item.openDialog .txt {
    transition: .3s;
    cursor: pointer;
}

.layout-item.openDialog:hover .txt {
    background-color: var(--theme-lightskyblue);
}

.layout-item .txt .title {
    font-size: calc(24* var(--rpx));
    font-weight: bold;
}

.layout-item .txt .title_sub {
    font-size: calc(18* var(--rpx));
    font-weight: normal;
}

.layout-item .txt .intro {
    font-size: calc(18* var(--rpx));
    margin-top: calc(20* var(--rpx-50));
    padding-top: calc(20* var(--rpx-50));
    position: relative;
}

.layout-item .txt .intro::after {
    content: '';
    width: calc(80* var(--rpx));
    height: 2px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #8d76b9;
}

.complication-section {
    background-color: #f5f7fc;
}

.maintenance-section {
    background-color: #e6e9f3;
}

.maintenance-section .layout-custom-top .serial {
    background-color: #a8b2d3;
}

.maintenance-section .layout-item:last-child::after {
    height: calc(100%);
}

.maintenance-section .layout-items::before {
    content: '';
    width: calc(50* var(--rpx));
    height: calc(44* var(--rpx));
    position: absolute;
    bottom: 0;
    left: 0;
    transform: translate3d(calc(-50% + 50* var(--rpx) + 1px), 50%, 0);
    background: url(../images/premiervista_index/arrows_top.svg) no-repeat center / contain;
    z-index: 1;
}

.layout-custom-maintenance {
    display: flex;
}

.layout-custom-maintenance .left {
    width: 50%;
    background: linear-gradient(to right top, #8e76b9, #14215d);
    color: #fff;
    padding: calc(190* var(--rpx-50)) clamp(30px, calc(13.542vw - 100px), 160px);
}

.layout-custom-maintenance .left .title-sub {
    font-size: calc(28* var(--rpx));
    margin-top: calc(60* var(--rpx-50));
}

.layout-custom-maintenance .left .intro {
    font-size: calc(18* var(--rpx));
    line-height: 1.5;
    margin-top: calc(40* var(--rpx-50));
}

.layout-custom-maintenance .left .intro p+p {
    margin-top: calc(45* var(--rpx-50));
}

.layout-custom-maintenance .right {
    width: 50%;
    position: relative;
    z-index: 201;
}

.layout-custom-maintenance .right img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vista-index-dialog {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    align-items: center;
    visibility: hidden;
    opacity: 0;
    transition: .4s cubic-bezier(0.15, 1, 0.336, 1);
    padding-top: calc(160* var(--rpx-50));
    padding-bottom: calc(160* var(--rpx-50));
    justify-content: flex-start;
}

.vista-index-dialog.active {
    opacity: 1;
    visibility: visible;
}

.vista-index-dialog-wrap {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    width: clamp(720px, calc(25vw + 480px), 960px);
    height: 100%;
    transition: .8s cubic-bezier(0.15, 1, 0.336, 1);
    z-index: 1;
}

.vista-index-dialog.active .vista-index-dialog-wrap {
    visibility: visible;
    opacity: 1;
    transform: none;
}

.vista-index-dialog-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
    cursor: pointer;
}

.vista-index-dialog-wrap .vista-index-dialog-close {
    position: absolute;
    right: 1em;
    top: 1em;
    width: calc(40* var(--rpx));
    height: calc(40* var(--rpx));
    border-radius: 50%;
    background-color: #e6e9f3;
    cursor: pointer;
}

.vista-index-dialog-wrap .vista-index-dialog-close::after {
    content: "";
    width: 1rem;
    height: 1rem;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background: url(../images/global/icon_close.svg) center / contain no-repeat;
    filter: url(#navy-overlay);
    transition: .4s cubic-bezier(0.15, 1, 0.336, 1);
}

.vista-index-dialog-title {
    width: calc(100% - 160* var(--rpx));
    font-size: calc(40* var(--rpx));
    font-family: var(--serif-font);
    text-align: center;
    padding: calc(40* var(--rpx)) 0 calc(25* var(--rpx-50));
    border-bottom: 1px solid #e5e5e5;
    font-weight: bold;
}

.vista-index-dialog-title .title_sub {
    font-size: calc(24* var(--rpx));
    font-family: var(--serif-font);
}

.vista-index-dialog-content {
    width: calc(100% - 80* var(--rpx));
    padding: 0 calc(40* var(--rpx));
    margin-top: calc(60* var(--rpx));
    margin-bottom: calc(60* var(--rpx));
    padding-bottom: calc(20* var(--rpx));
    font-weight: lighter;
    font-size: calc(18* var(--rpx));
    line-height: calc(30em / 18);
    max-height: calc(100vh - 300vh / 10.8 - calc(140* var(--rpx)));
    overflow: auto;
}

.vista-index-dialog-content::-webkit-scrollbar {
    width: 2px;
    background-color: #e5e5e5;
}

.vista-index-dialog-content::-webkit-scrollbar-thumb {
    background-color: var(--theme-navy);
}

.vista-index-dialog-content ul {
    list-style-position: inside;
    padding-left: 0;
}

.vista-index-dialog-content li::marker {
    margin-right: 8px;
}

.vista-index-dialog-content table {
    width: 100%;
    border-spacing: 2px;
    box-shadow: 0px 0px 10px 0px rgba(71, 52, 26, 0.1);
    margin-top: 1.25em;
    table-layout: fixed;
}

.vista-index-dialog-content table tr:first-child {
    background: linear-gradient(to right, var(--theme-navy), var(--theme-lavender));
}

.vista-index-dialog-content table tr:first-child td {
    color: #fff;
    font-size: calc(18 * var(--rpx));
    padding: calc(20* var(--rpx));
    text-align: center;
}

.vista-index-dialog-content table tr:not(:first-child) td {
    padding: calc(30* var(--rpx));
    font-weight: bold;
    background-color: #e6e9f3;
    text-align: center;
    font-family: var(--serif-font);
}
.vista-index-dialog-content table td p~p+p {
    margin-top: .25em;
}
.vista-index-dialog-content table td p+p {
    margin-top: 0;
    line-height: .5rem;
}

.plx-investment *[clip-path="url(#clip12_12)"] {
    transform-origin: 40% center;
}

.plx-investment *[clip-path="url(#clip12_10)"] {
    transform-origin: 60% center;
}

.proposition-section .wrapper {
    padding: 0 calc(220* var(--rpx-50));
}

.cap-list .cap-desc p {
    display: initial;
    -webkit-line-clamp: initial2;
    -webkit-box-orient: initial;
    text-overflow: initial;
    overflow: initial;
    line-height: 1.8;
}

.news {
    padding-top: calc(140* var(--rpx-50));
    padding-bottom: calc(155* var(--rpx-50));
}

.section-header {
    margin-bottom: calc(45* var(--rpx));
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.news .swiper-news {
    overflow: visible;
}

.news .swiper-slide {
    width: calc(640 * var(--rpx));
    height: calc(380 * var(--rpx));
    display: flex;
    align-items: stretch;
    margin-right: calc(44 * var(--rpx));
    color: #333333;
    background-color: #f5f7fc;
}

.news .swiper-slide.luxu {
    background-color: #fcfbf9;
}

.news .swiper-slide:last-of-type {
    margin-right: 0;
}

.news .swiper-slide .info {
    width: 50%;
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: calc(32 * var(--rpx)) calc(36 * var(--rpx)) calc(28 * var(--rpx)) calc(36 * var(--rpx));
}

.news .swiper-slide .cover {
    width: 50%;
    flex: 0 0 auto;
    overflow: hidden;
}

.news .swiper-slide .cover img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

.news .swiper-slide:hover .cover img {
    transform: scale(1.05);
}

.news .swiper-slide .category {
    font-weight: lighter;
    transition: .3s;
}

.news .swiper-slide .title {
    font-size: calc(28 * var(--rpx));
    line-height: calc(30em / 28);
    font-weight: bold;
    transition: .3s;
}

.news .swiper-slide:hover .category,
.news .swiper-slide:hover .title {
    color: #011a65;
}

@media (min-width: 1921px) and (max-width: 2580px) {
    :root {
        --wrapper-width: clamp(900px, calc(72.9167vw + 200px), 2000px);
    }
}

@media (min-width: 2581px) {
    :root {
        --wrapper-width: clamp(900px, calc(72.9167vw + 200px), 2400px);
    }
}

@media (max-width: 580px) {
    .landscape-section .desc {
        width: 100%;
    }

    .vista-index-dialog-wrap {
        width: 95%;
    }

    .layout-item .icon {
        width: 40px;
    }

    .layout-item .icon img {
        width: 100%;
    }

    .layout-items::after {
        transform: translate3d(calc(-50% + 20px + 1px), -50%, 0);
    }

    .maintenance-section .layout-items::before {
        transform: translate3d(calc(-50% + 20px + 1px), 50%, 0);
    }

    .layout-item::after {
        transform: translate3d(20px, 0, 0);
    }

    .layout-custom-maintenance {
        flex-direction: column-reverse;
    }

    .layout-custom-maintenance .left,
    .layout-custom-maintenance .right {
        width: 100%;
    }
}