        /* Basic Reset & Base Styles */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
            line-height: 1.6;
            color: #E0E0E0; /* Light grey for body text on dark background */
            background-color: #000D25; /* Deep dark blue-black background */
        }

        .container {
            max-width: 100%;
            margin: 0 auto;
            padding: 0 20px;
        }

        a {
            text-decoration: none;
            color: #7bbeea; /* Lighter blue for links */
        }

        a:hover {
            text-decoration: underline;
            color: #a7d3f1; /* Even lighter blue on hover */
        }

        ul {
            list-style: none;
        }

        /* Buttons */
        .btn {
            display: inline-block;
            padding: 12px 24px;
            background-color: #7bbeea; /* Lighter blue for CTA buttons */
            color: #000D25; /* Dark text on light button */
            border-radius: 4px;
            transition: background-color 0.3s ease, color 0.3s ease;
            font-weight: 600;
        }

        .btn:hover {
            background-color: #a7d3f1; /* Even lighter blue on hover */
            text-decoration: none;
        }

        /* Header */
        .header {
            background-color: #011E40; /* Slightly lighter dark blue for header */
            border-bottom: 1px solid #03366D; /* Darker blue border */
            padding: 15px 0;
            position: sticky;
            top: 0;
            z-index: 1000;
        }

        .header .container {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .logo img {
            height: 40px;
            /* Consider a logo version optimized for dark backgrounds if current is too dark */
        }

        .main-nav ul {
            display: flex;
        }

        .main-nav ul li {
            position: relative;
            margin-left: 30px;
        }

        .main-nav ul li a {
            color: #E0E0E0; /* Light text for nav links */
            font-weight: 500;
            padding: 10px 0;
            display: block;
            transition: color 0.3s ease;
        }

        .main-nav ul li a:hover {
            color: #7bbeea; /* Link hover color */
        }

        .main-nav .dropdown {
            display: none;
            position: absolute;
            background-color: #011E40; /* Dark background for dropdown */
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); /* Darker shadow */
            min-width: 180px;
            z-index: 1;
            padding: 10px 0;
            border-radius: 4px;
            left: -20px;
            /* 关键修改：将 top 调整为 100% 并移除 margin-top，让下拉菜单紧贴父元素 */
            top: 100%;
            /* margin-top: 5px; /* 移除或设置为0 */
        }

        .main-nav .dropdown li {
            margin: 0;
        }

        .main-nav .dropdown li a {
            padding: 8px 20px;
            color: #ccc; /* Slightly darker text in dropdown */
            white-space: nowrap;
            transition: background-color 0.2s ease, color 0.2s ease;
        }

        .main-nav .dropdown li a:hover {
            background-color: #03366D; /* Darker blue on dropdown hover */
            color: #fff;
        }

        /* 关键修改：当鼠标悬停在 .has-dropdown (父级 li) 上时，显示 .dropdown */
        .main-nav ul li.has-dropdown:hover > .dropdown {
            display: block;
        }


        .mobile-menu-toggle {
            display: none;
            background: none;
            border: none;
            font-size: 1.2rem;
            cursor: pointer;
            color: #E0E0E0;
            font-weight: 600;
        }

        /* Main Content Layout - 30/70 Split and Centered */
        .main-content-wrapper {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            padding: 20px 0;
            max-width: 100%;
            margin: 0 auto;
            gap: 30px;
        }

        .main-sidebar {
            flex: 0 0 28%;
            max-width: 28%;
            background-color: #011E40; /* Dark blue background for sidebar */
            border-radius: 8px;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4); /* Deeper shadow for contrast */
            padding: 20px;
        }
        .main-content-area {
            flex: 0 0 68%;
            max-width: 68%;
            background-color: #011E40; /* Dark blue background for main content area */
            border-radius: 8px;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4); /* Deeper shadow for contrast */
            padding: 20px;
        }

        /* Adjust padding for the container within the split layout */
        .main-content-wrapper > .container {
            padding: 0;
            display: flex;
            width: 100%;
            max-width: 1200px;
            margin: 0 auto;
            gap: 30px;
        }

        /* Section Titles */
        .section-title {
            text-align: center;
            margin-bottom: 30px;
            padding-top: 20px;
        }

        .section-title h2 {
            font-size: 2rem;
            color: #E0E0E0; /* Light text on dark background */
            margin-bottom: 10px;
            font-weight: 700;
        }

        .section-title p {
            font-size: 1rem;
            color: #A0A0A0; /* Slightly darker light text */
        }

        /* Common Section Styling within main-content-area/sidebar */
        .main-content-area section, .main-sidebar section {
            margin-bottom: 40px;
            padding: 20px;
            background-color: #011E40; /* Ensure consistency with parent container */
            border-radius: 8px;
            box-shadow: none; /* No extra shadow on nested sections */
        }

        .main-content-area section:first-child, .main-sidebar section:first-child {
            padding-top: 0;
        }
         .main-content-area section:last-child, .main-sidebar section:last-child {
            margin-bottom: 0;
        }

        /* Products Section */
        .product-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 25px;
        }

        .product-card {
            background-color: #03366D; /* Darker blue for product cards */
            border: 1px solid #055C9C; /* Blue border for pop */
            border-radius: 8px;
            overflow: hidden;
            text-align: center;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .product-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 16px rgba(0, 0, 0, 0.4);
        }

        .product-card a {
            display: block;
            padding: 15px;
            color: #E0E0E0; /* Light text for product card */
        }

        .product-card img {
            max-width: 100%;
            height: 180px;
            object-fit: contain;
            margin-bottom: 10px;
        }

        .product-card h3 {
            font-size: 1.3rem;
            color: #E0E0E0;
            margin-bottom: 8px;
            font-weight: 600;
        }

        .product-card p {
            color: #A0A0A0;
            font-size: 0.9rem;
        }

        /* About Us Section (re-used for a module) */
        .about-us-module h3 {
            font-size: 1.8rem;
            color: #E0E0E0;
            margin-bottom: 15px;
        }

        .about-us-module div {
            font-size: 0.95rem;
            line-height: 1.7;
            color: #A0A0A0;
            margin-bottom: 20px;
        }

        .about-us-module .contact-info {
            display: block;
            gap: 10px;
            margin-top: 20px;
        }

        .about-us-module .contact-info li {
            margin-bottom: 5px;
            font-size: 0.9rem;
            color: #E0E0E0;
        }

        .about-us-module .contact-info li a {
            color: #7bbeea; /* Link color */
        }
        .about-us-module .btn {
            font-size: 0.95rem;
            padding: 8px 16px;
        }


        /* News List (re-used for a module) */
        .news-list {
            list-style: none;
            padding: 0;
        }

        .news-list li {
            margin-bottom: 10px;
            padding-bottom: 10px;
            border-bottom: 1px dotted #03366D; /* Darker border for list items */
			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
        }
        .news-list li:last-child {
            border-bottom: none;
            margin-bottom: 0;
            padding-bottom: 0;
        }

        .news-list li a {
            font-size: 1rem;
            color: #E0E0E0;
            transition: color 0.2s ease;
            display: block;
            line-height: 1.4;
        }
        .news-list li a:hover {
            color: #7bbeea;
            text-decoration: underline;
        }

        /* Services/Solutions Section */
        .service-card-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 20px;
        }
        .service-card {
            background-color: #03366D; /* Darker blue for service cards */
            border: 1px solid #055C9C;
            border-radius: 8px;
            padding: 20px;
            text-align: center;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        .service-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 16px rgba(0, 0, 0, 0.4);
        }
        .service-card h3 {
            font-size: 1.2rem;
            color: #E0E0E0;
            margin-bottom: 10px;
            font-weight: 600;
        }
        .service-card p {
            font-size: 0.9rem;
            color: #A0A0A0;
        }

        /* Sidebar Navigation */
        .sidebar-nav ul {
            padding: 0;
        }

        .sidebar-nav li {
            margin-bottom: 10px;
        }

        .sidebar-nav li a {
            display: block;
            padding: 10px 15px;
            background-color: #03366D; /* Dark blue for sidebar nav items */
            color: #7bbeea; /* Lighter blue for text */
            border-radius: 4px;
            font-weight: 500;
            transition: background-color 0.2s ease, color 0.2s ease;
        }

        .sidebar-nav li a:hover,
        .sidebar-nav li a.active {
            background-color: #055C9C; /* Even darker blue on hover/active */
            color: #fff;
        }

        /* Stock Check List (replacing table) */
        .stock-list {
            list-style: none;
            padding: 0;
            margin-top: 20px;
        }
        .stock-list li {
			background-color: #03366D;
			border: 1px solid #055C9C;
			border-radius: 4px;
			padding: 12px 15px;
			margin-bottom: 10px;
			display: flex;
			justify-content: flex-start;
			font-size: 0.95rem;
			color: #E0E0E0;
			gap: 20px;
        }
        .stock-list li:last-child {
            margin-bottom: 0;
        }
        .stock-list li strong {
            color: #E0E0E0;
            margin-right: 10px;
        }
        .stock-list li a {
            color: #7bbeea;
            font-weight: 500;
        }
        .stock-list li a:hover {
            text-decoration: underline;
        }

        /* Partner Logos Section */
        .partner-logos-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
            gap: 20px;
            justify-items: center;
            align-items: center;
        }

        .partner-logos-grid img {
            max-width: 120px;
            height: auto;
            opacity: 0.8; /* Slightly more opaque on dark background */
            transition: opacity 0.3s ease;
            filter: grayscale(100%) brightness(150%); /* Make logos more visible on dark */
        }
        .partner-logos-grid img:hover {
            opacity: 1;
            filter: grayscale(0%) brightness(100%); /* Restore original color on hover */
        }

        /* Call to Action Bar */
        .cta-bar {
            background-color: #011E40; /* Same as header/main content area */
            color: #E0E0E0;
            padding: 50px 20px;
            text-align: center;
            margin-top: 40px;
        }
        .cta-bar h2 {
            font-size: 2rem;
            margin-bottom: 20px;
            font-weight: 700;
        }
        .cta-bar p {
            font-size: 1.1rem;
            margin-bottom: 30px;
            color: #A0A0A0;
        }
        .cta-bar .btn {
             background-color: #7bbeea;
            color: #000D25;
        }
        .cta-bar .btn:hover {
            background-color: #a7d3f1;
        }

        /* Footer */
        .footer {
            background-color: #011E40; /* Consistent dark background */
            color: #A0A0A0;
            padding: 50px 0;
            font-size: 0.9rem;
        }

        .footer .footer-main {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            gap: 40px;
			max-width: 1600px;
    		margin: 0 auto;
        }

        .footer-info, .footer-links {
            flex: 1;
            min-width: 250px;
        }

        .footer-info h3 {
            color: #E0E0E0;
            font-size: 1.4rem;
            margin-bottom: 15px;
        }

        .footer-info p {
            margin-bottom: 8px;
        }

        .footer-info a {
            color: #7bbeea;
        }

        .footer-info a:hover {
            text-decoration: underline;
        }

        .footer-links h4 {
            color: #E0E0E0;
            font-size: 1.2rem;
            margin-bottom: 15px;
        }

        .footer-links a {
            color: #A0A0A0;
            margin-bottom: 8px;
            transition: color 0.2s ease;
        }

        .footer-links a:hover {
            color: #7bbeea;
            text-decoration: underline;
        }

        /* Mobile Responsiveness */
        @media (max-width: 768px) {
            .main-nav {
                display: none;
                flex-direction: column;
                width: 100%;
                background-color: #011E40;
                position: absolute;
                top: 70px;
                left: 0;
                box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
            }

            .main-nav.active {
                display: flex;
            }

            .main-nav ul {
                flex-direction: column;
                width: 100%;
                padding: 10px 0;
            }

            .main-nav ul li {
                margin: 0;
                border-bottom: 1px solid #03366D;
            }

            .main-nav ul li:last-child {
                border-bottom: none;
            }

            .main-nav ul li a {
                padding: 15px 20px;
            }

            .main-nav .dropdown {
                position: static;
                box-shadow: none;
                padding: 0;
                margin: 0;
                border-radius: 0;
                border-top: 1px solid #03366D;
                background-color: #03366D;
            }

            .main-nav .dropdown.open {
                display: block;
            }

            .main-nav .dropdown li a {
                padding-left: 40px;
            }

            .mobile-menu-toggle {
                display: block;
            }

            /* Stack columns on mobile */
            .main-content-wrapper {
                flex-direction: column;
                padding: 20px 0;
                gap: 20px;
                align-items: center;
            }

            .main-sidebar,
            .main-content-area {
                flex: 0 0 100%;
                max-width: 100%;
            }

            .product-grid {
                grid-template-columns: 1fr;
            }

            .service-card-grid {
                 grid-template-columns: 1fr;
            }

            .footer .footer-main {
                flex-direction: column;
                align-items: center;
                text-align: center;
            }

            .footer-info, .footer-links {
                min-width: unset;
                width: 100%;
                margin-bottom: 30px;
            }

             .cta-bar h2 {
                font-size: 1.6rem;
            }
             .cta-bar p {
                font-size: 1rem;
            }
        }