canvas {
    outline: none
}

.ic {
    font-size: inherit
}

.wrapper-limit_width {
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 89.5833333333%;
    width: 1720px
}

.state-hide {
    display: none
}


a {
    color: inherit;
    text-decoration: none
}

.has-scroll-smooth body {
    overflow: hidden
}


.site-body {
    overflow: hidden !important;
    position: relative;
    z-index: 20
}

body[data-site-nav=open] .site-top_bar {
    background-color: var(--site-nav-bg);
    box-shadow: 0 0 30px transparent;
    height: var(--page-nav-h);
    transition: .23s linear
}
.cursor-pointer-box {
    height: 0;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    width: 0;
    will-change: transform;
    z-index: 999
}


.cursor-pointer-dot {
    align-items: center;
    background-color: #33cc8a;
    border-radius: 50%;
    display: flex;
    height: 30px;
    justify-content: center;
    transform: translate3d(-50%, -50%, 0);
    width: 30px
}

.cursor-pointer-text {
    color: #fff;
    display: inline-block;
    font-family: Poppins-Bold;
    font-size: 15px;
    line-height: 1;
    transform: translateY(100%);
    vertical-align: -2px;
    white-space: nowrap
}

.cursor-pointer-text .ic {
    font-size: 28px;
    vertical-align: middle
}

.cursor-pointer-text-wrapper {
    overflow: hidden
}

.module-contact-us .module-social[data-theme=gray] .social-item {
    background-color: initial
}

.module-contact-us .module-body {
    font-size: 300px;
    height: 100vh;
    padding-bottom: calc(var(--page-footer-h) + 7.6vh);
    padding-top: calc(var(--page-nav-h) + 5.83333vw)
}

.module-contact-us .module-body>.state-pos--right {
    margin-bottom: .2em;
    width: 479px
}

.module-contact-us .module-title {
    /*letter-spacing: -.0533333333em;*/
    line-height: 1;
    margin-left: -.0533333333em;
    word-spacing: -.1633333333em;
    font-size: 14%;
    display: flex;
    align-items: center;
    column-gap: 20px;
    margin-bottom: 20px;
}

.module-contact-us .module-title .row {
    display: inline-block
}

.module-contact-us .module-title .dot {
    background-color: #33cc8a;
    border-radius: 50%;
    display: inline-block;
    height: 40px;
    opacity: 0;
    width: 40px
}

.module-contact-us .module-title .text {
    opacity: 0
}

.module-contact-us .module-title .text--clone {
    box-sizing: initial;
    color: var(--color);
    opacity: 1;
    padding-right: .0533333333em;
    font-weight: 700;
}

.module-contact-us .social-btns {
    clear: both;
    float: left;
    margin-bottom: 46px;
    margin-left: -15px;
    opacity: 0
}

.module-contact-us .contact-info {
    clear: both;
    float: left
}

.module-contact-us .contact-info .name {
    color: #818181;
    font-family: Poppins-Bold, SourceHanSansCN-Bold;
    font-size: 16px
}

.module-contact-us .contact-info .content {
    color: var(--color);
    font-family: Poppins-Bold, SourceHanSansCN-Bold;
    font-size: 18px;
    position: relative
}

.module-contact-us .contact-info .content a {
    width: 100%
}

.module-contact-us .contact-info .content .cursor-dot {
    background-color: #33cc8a;
    border-radius: 50%;
    height: 7px;
    left: -20px;
    margin-top: -4px;
    opacity: 0;
    position: absolute;
    top: 50%;
    width: 7px
}

.module-contact-us .contact-item {
    opacity: 0;
    padding-bottom: 56px;
    position: relative
}

.module-contact-us .contact-item:last-child {
    padding-bottom: 0
}

@-webkit-keyframes glitch-animation-1 {
    0% {
        clip: rect(102px, 350px, 140px, 30px)
    }

    5% {
        clip: rect(105px, 350px, 133px, 30px)
    }

    10% {
        clip: rect(93px, 350px, 96px, 30px)
    }

    15% {
        clip: rect(45px, 350px, 51px, 30px)
    }

    20% {
        clip: rect(36px, 350px, 63px, 30px)
    }

    25% {
        clip: rect(17px, 350px, 57px, 30px)
    }

    30% {
        clip: rect(14px, 350px, 23px, 30px)
    }

    35% {
        clip: rect(10px, 350px, 68px, 30px)
    }

    40% {
        clip: rect(101px, 350px, 57px, 30px)
    }

    45% {
        clip: rect(71px, 350px, 128px, 30px)
    }

    50% {
        clip: rect(130px, 350px, 51px, 30px)
    }

    55% {
        clip: rect(49px, 350px, 110px, 30px)
    }

    60% {
        clip: rect(80px, 350px, 60px, 30px)
    }

    65% {
        clip: rect(88px, 350px, 84px, 30px)
    }

    70% {
        clip: rect(70px, 350px, 8px, 30px)
    }

    75% {
        clip: rect(104px, 350px, 32px, 30px)
    }

    80% {
        clip: rect(82px, 350px, 76px, 30px)
    }

    85% {
        clip: rect(137px, 350px, 37px, 30px)
    }

    90% {
        clip: rect(64px, 350px, 66px, 30px)
    }

    95% {
        clip: rect(70px, 350px, 141px, 30px)
    }

    to {
        clip: rect(1px, 350px, 120px, 30px)
    }
}

@keyframes glitch-animation-1 {
    0% {
        clip: rect(102px, 350px, 140px, 30px)
    }

    5% {
        clip: rect(105px, 350px, 133px, 30px)
    }

    10% {
        clip: rect(93px, 350px, 96px, 30px)
    }

    15% {
        clip: rect(45px, 350px, 51px, 30px)
    }

    20% {
        clip: rect(36px, 350px, 63px, 30px)
    }

    25% {
        clip: rect(17px, 350px, 57px, 30px)
    }

    30% {
        clip: rect(14px, 350px, 23px, 30px)
    }

    35% {
        clip: rect(10px, 350px, 68px, 30px)
    }

    40% {
        clip: rect(101px, 350px, 57px, 30px)
    }

    45% {
        clip: rect(71px, 350px, 128px, 30px)
    }

    50% {
        clip: rect(130px, 350px, 51px, 30px)
    }

    55% {
        clip: rect(49px, 350px, 110px, 30px)
    }

    60% {
        clip: rect(80px, 350px, 60px, 30px)
    }

    65% {
        clip: rect(88px, 350px, 84px, 30px)
    }

    70% {
        clip: rect(70px, 350px, 8px, 30px)
    }

    75% {
        clip: rect(104px, 350px, 32px, 30px)
    }

    80% {
        clip: rect(82px, 350px, 76px, 30px)
    }

    85% {
        clip: rect(137px, 350px, 37px, 30px)
    }

    90% {
        clip: rect(64px, 350px, 66px, 30px)
    }

    95% {
        clip: rect(70px, 350px, 141px, 30px)
    }

    to {
        clip: rect(1px, 350px, 120px, 30px)
    }
}

@-webkit-keyframes glitch-animation-2 {
    0% {
        clip: rect(107px, 350px, 89px, 30px)
    }

    5% {
        clip: rect(145px, 350px, 40px, 30px)
    }

    10% {
        clip: rect(63px, 350px, 143px, 30px)
    }

    15% {
        clip: rect(125px, 350px, 45px, 30px)
    }

    20% {
        clip: rect(121px, 350px, 98px, 30px)
    }

    25% {
        clip: rect(16px, 350px, 50px, 30px)
    }

    30% {
        clip: rect(124px, 350px, 149px, 30px)
    }

    35% {
        clip: rect(14px, 350px, 41px, 30px)
    }

    40% {
        clip: rect(131px, 350px, 55px, 30px)
    }

    45% {
        clip: rect(43px, 350px, 139px, 30px)
    }

    50% {
        clip: rect(76px, 350px, 95px, 30px)
    }

    55% {
        clip: rect(109px, 350px, 32px, 30px)
    }

    60% {
        clip: rect(129px, 350px, 20px, 30px)
    }

    65% {
        clip: rect(25px, 350px, 79px, 30px)
    }

    70% {
        clip: rect(80px, 350px, 75px, 30px)
    }

    75% {
        clip: rect(50px, 350px, 5px, 30px)
    }

    80% {
        clip: rect(38px, 350px, 45px, 30px)
    }

    85% {
        clip: rect(124px, 350px, 44px, 30px)
    }

    90% {
        clip: rect(128px, 350px, 9px, 30px)
    }

    95% {
        clip: rect(65px, 350px, 126px, 30px)
    }

    to {
        clip: rect(69px, 350px, 97px, 30px)
    }
}

@keyframes glitch-animation-2 {
    0% {
        clip: rect(107px, 350px, 89px, 30px)
    }

    5% {
        clip: rect(145px, 350px, 40px, 30px)
    }

    10% {
        clip: rect(63px, 350px, 143px, 30px)
    }

    15% {
        clip: rect(125px, 350px, 45px, 30px)
    }

    20% {
        clip: rect(121px, 350px, 98px, 30px)
    }

    25% {
        clip: rect(16px, 350px, 50px, 30px)
    }

    30% {
        clip: rect(124px, 350px, 149px, 30px)
    }

    35% {
        clip: rect(14px, 350px, 41px, 30px)
    }

    40% {
        clip: rect(131px, 350px, 55px, 30px)
    }

    45% {
        clip: rect(43px, 350px, 139px, 30px)
    }

    50% {
        clip: rect(76px, 350px, 95px, 30px)
    }

    55% {
        clip: rect(109px, 350px, 32px, 30px)
    }

    60% {
        clip: rect(129px, 350px, 20px, 30px)
    }

    65% {
        clip: rect(25px, 350px, 79px, 30px)
    }

    70% {
        clip: rect(80px, 350px, 75px, 30px)
    }

    75% {
        clip: rect(50px, 350px, 5px, 30px)
    }

    80% {
        clip: rect(38px, 350px, 45px, 30px)
    }

    85% {
        clip: rect(124px, 350px, 44px, 30px)
    }

    90% {
        clip: rect(128px, 350px, 9px, 30px)
    }

    95% {
        clip: rect(65px, 350px, 126px, 30px)
    }

    to {
        clip: rect(69px, 350px, 97px, 30px)
    }
}


