.page-header-back {
    filter: saturate(0);
}

.page-header.fullscreen.centered .wrapper {
    padding-top: calc(60 * var(--rpx-50));
    padding-bottom: calc(60 * var(--rpx-50));
    justify-content: center;
}

.brand-icon {
    height: calc(200 * var(--rpx));
    width: calc(200 * var(--rpx));
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #e6e9f3;
    margin-bottom: calc(36 * var(--rpx-50));
}

.brand-icon img {
    max-width: calc(166 * var(--rpx));
    max-height: calc(166 * var(--rpx));
    width: auto;
    height: auto;
    filter: url(#black-overlay);
}

section.main {
    padding-top: calc(160 * var(--rpx));
    padding-bottom: calc(200 * var(--rpx));
}

section.main .btn-ctn.bottom {
    margin-top: calc(100 * var(--rpx-50));
    display: flex;
    justify-content: center;
}

.table-product {
    display: grid;
    background-color: #f3f4f9;
    grid-template-columns: calc(160 * var(--rpx)) calc(100% - 160 * var(--rpx));
    grid-template-areas: "launch-time title"
                         ". price"
                         "picture picture"
                         ". specs"
                         ". spotlight";
    --grid-border: 1px solid rgba(0, 0, 0, .1);
    color: #000;
}

.table-product .launch-time {
    grid-area: launch-time;
    padding: calc(20 * var(--rpx-50)) calc(20 * var(--rpx-50));
    border-bottom: var(--grid-border);
}

.table-product .label {
    display: block;
    width: 100%;
    font-size: calc(14rem / 16);
    font-family: var(--serif-font);

}

.table-product .value {
    font-size: calc(24rem / 16);
    font-weight: bold;
}

.table-product .launch-time,
.table-product .product-title {
    padding: calc(16 * var(--rpx)) calc(28 * var(--rpx));
}

.table-product .product-title {
    display: flex;
    align-items: center;
    position: relative;
    padding-right: calc(268 * var(--rpx));
    color: var(--theme-navy);
    font-size: calc(28 * var(--rpx));
    font-weight: bold;
    border-bottom: var(--grid-border);
    border-left: var(--grid-border);
}

.table-product .product-title::after {
    content: "";
    width: calc(240 * var(--rpx));
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background: linear-gradient(to right bottom, var(--theme-navy), var(--theme-lavender))
}

.table-product .price,
.table-product .specs,
.table-product .spotlight {
    padding: calc(50 * var(--rpx-50)) clamp(30px, calc(5.2083vw - 20px), 80px) calc(55 * var(--rpx-50)) clamp(30px, calc(13.5417vw - 100px), 160px);
    border-left: var(--grid-border);
}

.table-product .price {
    grid-area: price;
}

.table-product .picture {
    height: calc(400 * var(--rpx));
    grid-area: picture;
    position: relative;
    background-color: #e1e5f5;
}

.table-product .picture img {
    height: 100%;
    width: auto;
    max-width: 100%;
    position: absolute;
    left: 0;
    top: 0;
}


.table-product .specs {
    grid-area: specs;
    border-bottom: var(--grid-border);
}

.cell-title {
    font-family: var(--serif-font);
    font-weight: bold;
    font-size: calc(24rem / 16);
    margin-bottom: calc(28 * var(--rpx));
}

.spec-img {
    width: 100%;
    cursor: zoom-in;
}

.spec-img img {
    display: block;
    width: 100%;
    height: auto;
    box-shadow: 0 calc(1 * var(--rpx)) calc(4 * var(--rpx)) rgba(0, 0, 0, 0.2);
}

.specs .btn-ctn {
    display: flex;
    justify-content: center;
    margin-top: calc(34 * var(--rpx-50));
}

.btn-enlarge {
    display: flex;
    align-items: center;
    color: #333;
    text-decoration: underline;
    cursor: pointer;
    font-weight: bold;
}

.btn-enlarge::before {
    content: "";
    width: calc(46 * var(--rpx));
    height: calc(46 * var(--rpx));
    margin-right: calc(12 * var(--rpx));
    margin-top: calc(8 * var(--rpx));
    background: url("../images/global/icon_zoom_in.svg") center/contain no-repeat;
}

.btn-enlarge:hover {
    color: var(--theme-navy);
}

.spotlight {
    grid-area: spotlight;
}

.spotlight-list {
    background-color: #fff;
    box-shadow: 0 calc(1 * var(--rpx)) calc(4 * var(--rpx)) rgba(0, 0, 0, 0.2);
}

.spotlight-item {
    padding: calc(16 * var(--rpx)) calc(18 * var(--rpx));
    border-bottom: var(--grid-border);
}

.spotlight-item:last-child {
    border-bottom: none;
}

.spotlight .title {
    font-size: calc(18rem / 16);
    font-weight: bold;
    margin-bottom: calc(4 * var(--rpx));
}

.spotlight .desc {
    font-size: 1rem;
}

.person {
    display: flex;
    gap: clamp(30px, calc(4.1667vw - 10px), 70px);
    align-items: flex-start;
    margin-bottom: calc(60 * var(--rpx-50));
}

.person:last-child {
    margin-bottom: 0;
}

.person .avatar {
    width: calc(180 * var(--rpx));
    aspect-ratio: 1/1;
    flex: 0 0 auto;
    border-radius: 50%;
    overflow: hidden;
}

.person .avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.person .right {
    flex: 1 1 auto;
}

.person .name {
    font-weight: bold;
    font-family: var(--serif-font);
    font-size: calc(28 * var(--rpx));
    margin-bottom: calc(18 * var(--rpx));
}

.intro-list {
    padding-left: calc(20 * var(--rpx));
}

.intro-list .intro {
    margin-bottom: calc(30em / 18);
}

.intro-list .intro:last-child {
    margin-bottom: 0;
}

.milestone-ctn {
    position: relative;
    padding: calc(36 * var(--rpx)) calc(40 * var(--rpx));
    margin-bottom: calc(12 * var(--rpx));
}

.milestone-ctn::before {
    content: "";
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    height: calc(300 * var(--rpx));
    z-index: 200;
    background-color: #f3f4f9;
}

.milestone-ctn > * {
    position: relative;
    z-index: 205;
}

.ms-title {
    font-family: var(--serif-font);
    font-size: calc(28 * var(--rpx));
    font-weight: bold;
    margin-bottom: calc(8 * var(--rpx));
}

.ms-swiper {
    --gap: calc(20 * var(--rpx));
    --slide-count: 3;

    width: calc(100% + 10px);
    margin-left: -5px;
    /*for shadows not overflown*/
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: calc(20 * var(--rpx));
}

.ms-swiper .swiper-wrapper {
    align-items: stretch;
}

.ms-year {
    background-color: #ffffff;
    box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.2);
    position: relative;
    flex: 0 0 auto;
    margin-right: var(--gap);
    --content-count: 1;
    width: calc((100% - var(--gap) * (var(--slide-count) - 1)) / var(--slide-count) * var(--content-count) + var(--gap) * (var(--content-count) - 1));
    margin-top: calc(48rem / 16);
    height: auto;
}

