﻿body, html, div, ul, li, p, span, h1, h2, h3, h4, a, em {
    margin: 0;
    padding: 0
}

h1, h2, h3, h4 {
    font-weight: 400
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif
}

body {
    margin: 0 auto;
    font-family: Arial,fontRegular,Microsoft YaHei UI,sans-serif;
    font-size: 14px
}

a {
    color: #3c3c3c;
    text-decoration: none
}

    a:visited, a:active {
        color: #3c3c3c
    }

    a:hover {
        color: #6fa673
    }

ul, li {
    list-style: none
}

input, select, textarea, button {
    appearance: none;
    -webkit-tap-highlight-color: #fff0;
    outline: none
}

.header-placeholder {
    height: 120px
}

.header {
    z-index: 10;
    background-color: #ffffff;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 120px;
    padding: 0 1.5rem;
    transition: all .6s;
    display: flex;
    position: fixed;
    top: 0
}

    .header.scrolled {
        height: 50px
    }

    .header .logo {
        letter-spacing: .02em;
        font-size: 33px;
        font-weight: 600
    }

    .header .nav ul {
        gap: 2rem;
        list-style: none;
        display: flex
    }

        .header .nav ul .child {
            display: none
        }

    .header .nav a {
        color: #606060;
        font-size: 18px;
        text-decoration: none;
        transition: color .2s
    }

        .header .nav a:hover, .header .nav a.active {
            color: #000
        }

    .header .mobile-menu-btn {
        cursor: pointer;
        background: 0 0;
        border: none;
        font-size: 1.5rem;
        display: none
    }

.hero {
    width: 100%;
    height: calc(100vh - 126px);
    position: relative;
    overflow: hidden
}

    .hero .mySwiper {
        height: calc(100vh - 126px)
    }

    .hero .swiper-slide img {
        object-fit: cover;
        width: 100%;
        height: 100%;
        display: block
    }

    .hero .hero-info {
        color: #333;
        z-index: 10;
        position: absolute;
        bottom: 2rem;
        left: 2rem
    }

    .hero .artist-name {
        margin-bottom: .5rem;
        font-size: 2.5rem;
        font-weight: 500
    }

    .hero .exhibition-title {
        color: #666;
        margin-bottom: .8rem;
        font-size: 1.5rem
    }

    .hero .exhibition-details {
        color: #666;
        font-size: 1.1rem;
        line-height: 1.6
    }

.container {
    margin: 0 auto;
    padding: 0 1.5rem;
    min-height:620px;
}

.page-title {
    margin-bottom: 30px;
    font-size: 28px;
    font-weight: 600
}

    .page-title span {
        font-size: 22px;
        font-weight: 400
    }

    .page-title ul {
        display: flex
    }

        .page-title ul li {
            color: #606060;
            margin-right: 50px
        }

            .page-title ul li a {
                color: #606060;
            }

        .page-title ul .active {
            color: #000
        }

.cv-layout {
    margin-bottom: 90px;
    display: flex
}

.cv-img {
    width: 530px;
    margin-right: 50px
}

    .cv-img img {
        object-fit: cover;
        width: 100%;
        height: auto
    }

.cv-info {
    flex: 2;
    /*padding-top: 110px*/
}

    .cv-info h2 {
        margin-bottom: 12px;
        font-size: 28px
    }

    .cv-info p {
        color: #555;
        margin-bottom: 18px;
        font-size: 18px;
        line-height: 1.7
    }

.cv-btn {
    color: #666;
    cursor: pointer;
    border: 1px solid #ccc;
    padding: 6px 14px;
    font-size: 12px;
    text-decoration: none;
    transition: all .3s;
    display: inline-block
}

    .cv-btn:hover {
        background-color: #f5f5f5
    }

.cv-detail {
    border-top: 1px solid #eee;
    padding-top: 60px;
    padding-left: 580px;
    display: none
}

    .cv-detail.show {
        display: block
    }

.section-title {
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    font-size: 22px;
    font-weight: 600
}

.exhibition-list {
    border-bottom: 1px solid #eee;
    margin-bottom: 40px
}