.orb-canvas {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1
}

.site-nav {
    left: 0;
    opacity: 0;
    position: fixed;
    top: 0;
    visibility: hidden;
    width: 100%;
    z-index: 80
}

.site-nav,
.site-nav .wrapper-limit_width {
    height: 100vh;
    height: calc(var(--vh, 1vh)*100)
}

.site-nav .wrapper-limit_width {
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 89.5833333333%;
    padding-bottom: 136px;
    padding-left: 5.2083333333%;
    padding-right: 5.2083333333%;
    width: 1720px
}

.site-nav .wrapper-limit_width>* {
    padding-bottom: env(safe-area-inset-bottom)
}

.site-nav .nav-item {
    color: #999;
    font-family: Poppins-Bold, SourceHanSansCN-Bold;
    font-size: 46px;
    margin-bottom: 60px;
    position: relative;
    transition: color .26s ease;
    white-space: nowrap
}

.site-nav .nav-item:last-child {
    margin-bottom: 0
}

.site-nav .nav-item:hover .count {
    color: var(--site-nav-reverse-color)
}

.site-nav .nav-link {
    display: inline-block;
    position: relative;
    text-decoration: none
}

.site-nav .nav-link .count {
    color: var(--site-nav-color);
    font-size: 24px;
    position: absolute;
    right: 0;
    top: 0;
    transition: color .36s ease
}

.site-nav .nav-link .row {
    position: relative
}

.site-nav .nav-link .text {
    display: inline-block;
    padding-right: 41px;
    position: relative;
    transform-origin: left;
    transition: color .26s ease;
    vertical-align: middle
}

.site-nav .nav-link .line {
    bottom: -3px;
    left: 0;
    padding-right: 41px;
    perspective: 1000px;
    pointer-events: none;
    position: absolute;
    width: 100%
}

.site-nav .nav-link .line-inner {
    background-color: var(--site-nav-reverse-color);
    height: 5px;
    opacity: 0;
    transform: translateY(0) translateY(0) rotate(0deg) rotateX(0deg);
    transform-origin: left;
    width: 100%
}

.site-nav .nav-link .text--origin {
    color: var(--site-nav-color)
}

