@charset "utf-8";
/* CSS Document */

        /* ========== 全局重置 ========== */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {    overflow-x: hidden;
            background: linear-gradient(180deg, #d7ebff, #ffffff);
            color: #fff;
            padding: 0px 0px 0px;
            display: flex;
            flex-direction: column;
            align-items: center;
            min-height: 100vh;
        }

        .breadcrumball {
            width: 100%;
            margin: 0 0 4vw 0;
            background: #e7f3ff;
            height: 4vw;
            line-height: 4vw;
        }
        .breadcrumb {
            margin: 0 auto;
            width: 80%;
        }
        .breadcrumb span {
            color: #0055b8;
            font-size: 1.3vw;
        }
        .sep {}
        .hui {
            color: #707070 !important;
        }

        /* ========== 主容器 ========== */
        .page-container {
            margin: 0 auto 4vw auto !important;
            width: 80%;
            display: flex;
            flex-direction: column;
            gap: 40px;
        }

        .wzlb{width: 80%;margin: 0 auto;}
        .wzlb ul{}
        .wzlb ul li{float: left;
            color: #0055b8;
            list-style: none;
            border: 2px solid #0055b8;
            padding: .5vw 0%;
            border-radius: 30px;
            margin-right: 2%;
            width: 15%;
            font-size: .8vw;background:none;
            text-align: center;}
        .wzlb ul li:last-child{margin-right:0%;}
        .wzlb ul li:hover{color: #fff;border: 2px solid #0055b8;background:#0055b8;}

        /* ================================================================
                   1. BANNER 区域
                   ================================================================ */
        .banner-section {
            position: relative;
            width: 100%;
            height: 690px;
            border-radius: 0px;
            overflow: hidden;
            background: #0f0f1a;
        }

        .banner-section .banner-bg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: 0;
        }

        .banner-section .banner-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(135deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.0) 70%, rgba(0, 0, 0, 0.0) 100%);
            z-index: 1;
        }

        .banner-section .banner-content {
            position: relative;
            z-index: 2;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: flex-start;
            height: 100%;
            padding: 0 50px;
        }

        .banner-content .breadcrumb {
            font-size: 14px;
            color: rgba(255, 255, 255, 0.6);
            letter-spacing: 1px;
            margin-bottom: 10px;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .banner-content .breadcrumb .sep {
            color: rgba(255, 255, 255, 0.25);
        }

        .banner-content .breadcrumb .highlight {
            color: #ffd866;
        }

        .banner-content .banner-title {
            font-size: 42px;
            font-weight: 700;
            letter-spacing: 2px;
            text-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
            background: linear-gradient(90deg, #fff 40%, #ffd866);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        .banner-content .banner-sub {
            font-size: 16px;
            color: rgba(255, 255, 255, 0.7);
            margin-top: 6px;
            letter-spacing: 4px;
            font-weight: 300;
        }

        /* ================================================================
                   2. 旋转木马 (保留原有)
                   ================================================================ */
        .lunbobg {
            background: #fff;
            overflow: hidden;
            width: 100%;
            padding: 7vw 0 10vw 0;
        }
        .carousel-section {
            width: 100%;
        }

        .carousel-section .section-label {
            font-size: 2vw;
            font-weight: normal;
            color: #0055b8;
            letter-spacing: 2px;
            margin-bottom: 1vw;
            border-left: 0px solid #ffd866;
            padding-left: 0px;
        }

        .lunboms {
            font-size: 1.3vw;
            margin-bottom: 10vw;
            font-weight: lighter;
            color: #0055b8;
            letter-spacing: 1px;
            color: #0055b8;
        }

        .carousel-container {
            position: relative;
            width: 100%;
            aspect-ratio: 3.6 / 1;
            margin: 0 auto;
        }

        .carousel-viewport {
            position: relative;
            width: 100%;
            height: 100%;
            overflow: hidden;
            border-radius: 16px;
        }

        .carousel-track {
            position: relative;
            width: 100%;
            height: 100%;
        }

        .slot {
            position: absolute;
            top: 0;
            width: 45.4545%;
            height: 100%;
            border-radius: 8px;
            overflow: hidden;
            background: #222;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
            transition: left 0.65s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            will-change: left;
        }

        .slot img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            pointer-events: none;
        }

        .slot.left,
        .slot.right {
            opacity: 0.5;
            clip-path: inset(15%);
            transform: translateX(-15%);
        }

        .slot.center {
            clip-path: none;
            transform: none;
        }

        .slot.left {
            left: 0;
        }
        .slot.center {
            left: 27.2727%;
        }
        .slot.right {
            left: 72.7273%;
        }

        .carousel-indicators {
            position: absolute;
            bottom: -7vw;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            gap: 12px;
            z-index: 10;
        }

        .carousel-indicators .dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: #6397d4;
            border: 1px solid #6397d4;
            cursor: pointer;
            transition: all 0.3s ease;
        }

        .carousel-indicators .dot.active {
            background: #0055b8;
            border-color: #0055b8;
            box-shadow: 0 0 20px rgba(255, 216, 102, 0.5);
            transform: scale(1.25);
        }

        .carousel-indicators .dot:hover {
            background: #0055b8;
        }

        .carousel-auto-status {
            position: absolute;
            bottom: -36px;
            right: 0;
            color: rgba(255, 255, 255, 0.25);
            font-size: 12px;
            display: flex;
            align-items: center;
            gap: 6px;
            z-index: 10;
            letter-spacing: 0.5px;
        }

        .carousel-auto-status .pulse {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: #4ecdc4;
            animation: pulse-dot 1.8s ease-in-out infinite;
        }

        .carousel-auto-status.paused .pulse {
            animation: none;
            background: rgba(255, 255, 255, 0.15);
        }

        @keyframes pulse-dot {
            0%,
            100% {
                opacity: 1;
                transform: scale(1);
            }
            50% {
                opacity: 0.3;
                transform: scale(0.6);
            }
        }

        /* ================================================================
                   3. 水平图片列表 (底部)
                   ================================================================ */
        .gallery-section {
            background: linear-gradient(180deg, #e8f3ff, #ffffff);
            width: 100%;
            margin-top: 0px;
            padding:7vw 0 4vw 0;
        }

        .gallery-section .section-label {
            font-size: 20px;
            font-weight: 600;
            color: rgba(255, 255, 255, 0.5);
            letter-spacing: 2px;
            margin-bottom: 18px;
            padding-left: 14px;
            border-left: 4px solid #ffd866;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .gallery-section .section-label .gallery-count {
            font-size: 14px;
            font-weight: 400;
            color: rgba(255, 255, 255, 0.3);
            padding-right: 6px;
        }

        .gallery-wrapper {
            position: relative;
            width: 100%;
            border-radius: 16px;
            overflow: hidden;
            padding: 16px 0 20px;
        }

        .gallery-viewport {margin: 0%;
            position: relative;
            width: 100%;
            overflow: hidden;
            padding: 0 10px;
        }

        .gallery-track {
            display: flex;
            transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            will-change: transform;
        }

        .gallery-item {
            flex: 0 0 25%;
            padding: 0 10px;
            box-sizing: border-box;
        }

        .gallery-item .card {

            border-radius: 0px;
            overflow: hidden;

            transition: transform 0.3s ease, box-shadow 0.3s ease;
            cursor: default;
        }

        .gallery-item .card:hover {
            transform: translateY(-4px);

        }

        .gallery-item .card img {
            width: 100%;
            aspect-ratio: 4.5 / 3;
            display: block;
            object-fit: cover;
            background: #2a2a3e;
        }

        .gallery-item .card .card-info {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 12px 0px 14px 0;
            border-top: 1px solid rgba(255, 255, 255, 0.04);
        }

        .card-info .card-title {
            font-size: .9vw;
            font-weight: normal;
            color: #0055b8;
            letter-spacing: 0.3px;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            max-width: 70%;
        }

        .card-info .card-time {
            font-size: 0.85vw;font-weight: 100;
            color:  #0055b8;
            letter-spacing: 0.5px;
            flex-shrink: 0;
            background: rgba(255, 255, 255, 0.05);
            padding: 2px 10px;
            border-radius: 12px;
            border: 1px solid rgba(255, 255, 255, 0.04);
        }

        .gallery-controls {
            position: absolute;
            top: 35%;
            left: 0;
            right: 0;
            transform: translateY(-50%);
            pointer-events: none;
            z-index: 10;
            padding: 0 0px;
        }

        .gallery-controls .btn {
            position: absolute;
            pointer-events: auto;
            width: 44px;
            height: 44px;
            border-radius: 50%;
            background: #0055b8;
            border: 0px solid rgba(255, 255, 255, 0.12);
            color: #fff;
            font-size: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.3s ease;
            outline: none;
        }

        .gallery-controls .btn:hover {
            background: rgba(255, 255, 255, 0.18);
            border-color: #ffd866;
            transform: scale(1.10);
        }

        .gallery-controls .btn:active {
            transform: scale(0.92);
        }

        .gallery-controls .btn-prev {
            left: 6px;
        }
        .gallery-controls .btn-next {
            right: 6px;
        }

        .gallery-controls .btn .arrow {
            display: inline-block;
            width: 12px;
            height: 12px;
            border-right: 2.5px solid #fff;
            border-top: 2.5px solid #fff;
            transition: border-color 0.3s;
        }

        .gallery-controls .btn:hover .arrow {
            border-color: #ffd866;
        }

        .gallery-controls .btn-prev .arrow {
            transform: rotate(-135deg);
            margin-left: 4px;
        }
        .gallery-controls .btn-next .arrow {
            transform: rotate(45deg);
            margin-right: 4px;
        }

        /* ===== 隐藏的图片源 ===== */
        .image-source {
            display: none;
        }

        /* ================================================================
                   响应式
                   ================================================================ */
        @media (max-width: 992px) {
            .banner-section {
                height: 190px;
            }
            .banner-content .banner-title {
                font-size: 32px;
            }
            .banner-content .breadcrumb {
                font-size: 13px;
            }
            .gallery-item {
                flex: 0 0 33.333%;
            }
            .gallery-controls .btn {
                width: 38px;
                height: 38px;
                font-size: 17px;
            }
        }

        @media (max-width: 768px) {
            body {
                padding: 16px 12px 30px;
            }
            .page-container {
                gap: 28px;
            }
            .banner-section {
                height: 150px;
                border-radius: 12px;
            }
            .banner-content {
                padding: 0 24px !important;
            }
            .banner-content .banner-title {
                font-size: 26px;
            }
            .banner-content .breadcrumb {
                font-size: 12px;
            }
            .banner-content .banner-sub {
                font-size: 13px;
            }

            .gallery-item {
                flex: 0 0 50%;
            }
            .gallery-controls .btn {
                width: 34px;
                height: 34px;
                font-size: 15px;
            }
            .gallery-controls .btn-prev {
                left: 2px;
            }
            .gallery-controls .btn-next {
                right: 2px;
            }
            .card-info .card-title {
                font-size: 13px;
            }
            .card-info .card-time {
                font-size: 11px;
                padding: 1px 8px;
            }

            .carousel-indicators {
                bottom: -30px;
                gap: 8px;
            }
            .carousel-indicators .dot {
                width: 10px;
                height: 10px;
            }
            .carousel-auto-status {
                display: none;
            }
            .section-label {
                font-size: 17px !important;
            }
        }

        @media (max-width: 480px) {
            .banner-section {
                height: 120px;
                border-radius: 10px;
            }
            .banner-content .banner-title {
                font-size: 20px;
            }
            .banner-content .breadcrumb {
                font-size: 10px;
            }
            .banner-content .banner-sub {
                font-size: 11px;
            }
            .gallery-item {
                flex: 0 0 100%;
            }
            .gallery-controls .btn {
                width: 30px;
                height: 30px;
                font-size: 13px;
            }
            .gallery-controls .btn-prev {
                left: 0px;
            }
            .gallery-controls .btn-next {
                right: 0px;
            }
            .card-info .card-title {
                font-size: 12px;
            }
            .card-info .card-time {
                font-size: 10px;
            }
            .slot {
                border-radius: 4px;
            }
            .carousel-viewport {
                border-radius: 10px;
            }
            .carousel-indicators {
                bottom: -26px;
                gap: 6px;
            }
            .carousel-indicators .dot {
                width: 8px;
                height: 8px;
            }
            .section-label {
                font-size: 15px !important;
                padding-left: 10px !important;
            }
        }

        /* ================================================================
           ★ 移动端完美适配（全部使用 vw 单位）
           ================================================================ */

        @media (max-width: 768px) {

            /* ---------- 全局基础 ---------- */
            body {
                padding: 2vw 0 0 0 !important;
            }

            /* ---------- 面包屑 ---------- */
            .breadcrumball {
                height: 8vw;
                line-height: 8vw;
                margin: 0 0 5vw 0;
            }
            .breadcrumb {
                width: 90%;
            }
            .breadcrumb span {
                font-size: 2.8vw !important;
            }

            /* ---------- 主容器 ---------- */
            .page-container {
                width: 92% !important;
                margin: 0 auto 5vw auto !important;
                gap: 3vw !important;
            }

            /* ---------- Banner ---------- */
            .banner-section {
                height: 38vw !important;
                border-radius: 2vw !important;
            }
            .banner-content {
                padding: 0 4vw !important;
            }
            .banner-content .banner-title {
                font-size: 6.5vw !important;
                letter-spacing: 0.5vw;
            }
            .banner-content .banner-sub {
                font-size: 3.2vw !important;
                margin-top: 1vw;
                letter-spacing: 1.5vw;
            }
            .banner-content .breadcrumb {
                font-size: 2.6vw !important;
                gap: 1.5vw;
                margin-bottom: 1.5vw;
            }

            /* ---------- 旋转木马背景 ---------- */
            .lunbobg {
                padding: 6vw 0 12vw 0 !important;
            }

            /* ---------- 旋转木马标题 ---------- */
            .carousel-section .section-label {
                font-size: 4.8vw !important;
                margin-bottom: 1.5vw !important;
                letter-spacing: 0.5vw;
            }
            .lunboms {
                font-size: 3.2vw !important;
                margin-bottom: 6vw !important;
                letter-spacing: 0.3vw;
            }

            /* ---------- 旋转木马容器 ---------- */
            .carousel-container {
                aspect-ratio: 2.6 / 1 !important;
            }
            .carousel-viewport {
                border-radius: 2vw !important;
            }
            .slot {
                border-radius: 1.2vw !important;
                box-shadow: 0 0.6vw 3vw rgba(0, 0, 0, 0.25) !important;
            }
            .slot.left,
            .slot.right {
                opacity: 0.4 !important;
                clip-path: inset(12%) !important;
                transform: translateX(-10%) !important;
            }

            /* ---------- 旋转木马指示器 ---------- */
            .carousel-indicators {
                bottom: -9vw !important;
                gap: 2.2vw !important;
            }
            .carousel-indicators .dot {
                width: 2.8vw !important;
                height: 2.8vw !important;
                border-width: 0.2vw !important;
            }
            .carousel-indicators .dot.active {
                box-shadow: 0 0 4vw rgba(255, 216, 102, 0.4) !important;
                transform: scale(1.2) !important;
            }

            /* ---------- 自动状态隐藏 ---------- */
            .carousel-auto-status {
                display: none !important;
            }

            /* ---------- 画廊区域 ---------- */
            .gallery-section {
                padding: 6vw 0 6vw 0 !important;
            }
            .gallery-section .section-label {
                font-size: 4.2vw !important;
                padding-left: 2.5vw !important;
                border-left-width: 0.8vw !important;
                margin-bottom: 2vw !important;
            }
            .gallery-section .section-label .gallery-count {
                font-size: 3vw !important;
                padding-right: 1vw !important;
            }

            /* ---------- 画廊容器 ---------- */
            .gallery-wrapper {
                padding: 2vw 0 3vw 0 !important;
                border-radius: 2vw !important;
            }
            .gallery-viewport {
                padding: 0 0.5vw !important;
            }

            /* ---------- 画廊项目：每行 2 个 ---------- */
            .gallery-item {
                flex: 0 0 50% !important;
                padding: 0 1.2vw !important;
            }
            .gallery-item .card {
                border-radius: 1.2vw !important;
            }
            .gallery-item .card img {
                aspect-ratio: 4.5 / 3 !important;
                border-radius: 1.2vw 1.2vw 0 0 !important;
            }
            .gallery-item .card .card-info {
                padding: 1.8vw 0.5vw 2.2vw 0.5vw !important;
                border-top-width: 0.2vw !important;
            }
            .card-info .card-title {
                font-size: 2.8vw !important;
                max-width: 65% !important;
                letter-spacing: 0.1vw;
            }
            .card-info .card-time {
                font-size: 2.2vw !important;
                padding: 0.4vw 2vw !important;
                border-radius: 2.5vw !important;
                border-width: 0.1vw !important;
                letter-spacing: 0.1vw;
            }

            /* ---------- 画廊控制按钮 ---------- */
            .gallery-controls {
                top: 32% !important;
                padding: 0 0.5vw !important;
            }
            .gallery-controls .btn {
                width: 9vw !important;
                height: 9vw !important;
                font-size: 4.2vw !important;
                border-width: 0.2vw !important;
            }
            .gallery-controls .btn .arrow {
                width: 2.8vw !important;
                height: 2.8vw !important;
                border-right-width: 0.5vw !important;
                border-top-width: 0.5vw !important;
            }
            .gallery-controls .btn-prev {
                left: 0.5vw !important;
            }
            .gallery-controls .btn-next {
                right: 0.5vw !important;
            }
            .gallery-controls .btn-prev .arrow {
                margin-left: 0.8vw !important;
            }
            .gallery-controls .btn-next .arrow {
                margin-right: 0.8vw !important;
            }

            /* ---------- 底部标签列表 ---------- */
            .wzlb {
                width: 92% !important;
                margin: 0 auto !important;
            }
            .wzlb ul {
                display: flex !important;
                flex-wrap: wrap !important;
                justify-content: center !important;
                gap: 1.8vw !important;
                padding: 0 !important;
                margin: 0 !important;
                list-style: none !important;
            }
            .wzlb ul li {
                float: none !important;
                width: auto !important;
                min-width: 28% !important;
                flex: 0 0 auto !important;
                font-size: 2.6vw !important;
                padding: 1.8vw 3vw !important;
                border-radius: 4vw !important;
                border-width: 0.3vw !important;
                margin-right: 0 !important;
                text-align: center;
                white-space: nowrap;
            }
            .wzlb ul li:last-child {
                margin-right: 0 !important;
            }
            .wzlb ul li:hover {
                border-width: 0.3vw !important;
            }
        }

        /* ================================================================
           ★ 小屏手机额外优化 (≤ 480px)
           ================================================================ */
        @media (max-width: 480px) {

            /* ---------- 面包屑 ---------- */
            .breadcrumball {
                height: 9vw;
                line-height: 9vw;
                margin: 0 0 4vw 0;
            }
            .breadcrumb span {
                font-size:4.2vw !important;
            }

            /* ---------- Banner ---------- */
            .banner-section {
                height: 34vw !important;
                border-radius: 2.5vw !important;
            }
            .banner-content .banner-title {
                font-size: 7.5vw !important;
            }
            .banner-content .banner-sub {
                font-size: 3.6vw !important;
                letter-spacing: 1vw;
            }
            .banner-content .breadcrumb {
                font-size: 2.8vw !important;
            }

            /* ---------- 旋转木马 ---------- */
            .carousel-container {
                aspect-ratio: 2.2 / 1 !important;
            }
            .carousel-section .section-label {
                font-size: 5.2vw !important;
            }
            .lunboms {
                font-size: 3.6vw !important;
                margin-bottom: 5vw !important;
            }
            .carousel-indicators {
                bottom: -10vw !important;
                gap: 2.8vw !important;
            }
            .carousel-indicators .dot {
                width: 3.2vw !important;
                height: 3.2vw !important;
            }
            .slot {
                border-radius: 1.5vw !important;
            }
            .slot.left,
            .slot.right {
                clip-path: inset(10%) !important;
                transform: translateX(-8%) !important;
            }

            /* ---------- 画廊：每行 1 个 ---------- */
            .gallery-item {
                flex: 0 0 100% !important;
                padding: 0 1.5vw !important;
            }
            .gallery-item .card .card-info {
                padding: 2.2vw 0.5vw 2.8vw 0.5vw !important;
            }
            .card-info .card-title {
                font-size: 3.6vw !important;
                max-width: 70% !important;
            }
            .card-info .card-time {
                font-size: 2.8vw !important;
                padding: 0.6vw 2.5vw !important;
            }

            /* ---------- 画廊控制按钮 ---------- */
            .gallery-controls .btn {
                width: 11vw !important;
                height: 11vw !important;
                font-size: 5vw !important;
            }
            .gallery-controls .btn .arrow {
                width: 3.2vw !important;
                height: 3.2vw !important;
                border-right-width: 0.6vw !important;
                border-top-width: 0.6vw !important;
            }
            .gallery-controls .btn-prev {
                left: 0.2vw !important;
            }
            .gallery-controls .btn-next {
                right: 0.2vw !important;
            }

            /* ---------- 底部标签：每行 2 个 ---------- */
            .wzlb ul {
                gap: 2vw !important;
            }
            .wzlb ul li {
                min-width: 42% !important;
                font-size: 3vw !important;
                padding: 2.2vw 2.5vw !important;
                border-radius: 5vw !important;
                border-width: 0.3vw !important;
                white-space: nowrap;
            }

            /* ---------- 画廊标题 ---------- */
            .gallery-section .section-label {
                font-size: 4.8vw !important;
                padding-left: 2.8vw !important;
                border-left-width: 1vw !important;
            }
            .gallery-section .section-label .gallery-count {
                font-size: 3.4vw !important;
            }
        }

        /* ================================================================
           ★ 超小屏手机 (≤ 375px) 微调
           ================================================================ */
        @media (max-width: 375px) {

            .breadcrumb span {
                font-size: 3.5vw !important;
            }
            .banner-content .banner-title {
                font-size: 8vw !important;
            }
            .banner-content .banner-sub {
                font-size: 3.8vw !important;
            }
            .carousel-section .section-label {
                font-size: 5.6vw !important;
            }
            .lunboms {
                font-size: 3.8vw !important;
            }
            .card-info .card-title {
                font-size: 4vw !important;
            }
            .card-info .card-time {
                font-size: 3vw !important;
            }
            .wzlb ul li {
                font-size: 3.2vw !important;
                padding: 2.5vw 2vw !important;
                min-width: 44% !important;
            }
            .gallery-controls .btn {
                width: 12vw !important;
                height: 12vw !important;
                font-size: 5.5vw !important;
            }
        }
    