.exhibition-item {
    color: #999;
    margin-bottom: 15px;
    font-size: 18px;
    display: flex
}

    .exhibition-item .year {
        width: 180px;
        margin-bottom: 5px
    }

    .exhibition-item .title {
        flex: 2;
        margin-bottom: 5px
    }

        .exhibition-item .title p {
            margin-bottom: 5px
        }

.exhibitions-layout {
    display: flex
}

    .exhibitions-layout .year-nav {
        flex-direction: column;
        width: 120px;
        display: flex;
        position: fixed;
        height: 300px;
        overflow-y: auto;
        overflow-x: hidden;
    }

.year-nav {
    scrollbar-width: thin; /* auto | thin | none */
    scrollbar-color: #f2f2f2 #ffffff; /* 滑块 轨道 */
}

    .year-nav::-webkit-scrollbar {
        width: 4px; /* 竖向滚动条宽度 */
    }
    .year-nav::-webkit-scrollbar-track {
        background: #f2f2f2;
        border-radius: 4px;
    }
    .year-nav::-webkit-scrollbar-thumb {
        background: #ffffff;
        border-radius: 4px;
    }




        .exhibitions-layout .year-nav a {
            color: #666;
            padding: 6px 0;
            font-size: 18px;
            text-decoration: none;
            transition: color .3s;
            display: block
        }

            .exhibitions-layout .year-nav a:hover, .exhibitions-layout .year-nav a.active {
                color: #000;
                font-weight: 500
            }

    .exhibitions-layout .view-all {
        color: #666;
        margin-top: 10px;
        font-size: 21px
    }

    .exhibitions-layout .installation-grid, .exhibitions-layout .painting-grid {
        text-align: center;
        margin-left: 140px;
    }

        .exhibitions-layout .installation-grid .learn-more-btn, .exhibitions-layout .painting-grid .learn-more-btn {
            margin: 0 auto
        }

    .exhibitions-layout .exhibitions-grid {
        grid-template-columns: repeat(2,1fr);
        gap: 30px;
        margin-bottom: 140px;
        margin-left: 140px;
        padding-top: 10px;
        display: grid
    }

    .exhibitions-layout .painting-grid {
        grid-template-columns: repeat(3,1fr)
    }

        .exhibitions-layout .painting-grid .img {
            background: #f2f2f2;
            padding: 50px
        }

    .exhibitions-layout .exhibition-card {
        flex-direction: column;
        gap: 12px;
        display: flex;
        text-align:center;
    }
        
        .exhibitions-layout .exhibition-card .img {
            aspect-ratio: 82/43;
            justify-content: center;
            align-items: center;
            width: 100%;
            display: flex;
            overflow: hidden
        }

    .exhibitions-layout .painting-card img {
        object-fit: cover;
        /*width: 100%;*/
        height: auto;
        max-height:100%;
        max-width:100%;
    }

    .exhibitions-layout .painting-card {
        flex-direction: column;
        gap: 12px;
        display: flex
    }

        .exhibitions-layout .painting-card .img {
            aspect-ratio: 1/1;
            justify-content: center;
            align-items: center;
            width: 100%;
            display: flex;
            overflow: hidden;
        }

    .exhibitions-layout .exhibition-card img {
        object-fit: cover;
        /*width: 100%;*/
        height: auto;
        max-width:100%;
        max-height:100%;
    }



    .exhibitions-layout .exhibition-title {
        color: #333;
        font-size: 24px;
        font-weight: 500
    }

    .exhibitions-layout .exhibition-date, .exhibitions-layout .exhibition-location {
        color: #666;
        font-size: 14px
    }

.exhibitions-layout .learn-more-btn {
    color: #666;
    border: 1px solid #ccc;
    /*align-self: flex-start;*/
    align-self: center;
    padding: 4px 10px;
    font-size: 14px;
    text-decoration: none;
    transition: all .3s
}

        .exhibitions-layout .learn-more-btn:hover {
            background-color: #f5f5f5
        }

.comment-list {
    margin-bottom: 80px;
    margin-left: 140px
}

.comment-item {
    border-bottom: 1px solid #eee;
    padding: 12px 0
}

    .comment-item.highlight {
        background-color: #f2f2f2;
        padding: 12px 15px
    }