.site-nav .nav-link .text--clone {
    bottom: 0;
    color: var(--site-nav-reverse-color);
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.site-nav .nav-link .text--clone .letter {
    transform: translateY(110%) rotateX(-90deg)
}

.site-nav .nav-link .text--clone,
.site-nav .nav-link .text--origin {
    overflow: hidden;
    perspective: 1000px;
    perspective-origin: -150% 50%
}

.site-nav .nav-link .text--clone .letter,
.site-nav .nav-link .text--origin .letter {
    display: inline-block;
    transform-origin: 0 0;
    will-change: transform
}

.site-nav .list-group {
    font-family: Poppins-Bold, SourceHanSansCN-Bold;
    padding-bottom: 10px
}

.site-nav .list-group .list-name {
    color: var(--site-nav-list-name-color);
    font-size: 18px;
    margin-bottom: 26px
}

.site-nav .business-group {
    padding-right: 60px;
    width: 260px
}

.site-nav .business-group .list-name {
    margin-bottom: 36px
}

.site-nav .business-group .list-item {
    display: block;
    font-size: 17px;
    padding-bottom: 14px;
    position: relative;
    text-decoration: none;
    transition: .26s ease;
    white-space: nowrap
}

.site-nav .business-group .list-item .cursor-dot {
    border-radius: 50%;
    height: 6px;
    left: 0;
    margin-top: -11px;
    position: absolute;
    top: 50%;
    width: 6px
}

.site-nav .business-group .list-item:last-child {
    padding-bottom: 0
}

.site-nav .business-group .list-item:last-child .cursor-dot {
    margin-top: -4px
}

.site-nav .business-group .list-item:hover {
    padding-left: 16px
}

.site-nav .module-social[data-theme=black] .social-item {
    color: var(--social-normal-color)
}

.site-nav .module-social[data-theme=black] .social-item:hover {
    color: var(--social-hover-color)
}

.site-nav .module-social[data-theme=black] .social-item:hover:after {
    background-color: var(--social-bg)
}

.is-mobile .site-nav .nav-item {
    color: var(--site-nav-color)
}

.module-social[data-theme=black] .social-item {
    background-color: initial;
    color: #bcbcbc
}

.module-social[data-theme=black] .social-item:hover {
    color: #fff
}

.module-social[data-theme=black] .social-item:hover:after {
    background-color: #1b1b1b;
    opacity: 1;
    transform: scale(1)
}

.module-social[data-theme=white] .social-item {
    background-color: hsla(0, 0%, 100%, .02);
    color: hsla(0, 0%, 100%, .8)
}

.module-social[data-theme=white] .social-item:hover {
    color: #33cc8a
}

.module-social[data-theme=white] .social-item:hover:after {
    background-color: #fff;
    opacity: 1;
    transform: scale(1)
}

.module-social[data-theme=gray] .social-item {
    background-color: rgba(0, 0, 0, .04);
    color: rgba(0, 0, 0, .3)
}

.module-social[data-theme=gray] .social-item:hover {
    color: #fff
}

.module-social[data-theme=gray] .social-item:hover:after {
    background-color: #33cc8a;
    opacity: 1;
    transform: scale(1)
}

.social-group {
    margin-right: -15px
}

.social-group .social-item {
    margin-right: 15px
}

.social-item {
    align-items: center;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    font-size: 21px;
    height: 50px;
    justify-content: center;
    position: relative;
    text-decoration: none;
    transition: .26s ease;
    width: 50px
}

.social-item .ic {
    position: relative;
    z-index: 10
}

.social-item:after {
    border-radius: 50%;
    bottom: 0;
    content: "";
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: scale(.85);
    transition: .36s ease
}


@-webkit-keyframes scroll-dot {
    0% {
        opacity: 0;
        transform: translateY(calc(var(--scroll-bar-h)*-1/4))
    }

    50% {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translateY(calc(var(--scroll-bar-h)*1.5))
    }
}

@keyframes scroll-dot {
    0% {
        opacity: 0;
        transform: translateY(calc(var(--scroll-bar-h)*-1/4))
    }

    50% {
        opacity: 1
    }

    to {
        opacity: 0;
        transform: translateY(calc(var(--scroll-bar-h)*1.5))
    }
}

.is-mobile .site-project_page .wrapper--go_next_btn .btn--to_next {
    bottom: 0;
    position: fixed
}

.is-mobile .site-project_page .wrapper--go_next_btn {
    position: static
}

.is-mobile .site-project_page .wrapper--go_next_btn:after {
    content: "";
    display: block
}

.site-project_page .wrapper--go_next_btn .wrapper-img {
    width: 100%
}

.is-mobile .site-project_page .wrapper--go_next_btn .next-project-info>.wrapper-limit_width {
    padding-bottom: 5.2083333333vw
}

.is-mobile .site-project_page .wrapper--go_next_btn .btn--to_next:after,
.is-mobile .site-project_page .wrapper--go_next_btn:after {
    padding-top: 31.25vw
}

.is-mobile .site-page[data-page-type=ProjectPostPage] .page-footer {
    bottom: 0;
    position: fixed;
    width: 100%
}

@media screen and (max-width:1920px) {
    .module .module-head .title {
        font-size: 6.5625vw;
        letter-spacing: -.0555555556em
    }

    .module .module-head .subtitle {
        font-size: 2.5vw
    }

    .site-nav .wrapper-limit_width {
        padding-bottom: 7.0833333333vw
    }

    .pop-layer .wrapper-img {
        width: 26%
    }

    .module-service .service-item .box-item_inner {
        border-radius: 2.6041666667vw;
        overflow: hidden;
        padding: 0 9.375vw
    }

    .module-top_banner .project_item-intro .title {
        height: 5.7291666667vw;
        padding-right: 3.9583333333vw
    }

    .module-top_banner .project_item-intro .title .ic {
        font-size: 2.8125vw;
        top: 1.3541666667vw
    }

    .module-top_banner .wrapper-info .wrapper-limit_width {
        padding-bottom: 4.6875vw
    }

    .module-top_banner .project_item-intro .intro {
        font-size: 1.5625vw
    }

    .module-top_banner .project_item-group {
        margin-top: 1.5625vw;
        padding-bottom: 1.1458333333vw
    }

    .module-project .project-group {
        margin-right: -6.25vw
    }

    .module-project .project-group .project-item {
        margin-right: 6.25vw;
        width: calc(50% - 6.25vw)
    }

    .module-project .module-head {
        margin-bottom: 6.7708333333vw
    }

    .module-project .project-item {
        margin-bottom: 10vw
    }

    .module-project .project-intro .title {
        font-size: 2.5vw
    }

    .module-project .project-intro .subtitle {
        font-size: 1.3541666667vw
    }

    .module-service .service-group {
        height: 37.5vw
    }

    .module-service .service-intro .title {
        font-size: 3.4375vw
    }

    .module-service .service-item .ae_box {
        height: 7.2395833333vw
    }

    .module-service .module-head {
        margin-bottom: 3.8020833333vw
    }

    .module-service .service-intro .desc {
        font-size: 1.0416666667vw
    }

    .module-service .service-item .item-index {
        font-size: 3.4375vw;
        right: 4.1666666667vw;
        top: 3.4375vw
    }

    .module-customer .module-intro {
        margin-bottom: 4.4270833333vw
    }

    .module-project .module-footer {
        margin-top: -4.7916666667vw;
        padding-bottom: 6.25vw
    }

    .site-index_page .module-project {
        margin-bottom: 9.2708333333vw
    }

    .module-contact .module-body .card-box {
        max-width: 463px;
        width: 26.0416666667vw
    }

    .module-contact .module-body .card--index_1 {
        transform: translateX(-5.2083333333vw) translateY(13.4375vw) rotate(-11deg)
    }

    .module-contact .module-body .card--index_2 {
        transform: translateX(-50%) translateY(1.7708333333vw) rotate(-11deg)
    }

    .module-contact .module-body .card--index_3 {
        transform: translateX(5.2083333333vw) translateY(6.5104166667vw) rotate(-11deg)
    }

    .module-contact .wrapper-limit_width,
    .module-contact+.page-footer .wrapper-limit_width {
        width: 79.2708333333vw
    }

    .module-contact .module-body .text-wrapper {
        font-size: 14.4791666667vw;
        letter-spacing: -.0431654676em
    }

    .site-index_page .module-contact {
        padding-top: 6.4583333333vw
    }

    .module-customer .wrapper-limit_width {
        border-radius: 3.125vw;
        padding: 6.25vw 9.375vw 8.125vw;
        width: 97.9166666667vw
    }

    .module-customer .wrapper-limit_width:before {
        border-radius: 3.125vw 0 0 3.125vw
    }

    .module-customer .wrapper-limit_width:after {
        border-radius: 0 3.125vw 3.125vw 0
    }

    .module-customer .customer-group {
        height: 3.90625vw;
        margin-right: -7.6041666667vw
    }

    .module-customer .customer-group .customer-item {
        margin-right: 7.6041666667vw
    }

    .module-customer .module-intro strong {
        font-size: 1.5625vw
    }

    .module-customer .module-intro p {
        font-size: 1.5625vw;
        margin: .5em 0
    }

    .module-customer .module-intro p:first-child strong {
        font-size: 2.5vw
    }

    .wrapper-tab_pages .tab_pages-container {
        padding: 9.53125vw 0
    }

    .wrapper-tab_pages .pages--current_index {
        font-size: 24.2708333333vw
    }

    .module-project .category-item {
        margin-right: 6.5104166667vw;
        padding-left: 1.4583333333vw
    }

    .site-list_project .site-body {
        padding-top: calc(var(--page-nav-h) + 8.07292vw)
    }

    .wrapper-tab_pages .pages-tab_btns {
        font-size: 3.125vw
    }

    .wrapper-tab_pages .pages-tab_btns .ic {
        font-size: 2.0833333333vw;
        vertical-align: -.5729166667vw
    }

    .wrapper-tab_pages .layer--bg:after,
    .wrapper-tab_pages .layer--bg:before,
    .wrapper-tab_pages .layer--bg_inner {
        border-radius: 3.6458333333vw
    }

    .wrapper-tab_pages .layer--bg:before {
        bottom: -1.0416666667vw
    }

    .wrapper-tab_pages .layer--bg:after {
        bottom: -2.0833333333vw
    }

    .module-contact {
        padding-top: 8.2291666667vw
    }

    .site-list_project .module-project .module-head {
        margin-bottom: 4.2708333333vw
    }

    .site-project_page .wrapper--back_btn {
        top: 5.1041666667vw
    }

    .site-project_page .wrapper--back_btn .circle {
        height: 17.8645833333vw;
        width: 17.8645833333vw
    }

    .about-module-1 .module-desc .wrapper {
        width: 47.3958333333vw
    }

    .about-module-1 .module-head {
        font-size: 9.1666666667vw;
        letter-spacing: -.0397727273em;
        word-spacing: -.0170454545em
    }

    .about-module-1 .module-desc {
        font-size: 1.3541666667vw
    }

    .about-module-1 .module-desc .text {
        margin: 2.7604166667vw 0
    }

    .about-module-2 {
        padding-bottom: 11.4583333333vw
    }

    .about-module-2 .customer-group {
        height: 3.90625vw;
        margin-bottom: 5.1041666667vw;
        margin-right: -7.6041666667vw
    }


    .about-module-4 .history-item:first-child {
        border-radius: 50%;
        width: 6.875rem;
        left: 12%;
        top: 60%;
        height: 6.875rem;
    }

    .about-module-4 .history-item:first-child .dot-wrapper {
        transform: rotate(340deg)
    }

    .about-module-4 .history-item:first-child .dot {
        transform: translateX(3.4375rem)
    }

    .about-module-4 .history-item:first-child .item-title {
        font-size: 50px
    }

    .about-module-4 .history-item:first-child .item-subtitle {
        font-size: 20px
    }

    .about-module-4 .history-item:first-child .circle-1 {
        left: 10px;
        top: -10px
    }

    .about-module-4 .history-item:nth-child(2) {
        border-radius: 50%;
        width: 6.875rem;
        left: 14%;
        top: 30%;
        height: 6.875rem;
    }

    .about-module-4 .history-item:nth-child(2) .dot {
        transform: translateX(3.4375rem)
    }





    .about-module-4 .history-item:nth-child(3) {
        border-radius: 50%;
        height: 8.5rem;
        left: 36%;
        top: 20%;
        width: 8.5rem;
    }


    .about-module-4 .history-item:nth-child(3) .dot {
        transform: translateX(4.25rem)
    }



    .about-module-4 .history-item:nth-child(4) {
        border-radius: 50%;
        height: 8.5rem;
        left: 36%;
        top: 60%;
        width: 8.5rem
    }

    .about-module-4 .history-item:nth-child(4) .dot {
        transform: translateX(4.25rem)
    }


    .about-module-4 .history-item:nth-child(5) {
        border-radius: 50%;
        height: 10.625rem;
        left: 60%;
        top: 30%;
        width: 10.625rem
    }

    .about-module-4 .history-item:nth-child(5) .dot {
        transform: translateX(5.3125rem)
    }



    .about-module-4 .history-item:nth-child(5) .circle-1 {
        left: 16px;
        top: -13px
    }

    .about-module-4 .history-item:nth-child(6) {
        border-radius: 50%;
        height: 10.625rem;
        left: 58%;
        top: 75%;
        width: 10.625rem
    }

    .about-module-4 .history-item:nth-child(6) .dot {
        transform: translateX(5.3125rem)
    }


    .about-module-4 .history-item:nth-child(7) {
        border-radius: 50%;
        height: 7.5rem;
        left: 88.5%;
        top: 21.021021021%;
        width: 7.5rem;
    }


    .about-module-4 .history-item:nth-child(7) .dot {
        transform: translateX(3.75rem)
    }


    .about-module-4 .history-item:nth-child(8) {
        border-radius: 50%;
        height: 8.125rem;
        left: 88.5%;
        width: 8.125rem;
        top: 60%;
    }

    .about-module-4 .history-item:nth-child(8) .dot {
        transform: translateX(4.0625rem)
    }


    .about-module-5 .module-title {
        font-size: 6.5625vw
    }

    .about-module-5 .module-subtitle {
        font-size: 2.5vw
    }

    .about-module-5 .prize-list .item {
        padding: 1.71875vw 0
    }

    .about-module-5 .prize-list {
        font-size: 1.25vw
    }

    .about-module-1 .module-head .dot {
        border-radius: 50%;
        height: 1.4583333333vw;
        margin-left: -1.5625vw;
        width: 1.4583333333vw
    }

    .about-module-1 {
        margin-bottom: 6.875vw
    }

    .about-module-5 .module-body .preview-thumb-box {
        border-radius: 5.625vw;
        width: 26.0416666667vw
    }

    .module-contact-us .module-body {
        font-size: 15.625vw
    }

    .module-contact-us .module-title .dot {
        height: 1.96875vw;
        width: 1.96875vw
    }

    .module-contact-us .module-body>.state-pos--right {
        width: 24.9479166667vw
    }

    .btn--open_contact_panel {
        height: 6.7708333333vw;
        width: 6.7708333333vw
    }

    .wrapper-contact_panel {
        border-radius: 1.0416666667vw;
        bottom: calc(56px + 3.38542vw);
        padding: 4.1666666667vw 4.6875vw 4.9479166667vw
    }

    .about-module-5 {
        padding-bottom: 7.8645833333vw;
        padding-top: 10.4166666667vw
    }
}

@media screen and (max-width:1460px) {
    :root {
        --page-nav-min-h: 80px;
        --page-nav-h: 124px
    }

    .site-top_bar .site-logo {
        font-size: 138px
    }

    .site-nav .wrapper-limit_width {
        box-sizing: border-box;
        margin: 0 auto;
        max-width: 89.5833333333%;
        padding-left: 3.6458333333%;
        padding-right: 3.6458333333%;
        width: 1720px
    }

    .site-nav .nav-item {
        font-size: 44px;
        margin-bottom: 56px
    }

    .page-footer .module-body {
        font-size: 13px
    }

    .pop-layer .wrapper-img {
        border-radius: 1.0416666667vw;
        font-size: 16px
    }

    .module .module-head .count {
        font-size: 2.1875vw;
        line-height: 1.4
    }

    .module .module-head .subtitle,
    .module .module-head .title {
        padding-right: 4.4791666667vw
    }

    .module-project .project-thumb {
        border-radius: 1.0416666667vw
    }

    .module-project .project-intro {
        padding-top: 2.03125vw
    }

    .module-project .btn--more {
        border-radius: 50%;
        height: 110px;
        width: 110px
    }

    .module-contact .module-body {
        padding-bottom: 10.5208333333vw
    }

    .module-service .service-intro .desc {
        width: 41.6666666667vw
    }

    .module-contact-us .social-btns {
        margin-bottom: 42px
    }

    .module-contact-us .contact-item {
        padding-bottom: 43px
    }

    .module-contact-us .module-body {
        padding-bottom: calc(var(--page-footer-h) + 5.6vh)
    }

    .module-contact-us .module-body>.state-pos--right {
        width: 27.0833333333vw
    }

    .module-contact-us .contact-info .name {
        font-size: 15px
    }

    .module-contact-us .contact-info .content {
        font-size: 16px
    }

    .wrapper-contact_panel .btn--send_msg {
        font-size: 16px;
        min-width: 136px;
        padding: 16px 0
    }

    .wrapper-contact_panel {
        height: 560px;
        width: 540px
    }

    .wrapper-contact_panel .row {
        margin-bottom: 30px
    }

    .wrapper-contact_panel .row .name {
        font-size: 16px
    }

    .module-project .category-wrapper {
        font-size: 2.6041666667vw;
        padding: 1em 0
    }

    .module-project .category-item .cursor-dot,
    .module-project .category-item .cursor-dot--inner {
        border-radius: 50%;
        height: 9px;
        width: 9px
    }

    .module-project .category-item .count {
        font-size: 1.4583333333vw
    }

    .site-project_page .project-main_info .project-title {
        font-size: 5.5208333333vw
    }

    .site-project_page .project-main_info .project-subtitle {
        font-size: 1.875vw
    }

    .site-project_page .project-main_info .btn--link img {
        border-radius: 50%;
        height: 118px;
        width: 118px
    }

    .site-project_page .wrapper--go_next_btn .next-project-info .project-name {
        font-size: 4.0625vw
    }

    .site-project_page .wrapper--go_next_btn .next-project-info .project-subtitle {
        font-size: 1.6666666667vw
    }

    .site-project_page .wrapper--go_next_btn .wrapper-img .state-pos_right {
        margin-left: -2.0833333333vw
    }

    .module-contact .module-body .card-body,
    .module-contact .module-body .layer--icon {
        border-radius: .78125vw
    }

    .no_find-body .wrapper--404_back .circle {
        height: 346px;
        width: 420px
    }

    .no_find-body .wrapper--404_back .wrapper-btn {
        bottom: 20px
    }

    .no_find-body .wrapper--404_back .box-text {
        font-size: 18px;
        margin-top: 16px
    }

    .no_find-body .wrapper--404_back .btn--go_back svg {
        width: 46px
    }
}

@media screen and (max-width:1300px) {

    .site-top_bar .site-logo {
        font-size: 118px
    }

    .animate-circle {
        --size: 26px
    }

    .site-top_bar .btn--toggle_theme .ic {
        font-size: 28px
    }

    .site-top_bar .btn--open_menu {
        margin-right: 13px
    }

    .site-top_bar .dot_group {
        transform: scale(.9)
    }

    .site-nav .nav-item {
        font-size: 44px;
        margin-bottom: 40px
    }

    .site-nav .business-group {
        padding-right: 20px;
        width: 200px
    }

    .site-nav .list-group .list-name {
        font-size: 16px;
        margin-bottom: 20px
    }

    .site-nav .business-group .list-item {
        font-size: 15px;
        padding-bottom: 10px
    }

    .social-item {
        border-radius: 50%;
        font-size: 1.6153846154vw;
        height: 4vw;
        width: 4vw
    }

    .cursor-pointer-dot {
        border-radius: 50%;
        height: 20px;
        width: 20px
    }

    .page-footer .module-body {
        font-size: 1vw;
        padding: 1.5384615385vw 0
    }

    .module-top_banner .scroll_tip {
        font-size: 13px
    }

    .site-index_page .module-customer {
        margin-bottom: 11.4583333333vw;
        padding-top: 9.8958333333vw
    }

    .module-project .project-group {
        margin-right: -3.125vw
    }

    .module-project .project-group .project-item {
        margin-right: 3.125vw;
        width: calc(50% - 3.125vw)
    }

    .module-project .btn--more .box-text {
        font-size: 1.3846153846vw
    }

    .module-project .btn--more {
        border-radius: 50%;
        height: 10vw;
        width: 10vw
    }

    .module-service .service-intro {
        padding-bottom: 13.2307692308vw
    }

    .module-service .service-item .ae_box {
        bottom: 9.0625vw
    }

    .module-contact .module-info .tel {
        font-size: 4.6153846154vw;
        letter-spacing: -.03em
    }

    .module-contact .module-info .desc {
        font-size: 1.0769230769vw
    }

    .site-project_page .project-main_info .btn--link {
        top: -21px
    }

    .site-project_page .project-main_info .btn--link img {
        border-radius: 50%;
        height: 108px;
        width: 108px
    }

    .site-project_page .project-main_info .project-info p {
        padding-top: 26px
    }

    .site-project_page .project-main_info .project-desc,
    .site-project_page .project-main_info .project-info {
        font-size: 16px
    }

    .site-project_page .wrapper--back_btn .btn--go_back svg {
        width: 49px
    }

    .about-module-5 .prize-list .item:after,
    .about-module-5 .prize-list .item:before {
        height: 2px
    }

    .module-contact-us .contact-item {
        padding-bottom: 2.2395833333vw
    }

    .wrapper-contact_panel {
        height: 520px;
        width: 500px
    }

    .wrapper-contact_panel .btn--send_msg {
        font-size: 16px;
        min-width: 126px;
        padding: 14px 0
    }

    .module-contact .module-body .text-wrapper {
        white-space: nowrap
    }

    .module-service .service-item .item-index {
        top: 3.4375vw
    }
}

@media screen and (max-width:1024px) {
    .about-module-4 .history-item:first-child {
        border-radius: 50%;
        width: 5rem;
        left: 12%;
        top: 60%;
        height: 5rem;
    }

    .about-module-4 .history-item:first-child .dot {
        transform: translateX(2.5rem)
    }

    .about-module-4 .history-item:first-child .circle-1 {
        left: 10px;
        top: -10px
    }

    .about-module-4 .history-item:nth-child(2) {
        border-radius: 50%;
        width: 5rem;
        left: 14%;
        top: 30%;
        height: 5rem;
    }

    .about-module-4 .history-item:nth-child(2) .dot {
        transform: translateX(2.5rem)
    }

    .about-module-4 .history-item:nth-child(3) {
        border-radius: 50%;
        height: 6.5rem;
        left: 36%;
        top: 20%;
        width: 6.5rem;
    }

    .about-module-4 .history-item:nth-child(3) .dot {
        transform: translateX(3.25rem)
    }

    .about-module-4 .history-item:nth-child(4) {
        border-radius: 50%;
        height: 6.5rem;
        left: 36%;
        top: 60%;
        width: 6.5rem;
    }

    .about-module-4 .history-item:nth-child(4) .dot {
        transform: translateX(3.25rem)
    }

    .about-module-4 .history-item:nth-child(5) {
        border-radius: 50%;
        height: 7.625rem;
        left: 60%;
        top: 30%;
        width: 7.625rem
    }

    .about-module-4 .history-item:nth-child(5) .dot {
        transform: translateX(3.8125rem)
    }

    .about-module-4 .history-item:nth-child(5) .circle-1 {
        left: 16px;
        top: -13px
    }

    .about-module-4 .history-item:nth-child(6) {
        border-radius: 50%;
        height: 7.625rem;
        left: 58%;
        top: 75%;
        width: 7.625rem;
    }

    .about-module-4 .history-item:nth-child(6) .dot {
        transform: translateX(3.25rem)
    }


    .about-module-4 .history-item:nth-child(7) {
        border-radius: 50%;
        height: 5.5rem;
        left: 90.5%;
        top: 21.021021021%;
        width: 5.5rem;
    }


    .about-module-4 .history-item:nth-child(7) .dot {
        transform: translateX(2.75rem)
    }


    .about-module-4 .history-item:nth-child(8) {
        border-radius: 50%;
        height: 5.65rem;
        left: 88.5%;
        width: 5.65rem;
        top: 55%;
    }

    .about-module-4 .history-item:nth-child(8) .dot {
        transform: translateX(2.825rem)
    }


}

@media screen and (max-width:834px) {
    .animate-circle {
        --size: 22px
    }

    .site-top_bar .site-logo {
        font-size: calc(var(--page-nav-min-h)*1.685)
    }

    .site-top_bar .btn--toggle_theme .ic {
        font-size: calc(var(--page-nav-min-h)*.4)
    }

    .site-top_bar .btn--open_menu {
        margin-right: calc(1%*var(--page-nav-min-h))
    }

    .site-top_bar .dot_group {
        transform: scale(.8)
    }

    .module-contact .module-info .tel {
        font-size: 4.6153846154vw
    }

    .module-contact .module-info .desc {
        font-size: 1.875vw
    }

    .pop-layer .wrapper-img {
        font-size: 1.5384615385vw
    }

    .site-nav .nav-item {
        font-size: 3.3846153846vw;
        margin-bottom: 3.0769230769vw
    }

    .site-nav .business-group .list-item {
        font-size: 13px;
        padding-bottom: .5em
    }

    .site-nav .list-group .list-name {
        font-size: 14px;
        margin-bottom: 1.2em
    }

    .site-nav .business-group {
        width: 150px
    }

    .site-nav .nav-link .text {
        padding-right: 3.1538461538vw
    }

    .site-nav .nav-link .count {
        font-size: 1.8461538462vw
    }
}

@media (orientation:portrait)and (max-width:834px) {
    .module-contact .module-body {
        padding-bottom: 13.5416666667vw;
        padding-top: 5.2083333333vw
    }

    .page-footer .module-body {
        font-size: 1.5625vw
    }

    .social-item {
        border-radius: 50%;
        font-size: 2.3958333333vw;
        height: 5.2083333333vw;
        width: 5.2083333333vw
    }

    .social-group .social-item {
        margin-right: 2.6041666667vw
    }

    .site-nav .wrapper-limit_width {
        padding: 0 0 8.3333333333vw
    }

    .site-nav .nav-item {
        font-size: 5.2083333333vw;
        margin-bottom: 2.6041666667vw
    }

    .site-nav .nav-link .count {
        font-size: 2.6041666667vw
    }

    .site-nav .nav-link .text {
        padding-right: 5.2083333333vw
    }

    .site-nav .wrapper-limit_width>.state-pos_left {
        margin-bottom: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-70%)
    }

    .site-nav .list-group .list-name {
        font-size: 2.2916666667vw
    }

    .site-nav .business-group .list-item {
        font-size: 2.3958333333vw
    }

    .site-nav .business-group {
        width: 41.6666666667vw
    }

    :root {
        --page-nav-min-h: 80px;
        --page-nav-h: 120px
    }

    .module-customer .module-intro strong {
        font-size: 2.0833333333vw
    }

    .module-customer .module-intro p:first-child strong {
        font-size: 3.6458333333vw
    }

    .module-customer .module-intro {
        margin-bottom: 6.7708333333vw
    }

    .module-customer .wrapper-limit_width {
        padding-bottom: 8.3333333333vw;
        padding-top: 8.3333333333vw
    }

    .module-customer .customer-group {
        height: 4.6875vw;
        margin-right: -10.4166666667vw
    }

    .module-customer .customer-group .customer-item {
        margin-right: 10.4166666667vw
    }

    .module-project .project-intro .title {
        font-size: 3.4375vw
    }

    .module-project .project-intro .subtitle {
        font-size: 2.0833333333vw
    }

    .module-project .btn--more {
        border-radius: 50%;
        height: 14.5833333333vw;
        width: 14.5833333333vw
    }

    .module-project .btn--more .box-text {
        font-size: 2.0833333333vw
    }

    .module-service .service-intro .desc {
        font-size: 1.5625vw
    }

    .module-service .service-intro {
        padding-bottom: 8.8541666667vw
    }

    .module-service .service-item .ae_box {
        bottom: 7.8125vw
    }

    .module-service .module-body {
        padding-bottom: 7.8125vw
    }

    .wrapper-tab_pages .pages-tab_btns .text-box {
        line-height: 5.2083333333vw;
        margin-bottom: -.25em;
        vertical-align: middle
    }

    .wrapper-tab_pages .pages-tab_btns .ic {
        display: inline-block;
        font-size: 4.1666666667vw;
        line-height: 5.2083333333vw;
        vertical-align: middle
    }

    .wrapper-tab_pages .pages-tab_btns .btn--next,
    .wrapper-tab_pages .pages-tab_btns .btn--prev {
        align-items: center
    }

    .wrapper-tab_pages .pages-tab_btns {
        font-size: 4.6875vw
    }

    .site-project_page .project-main_info .project-title {
        font-size: 8.3333333333vw
    }

    .site-project_page .project-main_info .project-subtitle {
        font-size: 2.1875vw
    }

    .site-project_page .project-main_info .btn--link img {
        border-radius: 50%;
        height: 13.0208333333vw;
        width: 13.0208333333vw
    }

    .site-project_page .project-main_info .btn--link {
        top: -.78125vw
    }

    .site-project_page .project-main_info .project-desc,
    .site-project_page .project-main_info .project-info {
        font-size: 1.9791666667vw
    }

    .is-mobile .site-project_page .wrapper--back_btn .circle {
        background-color: #33cc8a !important;
        border-color: #33cc8a !important;
        border-radius: 50%;
        height: 20.8333333333vw;
        margin: 0;
        width: 20.8333333333vw
    }

    .is-mobile .site-project_page .wrapper--back_btn .btn--go_back path {
        stroke: #fff !important;
        fill: #fff
    }

    .project-post-body {
        padding-top: 26.0416666667vw
    }

    .module-contact-us .module-body {
        align-items: flex-start;
        flex-direction: column;
        font-size: 20.8333333333vw;
        height: auto;
        justify-content: space-between;
        padding-bottom: 40px;
        padding-top: calc(var(--page-nav-h) + 16vw)
    }

    .module-contact-us .module-title .dot {
        border-radius: 50%;
        height: 4.6875vw;
        width: 4.6875vw
    }

    .module-contact-us .contact-item {
        margin-bottom: 1.0416666667vw
    }

    .module-contact-us .contact-info {
        float: none
    }

    .module-contact-us .module-body>.state-pos--right {
        margin-bottom: 0;
        margin-top: 20.8333333333vw;
        width: 100%
    }

    .module-contact-us .contact-info .name {
        font-size: 2.0833333333vw;
        margin-bottom: .5208333333vw
    }

    .module-contact-us .social-btns,
    .module-contact-us .social-group {
        margin: 0
    }

    .module-contact-us .social-btns {
        margin-bottom: 10.4166666667vw
    }

    .module-contact-us .contact-info .content {
        font-size: 2.3958333333vw
    }

    .btn--open_contact_panel {
        border-radius: 50%;
        height: 11.4583333333vw;
        width: 11.4583333333vw
    }

    .module-contact-us .social-group .social-item {
        border-radius: 50%;
        font-size: 2.6041666667vw;
        height: 2em;
        width: 2em
    }

    .about-module-1 .module-head .dot {
        border-radius: 50%;
        height: 2.6041666667vw;
        width: 2.6041666667vw
    }

    .module-top_banner .project_item-intro .title {
        height: 10.4166666667vw;
        margin-bottom: 1.0416666667vw
    }

    .module-top_banner .project_item-intro .intro {
        font-size: 3.6458333333vw
    }

    .module-top_banner .project_item-group {
        margin-top: 3.125vw;
        padding-bottom: 5.2083333333vw
    }

    .module-top_banner .wrapper-info .wrapper-limit_width {
        align-items: flex-start;
        flex-direction: column;
        justify-content: flex-end;
        padding-bottom: 11.4583333333vw
    }

    .module-top_banner .scroll_tip {
        font-size: 2.0833333333vw
    }

    .animate-circle {
        --size: 4.1666666667vw
    }

    .site-top_bar .dot_group {
        transform: scale(.9)
    }

    .about-module-1 .module-desc {
        font-size: 2.0833333333vw
    }

    .about-module-1 .module-head {
        font-size: 10.4166666667vw
    }

    .about-module-1 .wrapper-limit_width {
        padding: 0
    }

    .about-module-1 .module-desc .wrapper {
        width: 70%
    }

    .about-module-2 .customer-group {
        height: 6.25vw
    }

    .about-module-3 .module-body {
        max-height: 46.875vw
    }

    .about-module-5 {
        padding-top: 15.625vw
    }

    .about-module-5 .prize-list {
        font-size: 2.0833333333vw;
        width: 100%
    }

    .about-module-5 .module-head {
        margin-bottom: 5.2083333333vw
    }

    .about-module-5 .prize-list .item {
        padding: 2.6041666667vw 0
    }



    /* .about-module-4 .module-head {
        padding-bottom: 11.4583333333vw
    }

    .about-module-4 .module-body:after {
        padding-top: 63.7582128778%
    }

    .about-module-4 .history-item:first-child {
        height: 21.875vw;
        left: 5.775296%;
        top: 28.6%;
        width: 21.875vw
    }

    .about-module-4 .history-item:first-child .dot {
        transform: translateX(10.9375vw)
    }

    .about-module-4 .history-item:first-child .item-title {
        font-size: 3.90625vw
    }

    .about-module-4 .history-item:first-child .item-subtitle {
        font-size: 1.5625vw
    }

    .about-module-4 .history-item:first-child .circle-1 {
        left: -1.875vw;
        top: 0
    }

    .about-module-4 .history-item:nth-child(2) {
        height: 14.0625vw;
        left: 33.4428383706%;
        top: -1%;
        width: 14.0625vw
    }

    .about-module-4 .history-item:nth-child(2) .dot {
        transform: translateX(7.03125vw)
    }

    .about-module-4 .history-item:nth-child(2) .item-title {
        font-size: 3.90625vw
    }

    .about-module-4 .history-item:nth-child(2) .item-subtitle {
        font-size: 1.25vw
    }

    .about-module-4 .history-item:nth-child(2) .circle-1 {
        left: 1.25vw;
        top: 0
    }

    .about-module-4 .history-item:nth-child(3) {
        height: 25vw;
        left: 21.007884%;
        top: 84.7%;
        width: 25vw
    }

    .about-module-4 .history-item:nth-child(3) .dot {
        transform: translateX(12.5vw)
    }

    .about-module-4 .history-item:nth-child(3) .item-title {
        font-size: 4.6875vw
    }

    .about-module-4 .history-item:nth-child(3) .item-subtitle {
        font-size: 1.5625vw
    }

    .about-module-4 .history-item:nth-child(3) .circle-1 {
        left: -2.109375vw;
        top: 0
    }

    .about-module-4 .history-item:nth-child(4) {
        height: 29.6875vw;
        left: 80.2890932983%;
        top: -5%;
        width: 29.6875vw
    }

    .about-module-4 .history-item:nth-child(4) .dot {
        transform: translateX(14.84375vw)
    }

    .about-module-4 .history-item:nth-child(4) .item-title {
        font-size: 4.6875vw
    }

    .about-module-4 .history-item:nth-child(4) .item-subtitle {
        font-size: 1.5625vw
    }

    .about-module-4 .history-item:nth-child(4) .circle-1 {
        left: 1.640625vw;
        top: 13px
    }

    .about-module-4 .history-item:nth-child(5) {
        height: 14.0625vw;
        left: 60.717477%;
        top: 96.3%;
        width: 14.0625vw
    }

    .about-module-4 .history-item:nth-child(5) .dot {
        transform: translateX(7.03125vw)
    }

    .about-module-4 .history-item:nth-child(5) .item-title {
        font-size: 2.8125vw
    }

    .about-module-4 .history-item:nth-child(5) .item-subtitle {
        font-size: 1.25vw
    }

    .about-module-4 .history-item:nth-child(5) .circle-1 {
        left: .3125vw;
        top: 13px
    }

    .about-module-4 .history-item:nth-child(6) {
        height: 17.1875vw;
        left: 49.123522%;
        top: 40.6%;
        width: 17.1875vw
    }

    .about-module-4 .history-item:nth-child(6) .dot {
        transform: translateX(8.59375vw)
    }

    .about-module-4 .history-item:nth-child(6) .item-title {
        font-size: 2.8125vw
    }

    .about-module-4 .history-item:nth-child(6) .item-subtitle {
        font-size: 1.25vw
    }

    .about-module-4 .history-item:nth-child(6) .circle-1 {
        left: 1.25vw;
        top: 0
    }

    .about-module-4 .history-item:nth-child(7) {
        height: 21.875vw;
        left: 90.8015768725%;
        top: 55%;
        width: 21.875vw
    }

    .about-module-4 .history-item:nth-child(7) .dot {
        transform: translateX(10.9375vw)
    }

    .about-module-4 .history-item:nth-child(7) .item-title {
        font-size: 4.375vw
    }

    .about-module-4 .history-item:nth-child(7) .item-subtitle {
        font-size: 1.25vw
    }

    .about-module-4 .history-item:nth-child(7) .circle-1 {
        left: -2.109375vw;
        top: 0
    } */

    .about-module-4 .module-title,
    .about-module-5 .module-title {
        font-size: 10.4166666667vw
    }

    .about-module-4 .module-subtitle,
    .about-module-5 .module-subtitle {
        font-size: 3.125vw
    }
}

