/* product.html: page-specific styles extracted without reordering */

/* ================================================================
           0. CSS Reset & Base
           ================================================================ */
        *,
        *::before,
        *::after {
            box-sizing: border-box;
            margin: 0;
            padding: 0
        }

        html {
            scroll-behavior: smooth;
            -webkit-text-size-adjust: 100%;
            overflow-x: hidden;
            width: 100%
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
            background-color: #fff;
            color: #1f2937;
            line-height: 1.5;
            opacity: 0;
            animation: bodyFadeIn 0.6s ease forwards;
            overflow-x: hidden;
            width: 100%;
            max-width: 100vw
        }

        @keyframes bodyFadeIn {
            0% {
                opacity: 0
            }

            100% {
                opacity: 1
            }
        }

        img {
            max-width: 100%;
            height: auto;
            display: block
        }

        * {
            max-width: 100vw
        }

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

        ul,
        ol {
            list-style: none
        }

        button {
            font: inherit;
            cursor: pointer;
            outline: none
        }

        /* ================================================================
           1. Brand Colors & Utility
           ================================================================ */
        :root {
            --brand-navy: #2d3b6b;
            --brand-lime: #c0e17e;
            --brand-lime-dark: #a8c96a;
            --brand-orange: #606DAD;
            --bg-light: #f8f9fa
        }

        .bg-navy {
            background-color: var(--brand-navy)
        }

        .text-navy {
            color: #606DAD
        }

        .bg-light {
            background-color: var(--bg-light)
        }

        .container {
            width: 100%;
            max-width: 1400px;
            margin-left: auto;
            margin-right: auto;
            padding-left: 1rem;
            padding-right: 1rem
        }

        #mainHeader .container {
            overflow: visible
        }

        @media(min-width:1280px) {
            .container {
                padding-left: 2rem;
                padding-right: 2rem
            }
        }

        .flex {
            display: flex
        }

        .inline-flex {
            display: inline-flex
        }

        .grid {
            display: grid
        }

        .hidden {
            display: none
        }

        .block {
            display: block
        }

        .inline-block {
            display: inline-block
        }

        .flex-col {
            flex-direction: column
        }

        .items-center {
            align-items: center
        }

        .items-end {
            align-items: flex-end
        }

        .justify-between {
            justify-content: space-between
        }

        .justify-center {
            justify-content: center
        }

        .self-center {
            align-self: center
        }

        .flex-wrap {
            flex-wrap: wrap
        }

        .grid-cols-1 {
            grid-template-columns: repeat(1, 1fr)
        }

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

        .gap-3 {
            gap: 0.75rem
        }

        .gap-4 {
            gap: 1rem
        }

        .gap-6 {
            gap: 1.5rem
        }

        .gap-8 {
            gap: 2rem
        }

        .gap-12 {
            gap: 3rem
        }

        .w-full {
            width: 100%
        }

        .mx-auto {
            margin-left: auto;
            margin-right: auto
        }

        .ml-1 {
            margin-left: 0.25rem
        }

        .ml-2 {
            margin-left: 0.5rem
        }

        .mr-2 {
            margin-right: 0.5rem
        }

        .mb-1 {
            margin-bottom: 0.25rem
        }

        .mb-2 {
            margin-bottom: 0.5rem
        }

        .mb-4 {
            margin-bottom: 1rem
        }

        .mb-6 {
            margin-bottom: 1.5rem
        }

        .mb-8 {
            margin-bottom: 2rem
        }

        .mb-10 {
            margin-bottom: 2.5rem
        }

        .mb-12 {
            margin-bottom: 3rem
        }

        .mb-16 {
            margin-bottom: 4rem
        }

        .mt-2 {
            margin-top: 0.5rem
        }

        .mt-4 {
            margin-top: 1rem
        }

        .mt-6 {
            margin-top: 1.5rem
        }

        .mt-8 {
            margin-top: 2rem
        }

        .mt-12 {
            margin-top: 3rem
        }

        .p-4 {
            padding: 1rem
        }

        .p-6 {
            padding: 1.5rem
        }

        .p-8 {
            padding: 2rem
        }

        .px-4 {
            padding-left: 1rem;
            padding-right: 1rem
        }

        .px-6 {
            padding-left: 1.5rem;
            padding-right: 1.5rem
        }

        .px-8 {
            padding-left: 2rem;
            padding-right: 2rem
        }

        .py-1 {
            padding-top: 0.25rem;
            padding-bottom: 0.25rem
        }

        .py-2 {
            padding-top: 0.5rem;
            padding-bottom: 0.5rem
        }

        .py-3 {
            padding-top: 0.75rem;
            padding-bottom: 0.75rem
        }

        .py-16 {
            padding-top: 4rem;
            padding-bottom: 4rem
        }

        .py-20 {
            padding-top: 5rem;
            padding-bottom: 5rem
        }

        .pt-8 {
            padding-top: 2rem
        }

        .text-center {
            text-align: center
        }

        .text-xs {
            font-size: 0.875rem;
            line-height: 1rem
        }

        .text-sm {
            font-size: 1rem;
            line-height: 1.8
        }

        .text-xl {
            font-size: 1.25rem;
            line-height: 2
        }

        .text-1xl {
            font-size: 1.375rem;
            line-height: 2
        }

        .text-2xl {
            font-size: 1.5rem;
            line-height: 2
        }

        .text-3xl {
            font-size: 1.875rem;
            line-height: 2.25rem
        }

        .text-4xl {
            font-size: 2.25rem;
            line-height: 2.5rem
        }

        .font-light {
            font-weight: 300
        }

        .font-normal {
            font-weight: 400
        }

        .font-medium {
            font-weight: 500
        }

        .font-bold {
            font-weight: 700
        }

        .leading-relaxed {
            line-height: 1.625
        }

        .leading-loose {
            line-height: 2
        }

        .text-white {
            color: #fff
        }

        .text-gray-400 {
            color: #9ca3af
        }

        .text-gray-500 {
            color: #6b7280
        }

        .text-gray-600 {
            color: #4b4b4b
        }

        .text-gray-700 {
            color: #374151
        }

        .bg-white {
            background-color: #fff
        }

        .bg-gray-100 {
            background-color: #f3f4f6
        }

        .border {
            border: 1px solid
        }

        .border-t {
            border-top: 1px solid
        }

        .border-b {
            border-bottom: 1px solid
        }

        .border-gray-100 {
            border-color: #f3f4f6
        }

        .border-gray-200 {
            border-color: #e5e7eb
        }

        .rounded {
            border-radius: 0.25rem
        }

        .rounded-lg {
            border-radius: 0.5rem
        }

        .rounded-full {
            border-radius: 9999px
        }

        .overflow-hidden {
            overflow: hidden
        }

        .shadow-sm {
            box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05)
        }

        .shadow-lg {
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)
        }

        .shadow-xl {
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)
        }

        .relative {
            position: relative
        }

        .absolute {
            position: absolute
        }

        .sticky {
            position: sticky
        }

        .fixed {
            position: fixed
        }

        .inset-0 {
            top: 0;
            right: 0;
            bottom: 0;
            left: 0
        }

        .top-0 {
            top: 0
        }

        .z-10 {
            z-index: 10
        }

        .z-50 {
            z-index: 50
        }

        .object-cover {
            object-fit: cover
        }

        .object-contain {
            object-fit: contain
        }

        .cursor-pointer {
            cursor: pointer
        }

        .space-x-2>*+* {
            margin-left: 0.5rem
        }

        .space-x-3>*+* {
            margin-left: 0.75rem
        }

        .space-x-4>*+* {
            margin-left: 1rem
        }

        .space-x-6>*+* {
            margin-left: 1.5rem
        }

        .space-x-8>*+* {
            margin-left: 2rem
        }

        .space-y-3>*+* {
            margin-top: 0.85rem
        }

        @media(min-width:768px) {
            .md\:flex {
                display: flex
            }

            .md\:hidden {
                display: none
            }

            .md\:w-1\/3 {
                width: 33.333333%
            }

            .md\:w-2\/3 {
                width: 66.666667%
            }

            .md\:w-1\/2 {
                width: 50%
            }

            .md\:grid-cols-2 {
                grid-template-columns: repeat(2, 1fr)
            }

            .md\:grid-cols-4 {
                grid-template-columns: repeat(4, 1fr)
            }

            .md\:grid-cols-5 {
                grid-template-columns: repeat(5, 1fr)
            }

            .md\:flex-row {
                flex-direction: row
            }

            .md\:mt-0 {
                margin-top: 0
            }
        }

        .md-hidden {
            display: inline-block
        }

        @media(min-width:768px) {
            .md-hidden {
                display: none !important
            }
        }

        /* ================================================================
           2. Navigation (新闻页面原版)
           ================================================================ */
        #mainHeader .container,
        #mainHeader .header-inner {
            overflow: visible !important;
        }

        .header-nav {
            background-color: var(--brand-navy);
            color: white;
            position: sticky;
            top: 0;
            z-index: 50;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
            transition: box-shadow 0.3s ease, background-color 0.3s ease
        }

        .header-nav.scrolled {
            box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.2);
            background-color: rgba(26, 42, 78, 0.97);
            backdrop-filter: blur(6px)
        }

        .header-inner {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding-top: 0.55rem;
            padding-bottom: 0.55rem;
            transition: padding 0.3s ease
        }

        .header-nav.scrolled .header-inner {
            padding-top: 0.5rem;
            padding-bottom: 0.5rem
        }

        .nav-logo {
            height: 50px;
            width: auto;
            max-height: 55px;
            object-fit: contain;
            filter: brightness(1000%);
            transition: transform 0.3s ease, height 0.3s ease
        }

        .nav-logo:hover {
            transform: scale(1.05)
        }

        .header-nav.scrolled .nav-logo {
            height: 50px
        }

        @media(max-width:768px) {
            .nav-logo {
                height: 44px
            }
        }

        .nav-desktop {
            display: none
        }

        @media(min-width:768px) {
            .nav-desktop {
                display: flex;
                align-items: center;
                gap: 3.5rem;
                font-size: 1.125rem;
                font-weight: 300
            }
        }

        .nav-desktop>a,
        .nav-item>a {
            color: #e2e8f0;
            transition: color 0.25s;
            position: relative
        }

        .nav-desktop>a::after,
        .nav-item>a:not(.flex)::after {
            content: '';
            position: absolute;
            left: 0;
            bottom: -22px;
            width: 0;
            height: 4px;
            background: var(--brand-lime);
            transition: width 0.3s ease
        }

        .nav-desktop>a:hover::after,
        .nav-item>a:not(.flex):hover::after {
            width: 100%
        }

        .nav-desktop>a:hover,
        .nav-item>a:hover {
            color: #fff;
            font-weight: 500
        }

        .nav-item {
            position: relative
        }

        .dropdown-menu {
            display: block;
            position: absolute;
            top: calc(100% + 60px);
            left: 0;
            width: 100vw;
            background-color: #5a6bb0;
            min-width: 200px;
            padding: 0.75rem 0;
            border-radius: 0.25rem;
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.3);
            z-index: 50;
            opacity: 0;
            visibility: hidden;
            transform: translateY(8px);
            transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
            pointer-events: none
        }

        .dropdown-menu::before {
            content: '';
            position: absolute;
            top: 0;
            left: -9999px;
            width: 9999px;
            height: 100%;
            background-color: #5a6bb0
        }

        .nav-item::after {
            content: '';
            position: absolute;
            top: 100%;
            left: 0;
            width: 100%;
            height: 60px
        }

        .nav-item:hover .dropdown-menu {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
            pointer-events: auto
        }

        .dropdown-menu li a {
            display: block;
            padding: 0.6rem 0.6rem;
            color: #e2e8f0;
            font-weight: 400;
            font-size: 0.95rem;
            transition: background 0.25s, color 0.25s, padding-left 0.25s
        }

        .dropdown-menu li a:hover {
            color: var(--brand-lime);
            padding-left: 1rem
        }

        .nav-item .dropdown-menu {
            z-index: 60
        }

        .menu-btn {
            background: none;
            border: none;
            color: white;
            font-size: 1.75rem;
            cursor: pointer;
            padding: 0.25rem 0.5rem;
            transition: transform 0.3s, color 0.2s
        }

        .menu-btn:hover {
            color: var(--brand-lime);
            transform: scale(1.1)
        }

        #mobileMenu {
            display: none;
            background-color: var(--brand-navy);
            padding: 1rem 1.5rem 1.5rem;
            border-top: 1px solid rgba(255, 255, 255, 0.1);
            animation: slideDown 0.3s ease
        }

        @keyframes slideDown {
            0% {
                opacity: 0;
                max-height: 0
            }

            100% {
                opacity: 1;
                max-height: 600px
            }
        }

        #mobileMenu.active {
            display: block
        }

        #mobileMenu a {
            display: block;
            padding: 0.9rem 0;
            color: #e2e8f0;
            font-size: 1.2rem;
            transition: color 0.2s, padding-left 0.2s
        }

        #mobileMenu a:hover {
            color: var(--brand-lime);
            padding-left: 0.5rem
        }

        .mobile-dropdown-content {
            display: none;
            padding-left: 1.2rem;
            animation: slideDown 0.25s ease
        }

        .mobile-dropdown-content a {
            font-size: 0.9rem;
            padding: 0.4rem 0;
            color: #b0c4de
        }

        .mobile-dropdown-content a:hover {
            color: var(--brand-lime)
        }

        .mobile-dropdown-toggle.active+.mobile-dropdown-content {
            display: block
        }

        .nav-subtitle-bar {
            display: none;
            background-color: #5a6bb0;
            color: #e2e8f0;
            padding: 0.75rem 0;
            border-top: 1px solid rgba(192, 225, 126, 0.2);
            font-size: 0.95rem;
            font-weight: 300;
            letter-spacing: 0.05em
        }

        .nav-subtitle-bar .subtitle-inner {
            width: 100%;
            max-width: 1400px;
            margin-left: auto;
            margin-right: auto;
            padding-left: 1rem;
            padding-right: 1rem;
            text-align: left
        }

        @media(min-width:1280px) {
            .nav-subtitle-bar .subtitle-inner {
                padding-left: 2rem;
                padding-right: 2rem
            }
        }

        @media(min-width:768px) {
            .nav-subtitle-bar {
                display: block
            }
        }

        /* ================================================================
           3. Banner 区 (新闻页面原版)
           ================================================================ */
        .news-banner {
            position: relative;
            width: 100%;
            height: 600px;
            background-size: cover;
            background-position: center;
            background-image: linear-gradient(180deg, rgba(45, 59, 107, 0.20) 0%, rgba(45, 59, 107, 0.15) 100%), url('../../images/cpbanner.jpg');
            display: flex;
            align-items: center;
            justify-content: flex-start;
            text-align: left;
            color: #fff;
            overflow: hidden
        }

        .news-banner::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            height: 4px;
            background: linear-gradient(90deg, transparent, var(--brand-lime), transparent);
            opacity: 0.6
        }

        .news-banner .banner-inner {
            position: relative;
            z-index: 2;
            animation: bannerFadeUp 0.8s ease forwards;
            text-align: left;
            padding: 0 1rem;
        }

        @media(min-width:1280px) {
            .news-banner .banner-inner {
                padding-left: 2rem;
                padding-right: 2rem;
            }
        }

        @keyframes bannerFadeUp {
            0% {
                opacity: 0;
                transform: translateY(30px)
            }

            100% {
                opacity: 1;
                transform: translateY(0)
            }
        }

        .news-banner .banner-tag {
            display: inline-block;
            background: rgba(96, 109, 173, 0.85);
            color: #fff;
            font-size: 0.8rem;
            letter-spacing: 0.12em;
            padding: 0.35rem 1.4rem;
            border-radius: 3px;
            margin-bottom: 1.5rem;
            font-weight: 300;
        }

        .banner-accent-line {
            width: 211px;
            height: 8px;
            background: var(--brand-lime);
            margin: 1rem 0;
            border-radius: 2px;
        }

        .news-banner .banner-heading {
            font-size: 2.5rem;
            font-weight: 400;
            letter-spacing: 0.06em;
            color: #2D3B6B;
            line-height: 1.3;
        }

        .news-banner .banner-heading strong {
            font-weight: 600;
        }

        .news-banner .banner-subtitle {
            font-size: 1.05rem;
            font-weight: 300;
            color: #585858;
            letter-spacing: 0.06em;
            line-height: 1.6;
            margin-top: 0.5rem;
        }

        @media(max-width:768px) {
            .news-banner {
                height: 380px;
                justify-content: flex-start;
            }

            .news-banner .banner-inner {
                padding-left: 1rem;
                padding-right: 1rem
            }

            .news-banner .banner-heading {
                font-size: 1.5rem
            }

            .news-banner .banner-subtitle {
                font-size: 0.8rem
            }

            .news-banner .banner-tag {
                font-size: 0.65rem
            }

            .banner-accent-line {
                width: 80px;
                margin: 1rem 0;
            }
        }

        /* ================================================================
           4. CTA 板块 (新闻页面原版)
           ================================================================ */
        .team-cta-section {
            background: linear-gradient(90deg, #606DAD 0%, #2D3B6B 100%);
            height: 169px;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            overflow: visible;
        }

        .team-cta-card {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 2.5rem;
            width: 100%;
            height: 100%;
            position: relative;
            max-width: 1400px;
            margin: 0 auto;
            padding: 0 1rem;
        }

        .team-cta-card .cta-image {
            flex: 0 0 164px;
            width: 164px;
            height: 164px;
            left: 28%;
            border-radius: 50%;
            overflow: hidden;
            background: #eef1fa;
            flex-shrink: 0;
            position: relative;
            z-index: 2;
            margin-top: -20px;
            margin-bottom: 40px;
        }

        .team-cta-card .cta-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .team-cta-card .cta-content {
            flex: 1;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            padding: 0.5rem 0;
            z-index: 2;
            text-align: center;
        }

        .team-cta-card .cta-content h2 {
            font-size: 1.3125rem;
            font-weight: 400;
            color: #fff;
            letter-spacing: 0.04em;
            margin-bottom: 0.3rem;
            line-height: 1.6;
        }

        .team-cta-card .cta-content .cta-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
            padding: 0.5rem 6rem;
            font-size: 1rem;
            font-weight: 400;
            color: var(--brand-navy);
            background: var(--brand-lime);
            letter-spacing: 0.16em;
            transition: all 0.3s ease;
            border: none;
            cursor: pointer;
            align-self: center;
            border-radius: 2px;
        }

        .team-cta-card .cta-content .cta-btn:hover {
            background: #fff;
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
            gap: 0.8rem;
        }

        .team-cta-card .cta-content .cta-btn svg {
            width: 14px;
            height: 14px;
            stroke: currentColor;
            fill: none;
            stroke-width: 2.5;
            stroke-linecap: round;
            stroke-linejoin: round;
            transition: transform 0.3s ease;
        }

        .team-cta-card .cta-content .cta-btn:hover svg {
            transform: translateX(4px);
        }

        @media(max-width:992px) {
            .team-cta-section {
                height: auto;
                min-height: 169px;
                padding: 0.5rem 0;
            }

            .team-cta-card {
                gap: 1.8rem;
                padding: 0 1rem;
            }

            .team-cta-card .cta-image {
                flex: 0 0 130px;
                width: 130px;
                height: 130px;
                margin-top: -15px;
                margin-bottom: -15px;
            }

            .team-cta-card .cta-content h2 {
                font-size: 1.1rem;
                line-height: 1.5;
            }

            .team-cta-card .cta-content .cta-btn {
                font-size: 0.9rem;
                padding: 0.4rem 2.5rem;
                letter-spacing: 0.12em;
            }
        }

        @media(max-width:768px) {
            .team-cta-section {
                height: auto;
                min-height: 140px;
                padding: 0.8rem 0;
            }

            .team-cta-card {
                flex-direction: row;
                gap: 1rem;
                flex-wrap: nowrap;
                padding: 0 0.75rem;
                align-items: center;
            }

            .team-cta-card .cta-image {
                flex: 0 0 90px;
                width: 90px;
                height: 90px;
                margin-top: -8px;
                margin-bottom: -8px;
                left: auto;
            }

            .team-cta-card .cta-content {
                padding: 0;
                align-items: center;
                text-align: center;
            }

            .team-cta-card .cta-content h2 {
                font-size: 0.9rem;
                line-height: 1.4;
                margin-bottom: 0.2rem;
                letter-spacing: 0.03em;
            }

            .team-cta-card .cta-content .cta-btn {
                font-size: 0.7rem;
                padding: 0.25rem 1rem;
                letter-spacing: 0.06em;
                gap: 0.3rem;
            }

            .team-cta-card .cta-content .cta-btn svg {
                width: 12px;
                height: 12px;
            }
        }

        @media(max-width:576px) {
            .team-cta-section {
                min-height: 120px;
                padding: 0.5rem 0;
            }

            .team-cta-card {
                gap: 0.6rem;
                padding: 0 0.5rem;
            }

            .team-cta-card .cta-image {
                flex: 0 0 70px;
                width: 70px;
                height: 70px;
                margin-top: -5px;
                margin-bottom: -5px;
                left: auto;
            }

            .team-cta-card .cta-content h2 {
                font-size: 0.75rem;
                line-height: 1.3;
                margin-bottom: 0.1rem;
                letter-spacing: 0.02em;
            }

            .team-cta-card .cta-content .cta-btn {
                font-size: 0.55rem;
                padding: 0.15rem 0.7rem;
                letter-spacing: 0.04em;
                gap: 0.15rem;
            }

            .team-cta-card .cta-content .cta-btn svg {
                width: 9px;
                height: 9px;
            }
        }

        @media(max-width:400px) {
            .team-cta-card .cta-image {
                flex: 0 0 55px;
                width: 55px;
                height: 55px;
                margin-top: -3px;
                margin-bottom: -3px;
            }

            .team-cta-card .cta-content h2 {
                font-size: 0.65rem;
                line-height: 1.2;
            }

            .team-cta-card .cta-content .cta-btn {
                font-size: 0.5rem;
                padding: 0.1rem 0.5rem;
                letter-spacing: 0.03em;
            }

            .team-cta-card .cta-content .cta-btn svg {
                width: 8px;
                height: 8px;
            }
        }

        /* ================================================================
           5. Footer (新闻页面原版)
           ================================================================ */
        .footer-link {
            transition: color 0.25s, padding-left 0.25s;
            display: inline-block;
            font-weight: 300
        }

        .footer-link:hover {
            color: var(--brand-navy);
            padding-left: 3px
        }

        .footer-heading {
            color: var(--brand-navy);
            font-weight: 700;
            font-size: 1rem;
            position: relative;
            display: inline-block
        }

        .footer-heading>p {
            font-weight: 300 !important
        }

        .footer-heading::after {
            content: '';
            display: block;
            width: 24px;
            height: 2px;
            background: var(--brand-lime);
            margin-top: 0.5rem;
            border-radius: 1px
        }

        .footer-logo {
            height: 60px;
            width: auto;
            max-height: 60px;
            object-fit: contain;
            transition: transform 0.3s
        }

        .footer-logo:hover {
            transform: scale(1.05)
        }

        .lxtext {
            font-weight: 300 !important;
            font-size: 0.875rem
        }

        @media(max-width:640px) {
            .footer-logo {
                height: 40px
            }
        }

        .social-icon-wrapper {
            position: relative;
            display: inline-block;
            cursor: pointer
        }

        .social-icon-wrapper svg {
            padding: 4px;
            transition: all 0.3s ease;
            border: 1px solid;
            border-radius: 50%
        }

        .social-icon-wrapper:hover svg {
            transform: scale(1.15)
        }

        .qrcode-popup {
            display: none;
            position: absolute;
            bottom: 130%;
            left: 50%;
            transform: translateX(-50%) scale(0.9);
            background: #fff;
            padding: 10px 10px 6px;
            border-radius: 10px;
            box-shadow: 0 12px 30px rgba(0, 0, 0, 0.20);
            z-index: 100;
            min-width: 100px;
            text-align: center;
            border: 1px solid #f0f0f0;
            transition: transform 0.25s ease;
            transform-origin: bottom center
        }

        .qrcode-popup::after {
            content: '';
            position: absolute;
            top: 100%;
            left: 50%;
            transform: translateX(-50%);
            border: 8px solid transparent;
            border-top-color: #fff
        }

        .qrcode-popup img {
            width: 100px;
            height: 100px;
            object-fit: contain;
            display: block;
            border-radius: 4px
        }

        .qrcode-popup .label {
            font-size: 11px;
            color: #4a5568;
            margin-top: 4px;
            font-weight: 500
        }

        .social-icon-wrapper:hover .qrcode-popup {
            display: block;
            transform: translateX(-50%) scale(1)
        }

        @media(max-width:640px) {
            .qrcode-popup img {
                width: 80px;
                height: 80px
            }

            .qrcode-popup {
                min-width: 80px;
                padding: 8px 8px 4px
            }

            .qrcode-popup .label {
                font-size: 10px
            }
        }

        .lang-switch-wrapper {
            position: relative;
            display: inline-block
        }

        .lang-toggle {
            background: none;
            border: none;
            color: inherit;
            padding: 0.25rem 0.5rem;
            cursor: pointer;
            font-size: 0.875rem;
            font-family: inherit;
            outline: none
        }

        .lang-dropdown {
            display: none;
            position: absolute;
            top: 100%;
            right: 0;
            background-color: var(--brand-navy);
            min-width: 120px;
            padding: 0.5rem 0;
            border-radius: 0.25rem;
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.3);
            z-index: 60;
            opacity: 0;
            visibility: hidden;
            transform: translateY(8px);
            transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
            pointer-events: none
        }

        .lang-switch-wrapper:hover .lang-dropdown {
            display: block;
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
            pointer-events: auto
        }

        .lang-option {
            display: block;
            padding: 0.5rem 1.5rem;
            color: #e2e8f0;
            font-size: 0.875rem;
            transition: background 0.25s, color 0.25s, padding-left 0.25s;
            text-align: right
        }

        .lang-option:hover {
            color: var(--brand-lime);
            padding-left: 2rem
        }

        .lang-option.active {
            color: var(--brand-lime);
            font-weight: 500
        }

        @media(min-width:768px) {
            .lang-dropdown {
                background-color: #5a6bb0
            }

            .lang-switch-wrapper::after {
                content: '';
                position: absolute;
                top: 100%;
                left: 0;
                width: 100%;
                height: 10px
            }
        }

        .aos-init {
            opacity: 0;
            transition: opacity 0.8s ease, transform 0.8s ease;
            will-change: opacity, transform
        }

        .aos-animate {
            opacity: 1
        }

        .aos-fade-up {
            transform: translateY(35px)
        }

        .aos-animate.aos-fade-up {
            transform: translateY(0)
        }

        .aos-fade-right {
            transform: translateX(-35px)
        }

        .aos-animate.aos-fade-right {
            transform: translateX(0)
        }

        ::-webkit-scrollbar {
            width: 6px
        }

        ::-webkit-scrollbar-track {
            background: #f1f1f1
        }

        ::-webkit-scrollbar-thumb {
            background: #c4c4c4;
            border-radius: 3px
        }

        ::-webkit-scrollbar-thumb:hover {
            background: #a0a0a0
        }

        .fixed-contact-btn {
            position: fixed;
            right: 3%;
            top: 80%;
            transform: translateY(-50%);
            z-index: 999;
            display: block;
            width: 117px;
            height: 55px;
            cursor: pointer;
            transition: all 0.3s ease;
            box-shadow: -2px 4px 12px rgba(0, 0, 0, 0.15);
            border-radius: 8px 0 0 8px;
            overflow: hidden;
            background: #2d3b6b
        }

        .fixed-contact-btn img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block
        }

        .fixed-contact-btn:hover {
            transform: translateY(-50%) scale(1.05);
            box-shadow: -4px 8px 20px rgba(0, 0, 0, 0.25)
        }

        @media(max-width:768px) {
            .fixed-contact-btn {
                width: 44px;
                height: 120px;
                display: none
            }
        }

        @media(max-width:480px) {
            .fixed-contact-btn {
                width: 36px;
                height: 100px;
                display: none
            }
        }

        @media(max-width:640px) {

            html,
            body {
                overflow-x: hidden !important;
                width: 100% !important;
                max-width: 100% !important
            }

            .container {
                padding-left: 0.75rem !important;
                padding-right: 0.75rem !important;
                overflow: hidden !important
            }

            .footer-content {
                flex-direction: column !important
            }

            .footer-menu-box {
                flex-wrap: wrap;
                gap: 1rem
            }

            .footer-menu-item-box {
                width: 48%
            }

            .footer-share-wrap {
                flex-wrap: wrap;
                justify-content: center
            }
        }

        /* ================================================================
           6. 中间内容区 - 成型技术及工艺 (参照产品页面样式修改)
           ================================================================ */

        /* 技术介绍文字区域 */
        .tech-intro-section {
            padding: 4rem 0 2rem;
            background-color: #f8f9fa;
        }

        .tech-intro-section .intro-text {
            font-size: 1.05rem;
            color: #4b4b4b;
            line-height: 2;
            max-width: 1000px;
            font-weight: 300;
            letter-spacing: 0.03em;
        }

        /* 技术卡片区域 */
        .tech-cards-section {
            padding: 2rem 0 5rem;
            background-color: #f5f5f5;
        }

        .tech-cards-section .section-label {
            text-align: left;
            font-size: 0.85rem;
            color: #909399;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            margin-bottom: 0.5rem;
        }

        .tech-cards-section .section-title {
            text-align: left;
            font-size: 2rem;
            font-weight: 400;
            color: #2d3b6b;
            letter-spacing:5px;
            margin-bottom: 0.8rem;
        }

        .tech-cards-section .section-accent {
            width: 60px;
            height: 3px;
            /* background: #c0e17e; */
            margin: 0 0 2.5rem;
            border-radius: 2px;
        }

        .tech-cards-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 1.5rem;
        }

        .tech-card-item {
            background: #fff;
            border-radius: 6px;
            padding: 2.5rem 1.5rem;
            text-align: center;
            box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05);
            transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.4s ease;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            border: 1px solid #f0f0f0;
        }

        .tech-card-item:hover {
            transform: translateY(-6px);
            box-shadow: 0 20px 35px rgba(0, 0, 0, 0.10);
        }

        .tech-card-item .card-icon {
            width: 80px;
            height: 80px;
            margin-bottom: 1.2rem;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .tech-card-item .card-icon img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }

        .tech-card-item .card-name {
            font-size: 1rem;
            font-weight: 400;
            color: #2d3b6b;
            letter-spacing: 0.04em;
        }

        @media (max-width: 1024px) {
            .tech-cards-grid {
                grid-template-columns: repeat(3, 1fr);
                gap: 1.2rem;
            }
        }

        @media (max-width: 768px) {
            .tech-intro-section {
                padding: 2.5rem 0 1.5rem;
            }
            .tech-intro-section .intro-text {
                font-size: 0.92rem;
                line-height: 1.8;
            }
            .tech-cards-section {
                padding: 1.5rem 0 3rem;
            }
            .tech-cards-section .section-title {
                font-size: 1.2rem;
            }
            .tech-cards-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 1rem;
            }
            .tech-card-item {
                padding: 1.5rem 1rem;
            }
            .tech-card-item .card-icon {
                width: 60px;
                height: 60px;
            }
            .tech-card-item .card-name {
                font-size: 0.85rem;
            }
        }

        @media (max-width: 480px) {
            .tech-cards-grid {
                grid-template-columns: 1fr 1fr;
                gap: 0.8rem;
            }
            .tech-card-item {
                padding: 1rem 0.8rem;
            }
            .tech-card-item .card-icon {
                width: 50px;
                height: 50px;
            }
            .tech-card-item .card-name {
                font-size: 0.78rem;
            }
        }

        /* ================================================================
           7. 解决方案板块 - 产品详情区 (Tab切换设计)
           ================================================================ */
        .solution-section {
            padding: 4rem 0;
            background-color: #f5f5f5;
        }

        .solution-section .section-header {
            text-align: left;
            margin-bottom: 2.5rem;
        }

        .solution-section .section-header .section-tag {
            display: inline-block;
            background: #606DAD;
            color: #fff;
            font-size: 0.8rem;
            letter-spacing: 0.1em;
            padding: 0.3rem 1.2rem;
            border-radius: 2px;
            margin-bottom: 0.8rem;
        }

        .solution-section .section-header .section-main-title {
            font-size: 1.8rem;
            font-weight: 400;
            color: #2d3b6b;
            letter-spacing: 0.04em;
        }

        .solution-section .section-header .section-main-title strong {
            font-weight: 700;
            color: #606DAD;
        }

        .solution-section .section-header .section-subtitle {
            font-size: 1rem;
            color: #666;
            margin-top: 0.8rem;
            font-weight: 300;
            letter-spacing: 0.03em;
        }

        .solution-section .section-header .section-accent {
            width: 60px;
            height: 3px;
            background: #c0e17e;
            margin: 0.8rem 0 0;
            border-radius: 2px;
        }

        /* Tab 导航 */
        .solution-tabs {
            display: flex;
            justify-content: flex-start;
            gap: 0;
            margin-bottom: 2.5rem;
            border-bottom: 1px solid #D8D8D8;
        }

        .solution-tab-btn {
            padding: 0.8rem 2.5rem;
            font-size: 1.375rem;
            font-weight: 400;
            color: #979797;
            background: none;
            border: none;
            cursor: pointer;
            letter-spacing: 0.04em;
            position: relative;
            transition: all 0.3s ease;
            font-family: inherit;
        }

        .solution-tab-btn::after {
            content: '';
            position: absolute;
            bottom: 0px;
            left: 50%;
            /* width: 132px; */
            height: 4px;
            transform: translateX(-50%);
            background: #AFDF71;
            transition: width 0.3s ease;
        }

        .solution-tab-btn:hover {
            color: #2d3b6b;
        }

        .solution-tab-btn.active {
            color: #2D3B6B;
            font-weight: 500;
        }

        .solution-tab-btn.active::after {
            width: 100%;
        }

        /* Tab 内容面板 */
        .solution-tab-panel {
            display: none;
            animation: tabFadeIn 0.4s ease;
        }

        .solution-tab-panel.active {
            display: block;
        }

        @keyframes tabFadeIn {
            0% { opacity: 0; transform: translateY(10px); }
            100% { opacity: 1; transform: translateY(0); }
        }

        /* Tab 面板 */
        .solution-tab-panel {
            display: none;
            animation: tabFadeIn 0.4s ease;
        }

        .solution-tab-panel.active {
            display: block;
        }

        /* Tab 介绍文字区 */
        .tab-intro {
            margin-bottom: 2rem;
            display: flex;
            align-items: flex-start;
            gap: 2rem;
        }

        .tab-intro .tab-intro-desc {
            flex: 0 0 55%;
            font-size: 0.875rem;
            color: #585858;
            line-height: 1.9;
            font-weight: 300;
            letter-spacing: 0.03em;
            margin: 0;
        }

        .tab-intro .tab-intro-tags {
            flex: 1;
            display: flex;
            flex-wrap: wrap;
            gap: 0.6rem;
            align-self: center;
            justify-content: space-around;
        }

        .tab-intro .tab-intro-tags .tag {
            background: #fff;
    color: #2D3B6B;
    padding: 0.55rem 1.325rem;
    font-size: 0.875rem;
    border-radius: 20px;
    letter-spacing: 0.04em;
    font-weight: 400;
        }

        @media (max-width: 768px) {
            .tab-intro {
                flex-direction: column;
                gap: 0.8rem;
            }
            .tab-intro .tab-intro-desc {
                flex: 0 0 auto;
            }
        }

        /* 产品卡片网格 */
        .solution-card-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 2rem;
        }

        @media (max-width: 768px) {
            .solution-card-grid {
                grid-template-columns: 1fr;
                gap: 1rem;
            }
        }

        /* 产品卡片 —— 左图右文横排 */
        .solution-item {
            display: flex;
            align-items: center;
            gap: 1.5rem;
            background: #fff;
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 0 2px 15px rgba(0,0,0,0.05);
            border: 1px solid #f0f0f0;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .solution-item:hover {
            transform: translateY(-4px);
            box-shadow: 0 8px 25px rgba(0,0,0,0.1);
        }

        .solution-item .item-image {
            /* flex: 0 0 45%; */
            height: 300px;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            background: #f8f9fa;
        }

        .solution-item .item-image img {
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            display: block;
            object-fit: contain;
        }

        .solution-item .item-info {
            flex: 1;
            padding: 1rem 1.5rem 1rem 0;
            text-align: left;
            min-height: 0;
        }

        .solution-item .item-info .item-name {
            font-size: 1.125rem;
    font-weight: 700;
    color: #2d3b6b;
    letter-spacing: 0.04em;
    margin-bottom: 0.3rem;
        }

        .solution-item .item-info .item-model {
          font-size: 1em;
    color: #2D3B6B;
    letter-spacing: 0.04em;
    font-weight: 400;
        }

        /* ===== 转盘与副射台 产品卡片 + 图解说明 ===== */
        .zp-product-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 1.5rem;
            margin-bottom: 2.5rem;
        }

        .zp-product-card {
            background: #fff;
            border-radius: 6px;
            overflow: hidden;
            box-shadow: 0 2px 12px rgba(0,0,0,0.05);
            border: 1px solid #f0f0f0;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .zp-product-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 8px 20px rgba(0,0,0,0.1);
        }

        .zp-product-card .zp-card-image {
            width: 100%;
            height: 150px;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            /* background: #f8f9fa; */
        }

        .zp-product-card .zp-card-image img {
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            display: block;
            object-fit: contain;
        }

        .zp-product-card .zp-card-name {
            text-align: center;
            font-size: 1.125rem;
            font-weight: 400;
            color: #2d3b6b;
            padding: 0.8rem 0.5rem 0.2rem;
            letter-spacing: -0.04em;
        }

        .zp-product-card .zp-card-sub {
            text-align: center;
            font-size:0.875rem;
            color: #2D3B6B;
            padding: 0 0.5rem 0.8rem;
            letter-spacing: -0.03em;
            font-weight: 400;
        }

        .zp-diagram {
            /* background: #fff; */
            border-radius: 6px;
            overflow: hidden;
            /* box-shadow: 0 2px 12px rgba(0,0,0,0.05); */
            border-bottom: 1px solid #d8d8d8;
            padding-bottom: 7rem;
           
        }

        .zp-diagram .zp-diagram-title {
            font-size: 1.5rem;
            font-weight: 500;
            color: #2d3b6b;
            /* padding: 1rem 1.2rem; */
            border-bottom: 1px solid #f0f0f0;
           
            letter-spacing: 0.04em;
        }

        .zp-diagram .zp-diagram-image {
            padding: 1.5rem;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .zp-diagram .zp-diagram-image img {
            max-width: 100%;
            max-height: 450px;
            width: auto;
            height: auto;
            display: block;
        }

        .zp-section-title {
            font-size: 0.875rem;
            font-weight: 500;
            color: #2d3b6b;
            margin-bottom: .5rem;
            letter-spacing: 0.04em;
        }

        @media (max-width: 768px) {
            .zp-product-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 1rem;
            }
            .zp-product-card .zp-card-image {
                height: 120px;
            }
            .zp-product-card .zp-card-name {
                font-size: 0.8rem;
            }
        }

        @media (max-width: 480px) {

        @media (max-width: 480px) {
            .solution-item {
                gap: 0.8rem;
            }
            .solution-item .item-image {
                flex: 0 0 40%;
            }
            .solution-item .item-info .item-name {
                font-size: 0.9rem;
            }
            .solution-item .item-info .item-model {
                font-size: 0.7rem;
            }
        }

        @media (max-width: 1024px) {
            .solution-tab-btn {
                padding: 0.7rem 1.8rem;
                font-size: 0.95rem;
            }
        }

        @media (max-width: 768px) {
            .solution-section {
                padding: 2.5rem 0;
            }
            .solution-section .section-header .section-main-title {
                font-size: 1.3rem;
            }
            .solution-tabs {
                gap: 0;
            }
            .solution-tab-btn {
                padding: 0.6rem 1rem;
                font-size: 0.85rem;
            }
            .solution-tab-panel {
                grid-template-columns: 1fr;
                gap: 1.2rem;
            }
            .solution-item .item-info .item-name {
                font-size: 1rem;
            }
            .solution-item .item-info .item-desc {
                font-size: 0.82rem;
            }
            .solution-item .item-info .item-tags .tag {
                font-size: 0.68rem;
                padding: 0.2rem 0.6rem;
            }
        }

        @media (max-width: 480px) {
            .solution-tab-btn {
                padding: 0.5rem 0.6rem;
                font-size: 0.75rem;
                letter-spacing: 0.02em;
            }
        }
        }