.comment-title {
    color: #444;
    margin-bottom: 4px;
    font-size: 19px
}

.comment-author {
    color: #888;
    font-size: 16px
}

.publications-list {
    grid-template-columns: repeat(4,1fr);
    gap: 20px;
    display: grid
}

    .publications-list .item {
        margin-bottom: 40px
    }

        .publications-list .item .img {
            aspect-ratio: 9/10;
            justify-content: center;
            align-items: center;
            width: 100%;
            display: flex;
            overflow: hidden
        }

        .publications-list .item img {
            object-fit: cover;
            width: 100%;
            height: auto
        }


    /*.publications-list .item img {
            width: 100%;
            display: block
        }*/

    .publications-list .title {
        padding: 40px 0 15px;
        font-size: 24px
    }

    .publications-list .date {
        color: #999;
        font-size: 14px
    }

.video-grid {
    grid-template-columns: repeat(2,1fr);
    gap: 30px;
    margin-bottom: 40px;
    display: grid
}

.video-card {
    flex-direction: column;
    gap: 12px;
    display: flex
}

.video-placeholder {
    aspect-ratio: 16/9;
    /*color: #fff;
    background-color: #000;*/
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    display: flex
}

.video-grid .video-placeholder img {
    object-fit: cover;
    width: 100%;
    height: auto;
}


.video-placeholder .cn-title {
    margin-bottom: 2px;
    font-size: 14px
}

.video-placeholder .en-title {
    text-transform: uppercase;
    opacity: .8;
    font-size: 12px
}

.video-name {
    color: #333;
    font-size: 24px
}

.video-duration {
    color: #666;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAVhJREFUeNqMkzFIw0AUhpNUtA4WQbSTuIiOzkWkgwURxK1LQUjQoQiuOotLQTddHEoW0bo6lCI4iEO7FQrt6OLg0KWgtCLa+L1yB2lIag++/Me9979c7l5Mz/MM/3AcZxrZgGUw4RVeXNf9NALD1GZMk8gxbMEjtECCK7ANNTilSFebLWVMIGVoQ5qEM/QZ6swLkJY5VMidHzIzinBB0jX01do67OpE1kvICdxQYOCzmMg23wlWjH8GOVX5fsjpNx/AuTH+uII9bZ6j4tu4TnI7SIwdxyx1HWGjB4sRsQ+YEXM/IuEJkrwhHxKTXuiK+YuE2ZDt/SK2nLq/APMpJE78W8xyBfmI7/MXyKhlOayHQYfZtj2hOuqI5Oaow6LAEnIHm+T2LB4/qnqRYGqEcQ25h30xBnt7AblU/Xwb6O0sSFse+q/VDPmrVpEdZdJ/VRlTI7ibPwEGAGhkgmizanOLAAAAAElFTkSuQmCC) no-repeat;
    padding-left: 20px;
    font-size: 14px
}

.article-header {
    text-align: center;
    border-bottom: 1px solid #eee;
    margin-bottom: 40px;
    padding-bottom: 20px
}

.article-title {
    color: #222;
    margin-bottom: 10px;
    font-size: 36px;
    font-weight: 500
}

.article-meta {
    color: #666;
    font-size: 20px
}

.article-content {
    color: #444;
    padding: 0 140px;
    font-size: 18px;
    line-height: 1.9
}

    .article-content p {
        text-align: justify;
        margin-bottom: 20px
    }

.work-header {
    text-align: center;
    margin-bottom: 40px
}

.work-title {
    margin-bottom: 8px;
    font-size: 60px;
    font-weight: 500;
    padding:0 10%;
    margin-top:100px;
}

.work-year {
    color: #606060;
    margin-bottom: 15px;
    font-size: 52px
}

.work-meta {
    color: #606060;
    font-size: 20px;
    line-height: 1.4
}

.work-images {
    flex-direction: column;
    gap: 30px;
    margin-bottom: 60px;
    padding: 0 140px;
    display: flex
}

    .work-images img {
        max-width: 100%;
    }