@media screen and (max-width:768px) {
    .site-nav .business-group .list-item {
        font-size: 1.6666666667vw;
        padding-bottom: .5em
    }

    .site-nav .list-group .list-name {
        font-size: 1.7708333333vw;
        margin-bottom: 1.2em
    }

    .site-nav .business-group {
        width: 20.8333333333vw
    }

    .about-module-5 .module-body .preview-thumb-box {
        border-radius: 150px;
        width: 300px
    }
}

@media screen and (max-width:600px) {
    :root {
        --page-nav-h: 60px
    }
}

@media (orientation:portrait) and (max-width:735px) {

    .social-item {
        border-radius: 50%;
        font-size: 5.2083333333vw;
        height: 46px;
        width: 46px
    }

    .social-group .social-item {
        margin-right: 2.6041666667vw
    }

    .pop-layer .wrapper-img {
        border-radius: 3.125vw;
        font-size: 4.6875vw;
        margin-top: 2.0833333333vw;
        padding: 2.0833333333vw 1.0416666667vw 4.6875vw;
        width: 70%
    }

    .pop-layer .wrapper-img img {
        margin: 0
    }

    .pop-layer .wrapper-img .pop-title {
        font-family: Poppins-Regular, SourceHanSansCN-Regular;
        font-size: 4.1666666667vw
    }

    .module .module-head .count {
        font-size: 4.6875vw;
        line-height: 1.8em
    }

    .module .module-head .title {
        font-size: var(--module-head-title);
        padding-right: 8.3333333333vw
    }

    .module .module-head .subtitle {
        font-size: var(--module-head-subtitle)
    }

    .module-contact .module-head {
        flex-direction: column
    }

    .module-contact .module-info .tel {
        font-size: 9.375vw;
        margin-bottom: 2.6041666667vw
    }

    .module-contact .module-info .desc {
        font-size: 3.6458333333vw
    }

    .module-contact .social-group {
        padding-bottom: 9.375vw;
        padding-top: 10.4166666667vw
    }

    .module-contact .module-body .card-box {
        height: 100%;
        max-width: 100%;
        opacity: 1;
        position: static;
        transform-origin: center center;
        width: 100%
    }

    .module-contact .contact-swiper-main {
        height: auto;
        left: 0;
        position: relative;
        top: 0
    }

    .module-contact .module-body .card--index_1,
    .module-contact .module-body .card--index_2,
    .module-contact .module-body .card--index_3 {
        transform: none
    }

    .module-contact .module-body .card-body,
    .module-contact .module-body .layer--icon {
        border-radius: 4.1666666667vw
    }

    .site-index_page .module-contact {
        padding-top: 15.625vw
    }

    .module-contact .module-body .text-wrapper {
        display: none;
        font-size: 15.625vw;
        margin-bottom: 5.2083333333vw
    }

    .module-contact .wrapper-limit_width,
    .module-contact+.page-footer .wrapper-limit_width {
        max-width: 89.5833333333%;
        width: 1720px
    }

    .site-page:not([data-page-type=ProjectPostPage]) .page-footer .module-body {
        justify-content: center
    }

    .page-footer .module-body {
        font-size: 3.125vw;
        padding: 2.6041666667vw 0
    }

    .site-nav .wrapper-limit_width {
        padding: 0 0 3.6458333333vw
    }

    .site-nav .nav-item {
        font-size: 7.8125vw;
        margin-bottom: 3.125vw
    }

    .site-nav .nav-link .count {
        font-size: 4.1666666667vw
    }

    .site-nav .nav-link .text {
        padding-right: 7.2916666667vw
    }

    .site-nav .wrapper-limit_width>.state-pos_left {
        margin-bottom: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%)
    }

    .site-nav .list-group .list-name {
        font-size: 3.6458333333vw
    }

    .site-nav .business-group .list-item {
        font-size: 3.125vw
    }

    .site-nav .business-group {
        width: 41.6666666667vw
    }

    .site-top_bar .site-logo {
        font-size: calc(var(--page-nav-min-h)*1.56)
    }

    .site-top_bar[data-size=mini] {
        background-color: hsla(0, 0%, 100%, .9)
    }

    body[data-site-theme=black] .site-top_bar[data-size=mini] {
        background-color: rgba(0, 0, 0, .9)
    }

    body[data-site-theme=black] .module-customer .customer-item .customer-logo path {
        fill: #fff;
        stroke: #fff
    }

    body[data-site-theme=black][data-site-nav=open] .site-top_bar {
        background-color: var(--site-nav-bg)
    }


    .btn--open_contact_panel {
        border-radius: 50%;
        bottom: 9.375vw;
        height: 20.8333333333vw;
        width: 20.8333333333vw
    }

    .wrapper-contact_panel {
        background-color: #fff;
        border-radius: 4.1666666667vw;
        bottom: 20.05208vw;
        height: 100vw;
        padding-left: 8.3333333333vw;
        padding-right: 8.3333333333vw;
        padding-top: 10.4166666667vw;
        width: 100%
    }

    .wrapper-contact_panel .row {
        font-size: 4.4791666667vw;
        margin-bottom: 5.2083333333vw
    }

    .wrapper-contact_panel input,
    .wrapper-contact_panel textarea {
        line-height: 10.4166666667vw
    }

    .wrapper-contact_panel .row .name {
        font-size: 3.6458333333vw;
        line-height: 10.4166666667vw
    }

    .wrapper-contact_panel .btn--send_msg {
        font-size: 3.6458333333vw;
        min-width: 26.0416666667vw;
        padding: 2.6041666667vw 0
    }

    .wrapper-contact_panel .row.message {
        height: 5.2083333333vw
    }

    .module-top_banner .wrapper-info .wrapper-limit_width {
        padding-bottom: 6.25vw
    }

    .module-top_banner .project_item-intro .intro {
        font-size: 5.7291666667vw
    }

    .module-top_banner .scroll_tip {
        font-size: 3.125vw
    }

    .module-top_banner .project_item-group {
        margin-top: 5.2083333333vw
    }

    .module-top_banner .project_item-intro p {
        margin: 2px 0
    }

    .module-top_banner .project_item-intro .title .ic {
        top: 4.1666666667vw
    }

    .module-top_banner .project_item-intro .title {
        height: 14.0625vw;
        margin-bottom: 2.6041666667vw;
        padding-right: 5.2083333333vw
    }

    .module-project .project-intro {
        padding-top: 4.6875vw
    }

    .module-project .project-group .project-item {
        margin-right: 0;
        width: 100%
    }

    .module-project .project-group {
        margin-right: 0
    }

    .module-project .module-head {
        margin-bottom: 13.5416666667vw
    }

    .module-project .project-thumb {
        border-radius: 4.1666666667vw
    }

    .module-project .project-intro .title {
        font-size: 7.2916666667vw;
        letter-spacing: -.05em
    }

    .module-project .project-intro .subtitle {
        font-size: 4.6875vw
    }

    .module-project .project-item {
        margin-bottom: 12.5vw
    }

    .module-project .btn--more {
        border-radius: 50%;
        height: 23.9583333333vw;
        width: 23.9583333333vw
    }

    .module-project .btn--more .box-text {
        font-size: 3.6458333333vw
    }

    .module-service .module-head {
        margin-bottom: 13.5416666667vw
    }

    .module-service .service-item {
        border-radius: 5.2083333333vw;
        overflow: hidden;
        padding: 0;
        position: static
    }

    .module-service .service-item .box-item_inner {
        opacity: 0;
        padding: 7.2916666667vw 8.3333333333vw 17.1875vw;
        transform: translateZ(0)
    }

    .module-service .service-group {
        height: auto;
        width: 100%
    }

    .module-service .service-item .item-index {
        font-size: 9.375vw;
        line-height: 1;
        margin-bottom: 5.2083333333vw;
        position: static;
        text-align: right
    }

    .module-service .service-item .item-intro_wrapper {
        display: block
    }

    .module-service .service-intro .title {
        font-size: 8.3333333333vw;
        line-height: 1.3em;
        margin-bottom: 5.7291666667vw;
        width: 70%
    }

    .module-service .service-intro .desc {
        font-size: 3.6458333333vw;
        margin: 0;
        width: 100%
    }

    .module-service .service-item .ae_box {
        height: 23.9583333333vw;
        position: static;
        transform: translateX(-9%)
    }

    .module-service .service-item:first-child .ae_box {
        transform: translateX(-4%)
    }

    .module-service .service-item .item-bg {
        transform: translateY(10%)
    }

    .module-service .service-item:first-child .item-bg {
        background-position: 66%;
        transform: translateY(27%)
    }

    .module-service .service-item:nth-child(2) .item-bg {
        background-position: 66%;
        background-size: 360%;
        transform: translateY(30%)
    }

    .module-service .service-item:nth-child(3) .item-bg {
        background-position: 51%;
        background-size: 460%;
        transform: translateY(3%)
    }

    .module-service .module-body .wrapper-limit_width {
        box-sizing: border-box;
        margin: 0 auto;
        max-width: 89.5833333333%;
        width: 1720px
    }

    .module-service .module-body {
        padding-bottom: 19.7916666667vw
    }

    .module-service .service-intro {
        padding-bottom: 9.8958333333vw
    }

    .module-service .service-item:first-child~.service-item .ae_box {
        transform: translateX(-6%)
    }

    .site-list_project .module-project .module-head {
        margin-bottom: 6.25vw
    }

    .module-project .category-wrapper {
        font-size: 4.1666666667vw;
        margin-bottom: 6.25vw
    }

    .module-project .module-footer {
        margin-bottom: 6.25vw;
        margin-top: 0
    }

    .wrapper-tab_pages .pages-tab_btns .text-box {
        display: none
    }

    .wrapper-tab_pages .pages-tab_btns .btn--next.state-disable,
    .wrapper-tab_pages .pages-tab_btns .btn--prev.state-disable {
        pointer-events: none
    }

    .wrapper-tab_pages .pages-tab_btns .btn--next.state-disable .ic,
    .wrapper-tab_pages .pages-tab_btns .btn--prev.state-disable .ic {
        color: #e1e1e1
    }

    .wrapper-tab_pages .pages-tab_btns .ic {
        color: #666;
        font-size: 6.25vw
    }

    .is-mobile .site-project_page .wrapper--back_btn .circle {
        background-color: #33cc8a !important;
        border-color: #33cc8a !important;
        border-radius: 50%;
        height: 41.6666666667vw;
        margin: 0;
        width: 41.6666666667vw
    }

    .site-project_page .wrapper--back_btn .btn--go_back path {
        stroke: #fff !important;
        fill: #fff
    }

    .site-project_page .wrapper--go_next_btn .next-project-info .project-name {
        font-size: 6.25vw
    }

    .site-project_page .wrapper--go_next_btn .next-project-info .project-subtitle {
        font-size: 4.1666666667vw;
        margin-top: 2.0833333333vw
    }

    .site-project_page .wrapper--back_btn .btn--go_back svg {
        width: 10.4166666667vw
    }

    .site-project_page .wrapper--back_btn {
        top: 10.4166666667vw
    }

    .site-project_page .wrapper--back_btn .wrapper-limit_width {
        width: 80%
    }

    .site-project_page .wrapper--go_next_btn {
        position: static
    }

    .site-project_page .wrapper--go_next_btn .wrapper-img {
        width: 100%
    }

    .is-mobile .site-project_page .wrapper--go_next_btn .btn--to_next:after,
    .is-mobile .site-project_page .wrapper--go_next_btn:after {
        padding-top: 66%
    }

    .site-project_page .wrapper--go_next_btn .btn--to_next:after,
    .site-project_page .wrapper--go_next_btn:after {
        content: "";
        display: block
    }

    .site-project_page .wrapper--go_next_btn .next-project-info>.wrapper-limit_width {
        display: block;
        padding-top: 13.5416666667vw
    }

    .site-project_page .wrapper--go_next_btn .wrapper-img .state-pos_left,
    .site-project_page .wrapper--go_next_btn .wrapper-img .state-pos_right {
        width: 110%
    }

    .site-page[data-page-type=ProjectPostPage] .page-footer,
    .site-project_page .wrapper--go_next_btn .btn--to_next {
        bottom: 0;
        left: 0;
        position: fixed;
        width: 100%
    }

    .module-contact-us .module-body {
        align-items: flex-start;
        flex-direction: column;
        font-size: 26.0416666667vw;
        height: auto;
        justify-content: space-between;
        padding-bottom: 40px;
        padding-top: calc(var(--page-nav-h) + 16vw)
    }

    .module-contact-us .module-title .dot {
        border-radius: 50%;
        height: 6.25vw;
        width: 6.25vw
    }

    .module-contact-us .contact-item {
        margin-bottom: 3.125vw
    }

    .module-contact-us .contact-info {
        float: none
    }

    .module-contact-us .module-body>.state-pos--right {
        margin-bottom: 0;
        margin-top: 20.8333333333vw;
        width: 100%
    }

    .module-contact-us .contact-info .name {
        font-size: 3.9583333333vw;
        margin-bottom: 1.5625vw
    }

    .module-contact-us .contact-info .content {
        font-size: 3.6458333333vw
    }

    .module-contact-us .social-btns,
    .module-contact-us .social-group {
        margin: 0
    }

    .module-contact-us .social-btns {
        margin-bottom: 10.4166666667vw
    }

    .module-contact-us .social-group .social-item {
        font-size: 5.2083333333vw
    }

    .about-module-1 {
        margin-bottom: 14.5833333333vw
    }

    .about-module-1 .module-head {
        font-size: 16.6666666667vw
    }

    .about-module-1 .module-head .dot {
        border-radius: 50%;
        height: 5.2083333333vw;
        width: 5.2083333333vw
    }

    .about-module-1 .module-desc .wrapper {
        width: 100%
    }

    .about-module-1 .module-desc {
        font-family: Poppins-Regular, SourceHanSansCN-Regular;
        font-size: 3.6458333333vw;
        line-height: 1.7em
    }

    .about-module-2 .customer-group .customer-item {
        margin-right: 10.4166666667vw
    }

    .about-module-2 {
        margin-bottom: 10.4166666667vw
    }

    .about-module-2 .customer-group {
        height: 10.4166666667vw;
        margin-bottom: 8.3333333333vw
    }

    .about-module-3 .module-body {
        height: 80vw;
        max-height: 80vw
    }

    .about-module-3 .image-placeholder:after {
        height: 120vw
    }

    .about-module-3 img {
        width: 40%
    }


    .about-module-4 .wrapper-limit_width {
        padding: 0
    }

    .about-module-4 .module-title,
    .about-module-5 .module-title {
        font-size: var(--module-head-title)
    }

    .about-module-4 .module-subtitle,
    .about-module-5 .module-subtitle {
        font-size: var(--module-head-subtitle)
    }

    .about-module-4 .module-body:after {
        padding-top: 180.7582128778%
    }

    .about-module-4 .module-head {
        padding-bottom: 16.6666666667vw
    }

    .about-module-4 .history-item:first-child {
        height: 24vw;
        left: 30vw;
        top: 40vw;
        width: 24vw
    }

    .about-module-4 .history-item:first-child .dot {
        transform: translateX(12vw)
    }

    .about-module-4 .history-item:first-child .item-title {
        font-size: 6.5359477124vw
    }

    .about-module-4 .history-item:first-child .item-subtitle {
        font-size: 2.614379085vw
    }


    .about-module-4 .history-item:nth-child(2) {
        height: 23.5294117647vw;
        left: 18vw;
        top: 8vw;
        width: 23.5294117647vw
    }

    .about-module-4 .history-item:nth-child(2) .dot {
        transform: translateX(11.7647058824vw)
    }

    .about-module-4 .history-item:nth-child(2) .item-title {
        font-size: 6.5359477124vw
    }

    .about-module-4 .history-item:nth-child(2) .item-subtitle {
        font-size: 2.091503268vw
    }



    .about-module-4 .history-item:nth-child(3) {
        height: 36vw;
        left: 70vw;
        top: 46vw;
        width: 36vw
    }

    .about-module-4 .history-item:nth-child(3) .dot {
        transform: translateX(18vw)
    }

    .about-module-4 .history-item:nth-child(3) .item-title {
        font-size: 7.8431372549vw
    }

    .about-module-4 .history-item:nth-child(3) .item-subtitle {
        font-size: 2.614379085vw
    }



    .about-module-4 .history-item:nth-child(4) {
        height: 24vw;
        left: 65vw;
        top: 6vw;
        width: 24vw
    }

    .about-module-4 .history-item:nth-child(4) .dot {
        transform: translateX(12vw)
    }

    .about-module-4 .history-item:nth-child(4) .item-title {
        font-size: 7.8431372549vw
    }

    .about-module-4 .history-item:nth-child(4) .item-subtitle {
        font-size: 2.614379085vw
    }


    .about-module-4 .history-item:nth-child(5) {
        height: 42vw;
        left: 65vw;
        top: 90vw;
        width: 42vw
    }

    .about-module-4 .history-item:nth-child(5) .dot {
        transform: translateX(21vw)
    }

    .about-module-4 .history-item:nth-child(5) .item-title {
        font-size: 4.7058823529vw
    }

    .about-module-4 .history-item:nth-child(5) .item-subtitle {
        font-size: 2.091503268vw
    }


    .about-module-4 .history-item:nth-child(6) {
        height: 36vw;
        left: 20vw;
        top: 80vw;
        width: 36vw
    }

    .about-module-4 .history-item:nth-child(6) .dot {
        transform: translateX(18vw)
    }

    .about-module-4 .history-item:nth-child(6) .item-title {
        font-size: 4.7058823529vw
    }

    .about-module-4 .history-item:nth-child(6) .item-subtitle {
        font-size: 2.091503268vw
    }

    .about-module-4 .history-item:nth-child(7) {
        height: 30vw;
        left: 28vw;
        top: 126vw;
        width: 30vw
    }

    .about-module-4 .history-item:nth-child(7) .dot {
        transform: translateX(15vw)
    }

    .about-module-4 .history-item:nth-child(7) .item-title {
        font-size: 7.3202614379vw
    }

    .about-module-4 .history-item:nth-child(7) .item-subtitle {
        font-size: 2.091503268vw
    }

    .about-module-4 .history-item:nth-child(8) {
        height: 24vw;
        left: 75vw;
        top: 135vw;
        width: 24vw
    }

    .about-module-4 .history-item:nth-child(8) .dot {
        transform: translateX(12vw)
    }

    .about-module-4 .history-item:nth-child(8) .item-title {
        font-size: 7.3202614379vw
    }

    .about-module-4 .history-item:nth-child(8) .item-subtitle {
        font-size: 2.091503268vw
    }


    .about-module-5 .prize-list {
        font-size: 4.2708333333vw
    }

    .about-module-5 .prize-list .item {
        padding: 1em 0
    }

    .about-module-5 .prize-list .item:after,
    .about-module-5 .prize-list .item:before {
        background-color: rgba(51, 51, 51, .1)
    }

    .about-module-5 .wrapper-limit_width {
        padding: 0
    }

    .about-module-5 .preview-thumb-box {
        display: none
    }

    .about-module-5 {
        padding-bottom: 15.625vw
    }


    .site-top_bar .dot_group {
        transform: scale(.8)
    }

    .site-top_bar .btn--toggle_theme {
        padding: 0 8px
    }

    .animate-circle {
        --size: 6.25vw
    }

    .module-customer .module-intro p:first-child strong {
        font-family: Poppins-Bold, SourceHanSansCN-Bold;
        font-size: 7.2916666667vw;
        line-height: 1.4em
    }

    .module-customer .wrapper-limit_width {
        padding: 5.2083333333vw
    }

    .module-customer .module-intro strong {
        display: inline;
        font-family: Poppins-Regular, SourceHanSansCN-Regular;
        font-size: 4.6875vw;
        line-height: 1.2em
    }

    .module-customer .module-intro {
        white-space: normal
    }

    body .module-customer .wrapper-limit_width:after,
    body .module-customer .wrapper-limit_width:before {
        display: none
    }

    .site-index_page .module-customer {
        margin-bottom: 20.8333333333vw;
        padding-top: 16.6666666667vw
    }

    .module-customer .module-intro p:first-child {
        width: 78%
    }

    .module-customer .module-intro p:nth-child(2) {
        margin-top: 5.2083333333vw
    }

    .module-customer .customer-group .customer-item {
        margin-right: 11.4583333333vw;
        position: static
    }

    .module-customer .customer-item .customer-logo path {
        fill: #333;
        stroke: #333
    }

    .module-customer .customer-group {
        height: 9.375vw;
        margin-bottom: 12.5vw;
        margin-top: 12.5vw
    }

    .module-project .category-item .count {
        font-size: 2.6041666667vw;
        line-height: 1;
        right: -1.0416666667vw
    }

    .module-project .category-item {
        margin-right: 6.25vw;
        padding-left: 3.125vw
    }

    .module-project .category-item .cursor-dot,
    .module-project .category-item .cursor-dot--inner {
        border-radius: 50%;
        height: 1.5625vw;
        width: 1.5625vw
    }

    body[data-page-type=ProjectPostPage][data-site-theme=black] .module-project .category-item,
    body[data-site-theme=white] .module-project .category-item {
        -webkit-text-stroke: initial;
        color: var(--color)
    }

    .wrapper-tab_pages .pages--current_index {
        font-size: 26.0416666667vw
    }

    .project-post-body {
        padding-top: 52.0833333333vw
    }

    .site-project_page .project-main_info .project-title {
        font-size: 13.0208333333vw;
        letter-spacing: -.04em;
        margin-bottom: .2em;
        white-space: normal
    }

    .site-project_page .project-main_info .btn--link {
        display: none
    }

    .site-project_page .project-main_info .project-subtitle {
        font-size: 5.2083333333vw
    }

    .site-project_page .project-main_info .project-desc {
        display: block;
        margin-top: 5.2083333333vw
    }

    .site-project_page .project-main_info .project-desc .text {
        display: block;
        font-size: 3.6458333333vw;
        margin: 0
    }

    .site-project_page .project-main_info .project-info p {
        font-size: 3.6458333333vw;
        text-align: left
    }

    .module-contact {
        padding-top: 15.625vw
    }

    .module-contact .contact-swiper-main,
    .module-contact .contact-swiper-main .swiper-wrapper {
        position: relative
    }

    .module-contact .contact-swiper-main .swiper-wrapper {
        transform: translateZ(0)
    }
}