.ms-year[data-items="2"] {
    --content-count: 2;
}

.ms-year[data-items="3"] {
    --content-count: 3;
}

.ms-year:last-child {
    margin-right: 0;
}

.year-content {
    display: flex;
    padding-top: calc(54rem / 16);
    padding-bottom: calc(36 * var(--rpx));
    align-items: stretch;
}

.year-content-item {
    padding-left: calc(20rem / 16);
    padding-right: calc(20rem / 16);
    width: 100%;
    flex: 0 0 auto;
}

.year-content-item a {
    text-decoration: underline;
    font-weight: bold;
    color: var(--theme-navy);
}

.ms-year[data-items="2"] .year-content-item {
    width: 50%;
}

.ms-year[data-items="3"] .year-content-item {
    width: calc(100% / 3);
}

.year-content-item + .year-content-item {
    border-left: 1px solid #e5e5e5;
}


.year-icon {
    background-color: var(--theme-navy);
    color: #fff;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    width: calc(80rem / 16);
    height: calc(80rem / 16);
    font-size: calc(18rem / 16);
    font-weight: bold;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    top: calc(-40rem / 16);
}

.ms-scrollbar {
    background-color: #e5e5e5;
    height: 2px;
}

.ms-scrollbar .swiper-scrollbar-drag {
    background: var(--theme-navy);
}

.ms-nav {
    margin-top: calc(12 * var(--rpx));
    margin-left: calc(-14 * var(--rpx));
}

@media (max-width: 750px) {
    section.main {
        padding-top: calc(80 * var(--rpx));
        padding-bottom: calc(100 * var(--rpx));
    }

    .table-product {
        grid-template-columns: 100%;
        grid-template-areas:
        "title"
        "launch-time"
        "price"
        "picture"
        "specs"
        "spotlight";
        border: var(--grid-border);
    }

    .fold-content-inner .table-product > * {
        border-left: none;
        border-top: none;
        border-right: none;
        border-bottom: var(--grid-border);
        padding: calc(16 * var(--rpx)) calc(18 * var(--rpx));
    }

    .table-product > *:last-of-type {
        border-bottom: none;
    }

    .table-product .product-title::after {
        width: calc(180 * var(--rpx));
    }

    .table-product .price, .table-product .specs, .table-product .spotlight {
        padding: calc(16 * var(--rpx)) calc(28 * var(--rpx));
    }

    .person{
        flex-direction: column;
        gap: calc(20 * var(--rpx));
    }

    .person .avatar{
        width: calc(240 * var(--rpx));
        align-self: center;
    }

    .person .name{
        text-align: center;
    }

    .intro-list{
        padding-left: calc(30 * var(--rpx));
    }

    .year-content-item,
    .ms-year[data-items="2"] .year-content-item{
        width: 60vw;
    }

    .ms-year{
        width: auto;
    }

    .year-content-item{
        padding-left: 1em;
        padding-right: 1em;
    }

    .table-product .price, .table-product .specs, .table-product .spotlight{
        padding: calc(16 * var(--rpx));
    }

    .spotlight .desc{
        font-size: calc(14rem / 16);
    }

}