.work-image-item {
    flex-direction: column;
    gap: 10px;
    display: flex
}

    .work-image-item img {
        object-fit: cover;
        width: 100%;
        height: auto
    }

.image-caption {
    color: #666;
    text-align: center;
    font-size: 18px
}

.footer {
    color: #666;
    border-top: 1px solid #eee;
    justify-content: space-between;
    align-items: center;
    margin: 0 1.5rem;
    padding: 20px 0;
    font-size: 12px;
    display: flex
}

    .footer .title {
        color: #000;
        margin-bottom: 10px;
        font-size: 18px
    }

.footer-left {
    align-items: flex-end;
    gap: 15px;
    line-height: 20px;
    display: flex
}

    .footer-left img {
        width: 100px;
        height: auto
    }

.contact-container {
    align-content: space-between;
    margin-bottom: 130px;
    padding: 0 140px;
    display: flex
}

.contact-info {
    flex: 2
}

.info-group {
    margin-bottom: 60px;
    font-size: 18px;
    display: flex
}

    .info-group .info-label {
        color: #a9aaaa;
        width: 140px
    }

    .info-group .info-content {
        flex: 2
    }

.wap {
    display: none !important
}

.pc {
    display: block
}

@media (width<=768px) {
    .wap {
        display: block !important
    }

    .pc {
        display: none !important
    }

    .header-placeholder {
        height: 40px
    }

    .header {
        background: #fff;
        height: 40px;
        padding: 0 15px;
        transition: none
    }

        .header.scrolled {
            height: 40px
        }

        .header .logo {
            font-size: 1.375rem
        }

        .header .nav ul {
            z-index: 5;
            background-color: #fff;
            flex-direction: column;
            gap: 0;
            width: 140px;
            padding: 1.5rem;
            display: none;
            position: absolute;
            top: 40px;
            right: 0
        }

            .header .nav ul li {
                border-bottom: 1px solid #ddd;
                margin-bottom: 10px;
                padding-bottom: 10px
            }

            .header .nav ul .child {
                padding: 10px 0 0;
                display: block;
                position: static
            }

                .header .nav ul .child li {
                    border: 0;
                    margin: 0
                }

            .header .nav ul.active {
                display: flex
            }

        .header .mobile-menu-btn {
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADYAAAAjCAYAAADfXvn1AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJxJREFUeNrs1zEKwjAYhuE/pUMHC0IXoas3cKzgJTyYh+kBegMFr9BOTk5Cl/jlFuHj/eHN/kASkhQRk5rDa96tltLRDNY3YTq2sLINV/Uwc20p58xWBAYMGDBgwCqbpA7qbOb6lSfVRS1msBdnDFhFl8egrmauL98WYMCAAQMGrNKXx6juZq5PWW4qm/XkjAGr6PLo1MnMtf8FGAC3SEXy147OAAAAAABJRU5ErkJggg==) 50%/27px 18px no-repeat;
            width: 3rem;
            height: 1.25rem;
            display: block
        }

            .header .mobile-menu-btn.active {
                background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAApCAYAAABHomvIAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAARxJREFUeNrs2LENg0AMBVDjpEZKR8EQzEOF6OgYISMwFivQ0FIyQhJHQoqiQDj7H7pE5woa+wnu7IOkqqobBRxMgUcERmAE/jWwLEsqisJbccktNdTAvu+prmsvSMkpuaWGGjiOI3VdB0cuOMktNUxrEI10we3eJCikK85pF1uRGpxzm9EitThVH3RFWnDqRr0XacWZJsk3JAJnHnVrSBRO4vRIdrUkmOeZhmGgpmlomibKsgyGkzgjJsPyJNu2fd6jcNDTTJqmH6+DAL6uOfTsZiROXit6djMS5+OAwWgcGsk+cEgk+8KhkOwTh0Cyb5wVyUfgLEg+CqdF8pE4DXITmOc5HPeOlBpbkcQ/rBEYgT8OlG+SS8jAuwADAE3hHlwNyuZUAAAAAElFTkSuQmCC) 50%/20px 20px no-repeat
            }

    /*.hero {
        height: calc(100vh - 45px)
    }*/
    .hero, .hero .mySwiper {
        height: calc(100vh - 40px)
    }

        .hero .artist-name {
            font-size: 2rem
        }

        .hero .exhibition-title {
            font-size: 1.2rem
        }

        .hero .exhibition-details {
            font-size: 1rem
        }

        .hero .hero-info {
            bottom: 1.5rem;
            left: 1.5rem
        }

    .container {
        padding: 0 15px
    }

    .exhibitions-layout {
        display: block
    }

        .exhibitions-layout .year-nav {
            flex-direction: row;
            align-items: center;
            width: 100%;
            height:auto;
            display: flex;
            /*position: fixed;*/
            overflow-x: auto;
            overflow-y:hidden;

        }

            .exhibitions-layout .year-nav::-webkit-scrollbar {
                display: none
            }

            .exhibitions-layout .year-nav a {
                margin-right: 10px
            }

        .exhibitions-layout .view-all {
            white-space: nowrap;
            margin: 0
        }

        .exhibitions-layout .exhibitions-grid {
            grid-template-columns: 1fr
        }

        .exhibitions-layout .exhibition-title {
            font-size: 16px
        }

        .exhibitions-layout .painting-grid {
            grid-template-columns: repeat(2,1fr)
        }
        .exhibitions-layout .exhibitions-grid {
            margin-left: 0;
        }

        .exhibitions-layout .installation-grid, .exhibitions-layout .painting-grid {
            margin-left: 0;
        }

        .exhibitions-layout .year-nav
        {
            position:relative;
        }

        .exhibitions-layout .painting-grid .img {
            padding: 10px
        }

    .video-grid {
        grid-template-columns: 1fr
    }

    .footer {
        flex-direction: column;
        margin: 0 15px
    }

        .footer .footer-left {
            width: 100%;
            margin-bottom: 6px;
            font-size: 12px;
            line-height: 16px
        }

            .footer .footer-left img {
                width: 70px
            }

        .footer .title {
            margin-bottom: 5px;
            font-size: 14px
        }

        .footer .footer-right {
            text-align: right;
            width: 100%
        }

    .page-title {
        font-size: 20px
    }

        .page-title span {
            font-size: 18px
        }

    .work-images {
        margin-bottom: 30px;
        padding: 0
    }

    .image-caption {
        font-size: 16px
    }

    .work-title {
        font-size: 29px;
        width:100%;
        margin-top:0;
    }

    .work-year {
        font-size: 22px
    }

    .work-meta {
        font-size: 15px
    }

    .work-header {
        margin-bottom: 20px
    }

    .comment-list {
        margin-bottom: 40px;
        margin-left: 0
    }

    .comment-author {
        font-size: 13px
    }

    .article-content {
        padding: 0;
        font-size: 15px;
        line-height: 1.8
    }

    .article-title {
        font-size: 22px
    }

    .article-meta {
        font-size: 14px
    }

    .contact-container {
        margin-bottom: 50px;
        padding: 0;
        display: block
    }

        .contact-container .info-group {
            margin-bottom: 30px
        }

        .contact-container .info-label {
            width: 70px;
            font-size: 14px
        }

        .contact-container .info-content {
            font-size: 17px
        }

    .map-container {
        padding-left: 70px
    }

        .map-container img {
            width: 100%;
            display: block
        }

    .cv-layout {
        margin-bottom: 40px;
        display: block
    }

        .cv-layout .cv-img {
            width: 100%;
            margin: 0
        }

            .cv-layout .cv-img img {
                width: 100%;
                display: block
            }

    .cv-info {
        padding-top: 30px;
        font-size: 15px
    }

    .cv-detail {
        padding: 30px 0 0
    }

    .section-title {
        font-size: 16px
    }

    .exhibition-item .year {
        text-align: center;
        width: 65px;
        font-size: 15px
    }

    .exhibition-item .title {
        font-size: 14px
    }

    .publications-list {
        grid-template-columns: repeat(2,1fr)
    }

        .publications-list .title {
            padding: 10px 0 5px;
            font-size: 19px
        }

        .publications-list .item {
            margin-bottom: 10px
        }

    .video-name {
        font-size: 19px
    }
}