:root {
    --swiper-theme-color: #007aff
}

.swiper {
    list-style: none;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    padding: 0;
    position: relative;
    z-index: 1
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    box-sizing: initial;
    display: flex;
    height: 100%;
    position: relative;
    transition-property: transform;
    width: 100%;
    z-index: 1
}

.swiper-android .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-pointer-events {
    touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    height: 100%;
    position: relative;
    transition-property: transform;
    width: 100%
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-css-mode>.swiper-wrapper {
    -ms-overflow-style: none;
    overflow: auto;
    scrollbar-width: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

[dir=ltr] .swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-left: var(--swiper-centered-offset-before)
}

[dir=rtl] .swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-right: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-top: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    height: var(--swiper-centered-offset-after);
    min-width: 1px;
    width: 100%
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center
}

.swiper-creative .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    transform-origin: center bottom
}

.shape-overlays {
    height: 100vh;
    left: -35vw;
    pointer-events: none;
    position: fixed;
    top: 0;
    transform: rotate(180deg);
    width: 170vw;
    z-index: 70
}

.shape-overlays.is-opened {
    transform: rotate(0deg)
}

.shape-overlays path {
    fill: var(--site-nav-bg)
}

.text--box {
    position: relative
}

.text--clone {
    bottom: 0;
    color: #333;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.text--clone .letter {
    transform: translateY(110%) rotateX(-90deg);
    vertical-align: middle
}

.text--clone,
.text--origin {
    display: inline-block;
    overflow: hidden;
    perspective: 1000px;
    perspective-origin: -150% 50%;
    vertical-align: middle;
    width: 100%
}

.text--clone .letter,
.text--origin .letter {
    display: inline-block;
    transform-origin: 0 0;
    will-change: transform
}

.menu__item {
    bottom: 0;
    right: 0
}

.menu__item,
.menu__text {
    left: 0;
    position: absolute;
    top: 0
}

.menu__text {
    fill: #333;
    display: block;
    font-size: 10px;
    height: 100%;
    letter-spacing: -.47px;
    pointer-events: none
}

.menu__text text {
    font-family: Poppins-Bold, SourceHanSansCN-Heavy;
    transform-box: view-box;
    transform-origin: 50% 50%
}

.menu__text text g,
.menu__text text text {
    transform: translateZ(0)
}

.menu__text text:nth-child(2) {
    opacity: 0
}