/* ================= 基础重置与全局变量 ================= */
* { margin: 0; padding: 0; box-sizing: border-box; }
:root {
    --primary-blue: #004b97;
    --text-main: #333;
    --text-gray: #666;
    --bg-light: #f5f6f8;
}
body {
    font-family: "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
    background-color: #fff; 
    color: var(--text-main);
    line-height: 1.6;
    overflow-x: hidden;
}
a { text-decoration: none; color: inherit; }
ul { list-style: none; }
.container { width: 94%; max-width: 1600px; margin: 0 auto; }

@font-face {
    font-family: 'Gilroy-Bold';
    src: url('../fonts/Gilroy-Bold.woff2') format('woff2'),
         url('../fonts/Gilroy-Bold.ttf') format('truetype');
    font-weight: bold; font-style: normal; font-display: swap; 
}

@font-face {
  font-family: 'iconfont';  /* Project id 1264008 */
  src: url('//at.alicdn.com/t/c/font_1264008_zs0e2nczbcc.woff2?t=1748245430035') format('woff2'),
       url('//at.alicdn.com/t/c/font_1264008_zs0e2nczbcc.woff?t=1748245430035') format('woff'),
       url('//at.alicdn.com/t/c/font_1264008_zs0e2nczbcc.ttf?t=1748245430035') format('truetype');
}
.iconfont{ font-family:"iconfont" !important; font-size:16px;font-style:normal; -webkit-font-smoothing: antialiased; -webkit-text-stroke-width: 0.2px; -moz-osx-font-smoothing: grayscale;}

/* ================= 1. 顶部信息栏 ================= */
.top-bar { 
    background-color: var(--primary-blue); 
    color: #fff; font-size: 14px; padding: 8px 0; 
}
.top-bar .container { display: flex; justify-content: space-between; align-items: center; }
.top-bar .top-contact { display: flex; gap: 20px; }
.top-bar .top-contact span i { margin-right: 5px; }


/* ================= 2. 主导航栏 ================= */
.header-main{position:sticky;top:0;z-index:1000;height:90px}
.header-main::before{content:'';position:absolute;top:0;left:0;width:100%;height:90px;background-color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.05);transition:all .4s cubic-bezier(.25, .8, .25, 1);z-index:-1}
.header-main.scrolled::before{height:90px;background-color:rgba(255,255,255,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 20px rgba(0,0,0,.04);border-bottom:1px solid rgba(0,0,0,.05)}
.header-main>.container{display:flex;justify-content:space-between;align-items:center;height:90px;transition:height .4s cubic-bezier(.25, .8, .25, 1)}
.header-main.scrolled > .container { height: 90px; }
.header-main .logo-box { position: relative; display: flex; align-items: center; height: 100%; flex-shrink: 0; overflow: hidden;}
.header-main .logo-box a { display: flex; align-items: center; height: 100%; }
.header-main .logo-box img { height: 60px; width: auto; object-fit: contain; transition: height 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); }
.header-main .logo-box::before{content: "";position: absolute;left: -800px;top: -460px;width: 400px;height: 15px;background-color: rgba(255, 255, 255, .4);-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);-ms-transform: rotate(-45deg);-o-transform: rotate(-45deg);transform: rotate(-45deg);-webkit-animation: searchLights 1.5s ease-in 1.5s infinite;-o-animation: searchLights 1.5s ease-in 1.5s infinite;animation: searchLights 1.5s ease-in 1.5s infinite;}
@-webkit-keyframes searchLights{0%{left: -100px;top: 0;}to{left: 120px;top: 100px;}}
@-o-keyframes searchLights{0%{left: -100px;top: 0;}to{left: 120px;top: 100px;}}
@-moz-keyframes searchLights{0%{left: -100px;top: 0;}to{left: 120px;top: 100px;}}
@keyframes searchLights{0%{left: -100px;top: 0;}to{left: 120px;top: 100px;}}
.header-main .nav-menu, .header-main .nav-list { display: flex; align-items: center; height: 100%; }
.header-main .nav-item { height: 100%; display: flex; align-items: center; }
.header-main .nav-item.has-mega { position: static; }
.header-main .nav-link { position: relative; padding: 0 15px; font-size: 16px; font-weight: bold; color: var(--text-main); transition: color 0.3s; display: flex; align-items: center; gap: 5px; height: 100%; }
.header-main .nav-link::after { content: ''; position: absolute; bottom: 25px; left: 50%; transform: translateX(-50%); width: 0; height: 2px; background-color: var(--primary-blue); transition: width 0.3s ease; }
.header-main .nav-item:not(.has-mega):hover .nav-link::after,
.header-main .nav-item.active:not(.has-mega) .nav-link::after { width: calc(100% - 30px); }
.header-main .nav-link:hover, .header-main .nav-item.active .nav-link { color: var(--primary-blue); }
.header-main .nav-link i.fa-angle-down { font-size: 12px; margin-left: 4px; transition: transform 0.3s ease; }
@media (min-width: 851px) {
    .header-main .nav-item.has-mega:hover .nav-link i.fa-angle-down { transform: rotate(180deg); }
}
.header-main .search-btn { margin-left: 15px; font-size: 18px; color: var(--text-main); cursor: pointer; padding: 0 10px; }
.header-main .mobile-toggle { display: none; font-size: 26px; cursor: pointer; color: var(--primary-blue); }

.header-main .mega-dropdown-panel { position: absolute; top: 90px; left: 0; width: 100%; background-color: #f8f9fa; padding: 45px 0; box-shadow: 0 15px 20px rgba(0,0,0,0.06); border-top: 1px solid #eaeaea; opacity: 0; visibility: hidden; transform: translateY(10px); transition: all 0.3s ease-in-out; z-index: 999; }
.header-main.scrolled .mega-dropdown-panel { top: 70px;}
.header-main .nav-item.has-mega:hover .mega-dropdown-panel { opacity: 1; visibility: visible; transform: translateY(0); }
.header-main .mega-grid { display: grid; grid-template-columns: 1fr 1.6fr; gap: 50px; align-items: start; }
.header-main .mega-image img { width: 100%; height: 280px; object-fit: cover; border-radius: 4px; box-shadow: 0 5px 15px rgba(0,0,0,0.08); display: block; }
.header-main .mega-content h2 { font-size: 28px; color: var(--primary-blue); margin-bottom: 20px; font-weight: bold; }
.header-main .mega-content p { color: var(--text-gray); font-size: 16px; line-height: 1.8; margin-bottom: 40px; text-align: justify; }
.header-main .mega-links-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px 50px; }
.header-main .link-item { display: flex; justify-content: space-between; align-items: center; padding-bottom: 12px; border-bottom: 1px solid #e0e0e0; color: #444; font-size: 16px; transition: all 0.3s; }
.header-main .link-item i { font-size: 12px; color: #a0a0a0; transition: transform 0.3s; }
.header-main .link-item:hover { color: var(--primary-blue); border-bottom-color: var(--primary-blue); }
.header-main .link-item:hover i { transform: translateX(5px); }
.header-main .mega-dropdown-panel.simple-dropdown { padding: 30px 0; }
.header-main .simple-dropdown .mega-links-grid { grid-template-columns: repeat(4, 1fr); gap: 15px 40px; }

.header-search{position:relative;display:flex;align-items:center;margin-left:15px}
.header-search .search-btn{font-size:18px;color:var(--text-main);cursor:pointer;padding:0 10px;transition:color .3s}
.header-search .search-btn:hover{color:var(--primary-blue)}
.search-box{position:absolute;top:150%;right:0;width:280px;background:#fff;box-shadow:0 10px 40px rgba(0,0,0,.12);padding:15px;border-radius:4px;opacity:0;visibility:hidden;transform:translateY(15px);transition:all .3s cubic-bezier(.25, .8, .25, 1);z-index:9999}
.search-box::before{content:'';position:absolute;top:-6px;right:15px;width:12px;height:12px;background:#fff;transform:rotate(45deg)}
.search-box.show{opacity:1;visibility:visible;transform:translateY(0)}
.search-box form{position:relative;display:flex;align-items:center;border:1px solid #ddd;border-radius:2px;overflow:hidden;background:#fff;z-index:2}
.search-box input{flex:1;border:none;padding:0 15px;height:40px;font-size:14px;outline:0;color:#333}
.search-box button{background:var(--primary-blue);color:#fff;border:none;width:44px;height:40px;cursor:pointer;font-size:15px;transition:background-color .3s}
.search-box button:hover{background-color:#00366d}
@media (max-width:850px){.header-search{display:none}
}

/* ================= 3. Banner 轮播区 ================= */
.video-container{position:relative;width:100%;height:700px;overflow:hidden;background:#000}
.video-container .fallback-image,.video-container video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1}
.play-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;cursor:pointer;width:80px;height:80px;border:2px solid rgba(255,255,255,.5);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .4s ease;opacity:0;visibility:hidden;pointer-events:none}
.play-icon{width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:20px solid #fff;margin-left:5px}
.play-button:hover{background:rgba(255,255,255,.2);transform:translate(-50%,-50%) scale(1.1)}
.video-container.need-interaction .play-button,.video-container.video-unavailable .play-button{opacity:1;visibility:visible;pointer-events:auto}

/* ================= 4. 悬浮数据统计条 ================= */
.stats-wrapper { position: relative; z-index: 10; margin-top: -75px; margin-bottom: 80px; }
.stats-wrapper .stats-box { background-color: #fff; border-radius: 4px; box-shadow: 0 15px 40px rgba(0,0,0,0.08); display: grid; grid-template-columns: repeat(5, 1fr); align-items: center; padding: 45px 0; }
.stats-wrapper .stat-item { text-align: center; position: relative; padding: 0 10px; }
.stats-wrapper .stat-item:not(:last-child)::after { content: ''; position: absolute; right: 0; top: 15%; height: 70%; width: 1px; background-color: #eee; }
.stats-wrapper .stat-icon svg { width: 48px; height: 48px; transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
.stats-wrapper .stat-item:hover .stat-icon svg { transform: scale(1.15); }
.stats-wrapper .stat-num { display: flex; align-items: baseline; justify-content: center; margin-bottom: 5px; }
.stats-wrapper .stat-num .num-val { font-size: 46px; font-family: Gilroy-Bold, "Arial Black", Helvetica, sans-serif; font-weight: 700; color: #004ea2 !important; -webkit-text-fill-color: #004ea2 !important; text-shadow: 0 7px 8px rgba(0,78,162,.2) !important; line-height: 1; letter-spacing: 0; }
.stats-wrapper .stat-num .unit { font-size: 15px; font-weight: 700; color: #333; margin-left: 5px; text-shadow: none; }
.stats-wrapper .stat-desc { font-size: 16px; color: #666; letter-spacing: 0.5px; }

/* ================= 5. 公司简介区块 ================= */
.intro-section { position: relative; padding: 1px 0 100px 0; background-color: #fff; }
.intro-section::before { content: ''; position: absolute; bottom: 0; right: 0; width: 100%; height: 100%; background: url('../image/about_bg.jpg') no-repeat bottom center; background-size: cover; opacity: 0.8; z-index: 0; pointer-events: none; }
.intro-section .intro-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.intro-section .subtitle { color: var(--primary-blue); font-size: 20px; font-weight: bold; letter-spacing: 2px; margin-bottom: 10px; text-transform: uppercase; }
.intro-section .main-title { font-size: 42px; color: #222; font-weight: 600; line-height: 1.3;}
.intro-section h5{ font-size: 32px; color: #222; font-weight: 400; line-height: 1.4; margin-bottom: 30px; }
.intro-section .desc { font-size: 16px; color: var(--text-gray); line-height: 1.9; margin-bottom: 40px; text-align: justify; }
.intro-section .btn-explore { display: inline-flex; align-items: center; gap: 15px; font-size: 16px; font-weight: bold; color: #333; transition: color 0.3s; }
.intro-section .btn-circle { width: 45px; height: 45px; background-color: var(--primary-blue); border-radius: 50%; display: flex; align-items: center; justify-content: center; position: relative; transition: transform 0.3s; }
.intro-section .btn-circle::after { content: ''; position: absolute; width: 20px; height: 2px; background-color: #fff; right: 12px; }
.intro-section .btn-explore:hover { color: var(--primary-blue); }
.intro-section .btn-explore:hover .btn-circle { transform: translateX(5px); }

/* --- 视频封面图与播放按钮特效 --- */
.intro-section .intro-video-box { position: relative; border-radius: 6px; overflow: hidden; box-shadow: 0 15px 30px rgba(0,0,0,0.15); }
.intro-section .intro-video-box img { width: 100%; height: auto; display: block; transition: transform 0.5s ease; }
.intro-section .intro-video-box:hover img { transform: scale(1.03); }
.intro-section .play-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.01); display: flex; align-items: center; justify-content: center; cursor: pointer; transition: background 0.3s; }
.intro-section .play-overlay:hover { background: rgba(0,0,0,0.1); }
.intro-section .play-btn{position:relative;width:60px;height:60px;border:2px solid rgba(255,255,255,.8);border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);backdrop-filter:blur(4px);transition:all .4s cubic-bezier(.175, .885, .32, 1.275)}
.intro-section .play-btn::after,.intro-section .play-btn::before{content:"";position:absolute;width:100%;height:100%;border:10px solid #fff;border-radius:50%;animation:radar-ripple 1s linear infinite;opacity:0}
.intro-section .play-btn::after{animation-delay:1s}
@keyframes radar-ripple {
    0% { transform: scale(1); opacity: 0.6; }
    100% { transform: scale(1.6); opacity: 0; }
}
.intro-section .play-btn i{color:#fff;font-size:30px;margin-left:5px;transition:color .4s}
.intro-section .play-overlay:hover .play-btn{transform:scale(1.15);background:var(--primary-blue);border-color:var(--primary-blue);box-shadow:0 10px 25px rgba(0,75,151,.5)}

/* ================= 5.1 视频播放弹窗 (Modal) ================= */
.video-modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 99999; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: opacity 0.4s ease, visibility 0.4s ease; }
.video-modal.show { opacity: 1; visibility: visible; }
.video-modal-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.8); backdrop-filter: blur(5px); cursor: pointer; }
.video-modal-content { position: relative; z-index: 1; width: 90%; max-width: 900px; background: #fff; padding: 6px; border-radius: 4px; transform: scale(0.95) translateY(20px); transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); box-shadow: 0 25px 50px rgba(0,0,0,0.5); }
.video-modal.show .video-modal-content { transform: scale(1) translateY(0); }
.video-modal-content video { width: 100%; height: auto; display: block; outline: none; background: #000; border-radius: 2px; }
.video-close-btn { position: absolute; bottom: -60px; left: 50%; transform: translateX(-50%); width: 44px; height: 44px; background-color: var(--primary-blue); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 20px; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 5px 15px rgba(0,0,0,0.3); border: 2px solid #fff; }
.video-close-btn:hover { background-color: #00366d; transform: translateX(-50%) scale(1.1) rotate(90deg); }

/* ================= 6. 通用标题组件 ================= */
.section-header { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 50px; }
.section-header .sub-title { font-size: 42px; color: #333; font-weight: 600; margin-bottom: 10px; letter-spacing: 1px; }
.section-header .main-title { font-size: 32px; color: #222; font-weight: 400; letter-spacing: 1px; }
.section-header .btn-all-products { display: flex; align-items: center; gap: 12px; font-size: 15px; color: #333; margin-bottom: 5px; transition: color 0.3s; }
.section-header .btn-circle-minus { width: 32px; height: 32px; background-color: var(--primary-blue); border-radius: 50%; position: relative; flex-shrink: 0; transition: transform 0.3s; }
.section-header .btn-circle-minus::after { content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 12px; height: 2px; background-color: #fff; }
.section-header .btn-all-products:hover { color: var(--primary-blue); }
.section-header .btn-all-products:hover .btn-circle-minus { transform: translateX(5px); }

/* ================= 7. 产品展示区块 ================= */
.products-section { padding: 50px 0 100px 0; background-color: #fff; }
.products-section .products-swiper {  position: relative; padding-bottom: 60px; overflow: visible !important;}
.products-section .product-card { background-color: #f6f7f9; border-radius: 4px; overflow: hidden; height: 100%; display: flex; flex-direction: column; transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 0.4s ease; }
.products-section .product-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0,0,0,0.06); background-color: #fff; }
.products-section .card-img { width: 100%; height: 330px; overflow: hidden; }
.products-section .card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.products-section .product-card:hover .card-img img { transform: scale(1.05); }
.products-section .card-text { padding: 30px 25px 35px 25px; flex-grow: 1; display: flex; flex-direction: column; }
.products-section .card-text h4 { font-size: 20px; color: #222; font-weight: 700; margin-bottom: 12px; }
.products-section .card-text p { font-size: 13px; color: #666; line-height: 1.8; margin-bottom: 25px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; flex-grow: 1; }
.products-section .link-more { color: var(--primary-blue); font-size: 13px; display: inline-flex; align-items: center; gap: 6px; font-weight: 700; transition: opacity 0.3s; }
.products-section .link-more:hover { opacity: 0.8; }
.products-section .swiper-scrollbar { background: #f0f0f0; height: 3px; bottom: 0; left: 0; width: 100%; border-radius: 0; }
.products-section .swiper-scrollbar-drag { background: var(--primary-blue); height: 5px; top: -1px; border-radius: 3px; cursor: pointer; }
.products-section .swiper-button-next,.products-section .swiper-button-prev{position:absolute;top:30%;width:50px;height:50px;background:#fff;border:1px solid #e0e0e0;color:#333;margin-top:0;z-index:10;transition:all .3s}
.products-section .swiper-button-next:after,.products-section .swiper-button-prev:after{font-size:20px;font-weight:700}
.products-section .swiper-button-next:hover,.products-section .swiper-button-prev:hover{background-color:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}
.products-section .swiper-button-prev{left:-60px}
.products-section .swiper-button-next{right:-60px}
@media (max-width: 1300px) {
    .products-section .swiper-button-prev { left: 0; background: rgba(255,255,255,0.8); }
    .products-section .swiper-button-next { right: 0; background: rgba(255,255,255,0.8); }
}

/* ================= 8. 解决方案区块 ================= */
.solutions-section { position: relative; width: 100%; height: 850px; overflow: hidden; display: flex; align-items: center; }
.solutions-section .solutions-bg-layers { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; }
.solutions-section .bg-layer { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 0.8s ease-in-out, transform 8s linear; transform: scale(1); }
.solutions-section .bg-layer.active { opacity: 1; transform: scale(1.05); z-index: 2; }
.solutions-section .solutions-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(90deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.3) 40%, rgba(0,0,0,0.1) 100%); z-index: 3; }
.solutions-section .solutions-content { position: relative; z-index: 4; height: 100%; display: flex; flex-direction: column; justify-content: space-between; padding-top: 160px; padding-bottom: 60px; }
.solutions-section .solutions-text { color: #fff; max-width: 700px; }
.solutions-section .sol-subtitle { font-size: 42px; font-weight: 600; letter-spacing: 2px; margin-bottom: 5px; }
.solutions-section .sol-title { font-size: 32px; font-weight: 400; letter-spacing: 2px; margin-bottom: 30px; }
.solutions-section .sol-desc { font-size: 15px; line-height: 2; color: rgba(255, 255, 255, 0.85); margin-bottom: 45px; text-align: justify; }
.solutions-section .solutions-icons-grid { display: flex; width: 100%; border-top: 1px solid rgba(255, 255, 255, 0.15); border-left: 1px solid rgba(255, 255, 255, 0.15); border-bottom: 1px solid rgba(255, 255, 255, 0.15); }
.solutions-section .icon-box { flex: 1; height: 160px; border-right: 1px solid rgba(255, 255, 255, 0.15); position: relative; cursor: pointer; overflow: hidden; }
.solutions-section .icon-box::before { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 0; background-color: var(--primary-blue); transition: height 0.35s cubic-bezier(0.25, 0.8, 0.25, 1); z-index: 1; }
.solutions-section .icon-box:hover::before { height: 100%; }
.solutions-section .icon-content { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; height: 100%; gap: 15px; color: #fff; }
.solutions-section .icon-content i { font-size: 34px; opacity: 0.9; }
.solutions-section .icon-content img{ width: 50px; height: 50px; object-fit: contain; transition: all 1s ease 0s; transform: scale(1);}
.solutions-section .icon-content span { font-size: 16px; letter-spacing: 1px; }

/* 共享 Learn More 按钮 */
.solutions-section .btn-learn-more, .cta-section .btn-learn-more { display: inline-flex; align-items: center; gap: 12px; font-size: 16px; color: #fff; transition: opacity 0.3s; }
.solutions-section .btn-circle-minus-blue, .cta-section .btn-circle-minus-blue { width: 45px; height: 45px; background-color: var(--primary-blue); border-radius: 50%; position: relative; flex-shrink: 0; transition: transform 0.3s; }
.solutions-section .btn-circle-minus-blue::after, .cta-section .btn-circle-minus-blue::after { content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 16px; height: 2px; background-color: #fff; }
.solutions-section .btn-learn-more:hover, .cta-section .btn-learn-more:hover { opacity: 0.9; }
.solutions-section .btn-learn-more:hover .btn-circle-minus-blue, .cta-section .btn-learn-more:hover .btn-circle-minus-blue { transform: translateX(5px); }

/* ================= 资质荣誉区块 ================= */
.honor-section { padding: 60px 0 80px 0; background-color: var(--bg-light); } /* 浅色背景以区分上下区块 */
.honor-section .honor-swiper { position: relative; padding-bottom: 50px; overflow: visible !important; }
.honor-section .honor-card { background-color: #fff; border-radius: 4px; overflow: hidden; display: flex; flex-direction: column; transition: transform 0.4s ease, box-shadow 0.4s ease; padding: 15px; border: 1px solid #eee; }
.honor-section .honor-card:hover { transform: translateY(-8px); box-shadow: 0 15px 30px rgba(0,0,0,0.08); border-color: transparent; }
.honor-section .honor-img { width: 100%; height: 240px; overflow: hidden; display: flex; align-items: center; justify-content: center; background-color: #fff; }
.honor-section .honor-img img { max-width: 100%; max-height: 100%; object-fit: contain; transition: transform 0.6s ease; }
.honor-section .honor-card:hover .honor-img img { transform: scale(1.05); }
.honor-section .honor-text { padding: 20px 10px 10px 10px; text-align: center; border-top: 1px dashed #f0f0f0; margin-top: 5px; }
.honor-section .honor-text h4 { font-size: 16px; color: #333; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color 0.3s; }
.honor-section .honor-card:hover .honor-text h4 { color: var(--primary-blue); }

/* 滚动条和左右按钮 */
.honor-section .swiper-scrollbar { background: #e6e6e6; height: 3px; bottom: 0; left: 0; width: 100%; border-radius: 0; }
.honor-section .swiper-scrollbar-drag { background: var(--primary-blue); height: 5px; top: -1px; border-radius: 3px; cursor: pointer; }
.honor-section .swiper-button-next, .honor-section .swiper-button-prev { position: absolute; top: 35%; width: 44px; height: 44px; background: #fff; border: 1px solid #e0e0e0; color: #333; margin-top: 0; z-index: 10; transition: all 0.3s; border-radius: 50%; }
.honor-section .swiper-button-next:after, .honor-section .swiper-button-prev:after { font-size: 16px; font-weight: 700; }
.honor-section .swiper-button-next:hover, .honor-section .swiper-button-prev:hover { background-color: var(--primary-blue); color: #fff; border-color: var(--primary-blue); }
.honor-section .swiper-button-prev { left: -50px; }
.honor-section .swiper-button-next { right: -50px; }

/* ================= 9. 新闻资讯区块 ================= */
.news-section { padding: 80px 0 100px 0; background-color: #fff; }
.news-section .news-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
.news-section .news-featured { background-color: var(--bg-light); border-radius: 6px; overflow: hidden; display: flex; flex-direction: column; transition: background-color 0.4s ease, transform 0.4s ease, box-shadow 0.4s ease; }
.news-section .news-featured:hover { background-color: var(--primary-blue); transform: translateY(-5px); box-shadow: 0 15px 30px rgba(0, 75, 151, 0.2); }
.news-section .featured-img { width: 100%; height: 380px; overflow: hidden; }
.news-section .featured-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.news-section .news-featured:hover .featured-img img { transform: scale(1.05); }
.news-section .featured-content { padding: 25px 30px; flex-grow: 1; display: flex; flex-direction: column; justify-content: center; }
.news-section .featured-content h4 { font-size: 20px; color: #222; margin-bottom: 10px; transition: color 0.4s ease; }
.news-section .featured-content p { font-size: 14px; color: #666; line-height: 1.8; transition: color 0.4s ease; }
.news-section .news-featured:hover .featured-content h4, .news-section .news-featured:hover .featured-content p { color: #fff; }

.news-section .news-list { display: flex; flex-direction: column; gap: 15px; }
.news-section .news-list-item { display: flex; align-items: center; padding: 15px; background-color: var(--bg-light); border-radius: 6px; height: 165px; transition: background-color 0.4s ease, transform 0.4s ease, box-shadow 0.4s ease; }
.news-section .news-list-item:hover { background-color: var(--primary-blue); transform: translateY(-3px); box-shadow: 0 15px 30px rgba(0, 75, 151, 0.2); }
.news-section .item-img { width: 210px; height: 100%; flex-shrink: 0; overflow: hidden; border-radius: 4px; }
.news-section .item-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.news-section .news-list-item:hover .item-img img { transform: scale(1.05); }
.news-section .item-content { padding: 0 25px; display: flex; flex-direction: column; justify-content: center; width: 100%; overflow: hidden; }
.news-section .item-content h4 { font-size: 18px; color: #222; margin-bottom: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color 0.4s ease; }
.news-section .item-content p { font-size: 13px; color: #777; line-height: 1.6; margin-bottom: 12px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; transition: color 0.4s ease; }
.news-section .news-date { font-size: 13px; color: #aaa; transition: color 0.4s ease; }
.news-section .news-list-item:hover .item-content h4, .news-section .news-list-item:hover .item-content p, .news-section .news-list-item:hover .news-date { color: #fff; }

/* ================= 10. CTA 合作期待区块 (视差滚动) ================= */
.cta-section{position:relative;padding:120px 0;background-color:#111;text-align:center;overflow:hidden;min-height:500px}
.cta-section::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:var(--bg-image) no-repeat center center;background-size:cover;background-attachment:fixed;filter:blur(2px) brightness(.9);z-index:1;pointer-events:none}
.cta-section .cta-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center}
.cta-section .cta-content h2{font-size:42px;color:#fff;font-weight:500;letter-spacing:2px;margin-bottom:25px}
.cta-section .cta-content p{color:rgba(255,255,255,.85);font-size:15px;max-width:900px;line-height:2;margin-bottom:40px}
@media (max-width:768px){.cta-section::before{background-attachment:scroll!important;background-position:center center!important}
}

/* ================= 11. 页面底部 Footer ================= */
.site-footer { background-color: var(--primary-blue); color: #fff; padding-top: 30px; }
.site-footer .footer-top { display: flex; justify-content: space-between; align-items: center; }
.site-footer .logo-box { display: flex; align-items: center;}
.site-footer .logo-box img { height: 55px; width: auto; object-fit: contain; filter: brightness(0) invert(1); }
.site-footer .social-icons { gap: 5px; }
.site-footer .social-btn { width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 18px; color: #fff; transition: transform 0.3s, opacity 0.3s; }
.site-footer .social-btn:hover { transform: translateY(-3px); opacity: 0.8; }
.site-footer .footer-divider { height: 1px; background-color: rgba(255, 255, 255, 0.1); margin: 25px 0; }
.site-footer .footer-main { display: flex; justify-content: space-between; padding-bottom: 40px; }
.site-footer .footer-col h4 { font-size: 18px; font-weight: normal; margin-bottom: 30px; color: #fff; }
.site-footer .footer-col ul li { margin-bottom: 14px; }
.site-footer .footer-col ul li a { font-size: 15px; color: rgba(255, 255, 255, 0.65); transition: color 0.3s; }
.site-footer .footer-col ul li a:hover { color: #fff; }
.site-footer .contact-col { flex: 0 0 280px; border-right: 1px solid rgba(255, 255, 255, 0.1); padding-right: 30px; margin-right: 10px; }
.site-footer .contact-col p { font-size: 15px; color: rgba(255, 255, 255, 0.65); line-height: 2.5; }
.site-footer .qr-col { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; }
.site-footer .qr-box { background-color: #fff; padding: 10px; border-radius: 4px; margin-top: 10px; margin-bottom: 10px; }
.site-footer .qr-box img{ width: 150px;}
.site-footer .qr-text { font-size: 12px; color: rgba(255, 255, 255, 0.6); }
.site-footer .footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.1); padding: 20px 0; background-color: rgba(0, 0, 0, 0.05); }
.site-footer .bottom-flex { display: flex; justify-content: space-between; align-items: center; font-size: 12px; color: rgba(255, 255, 255, 0.5); }
.site-footer .bottom-flex a { transition: color 0.3s; }
.site-footer .bottom-flex a:hover { color: #fff; }

.footer-fix{ display: none;}


/* 返回顶部按钮样式*/
.back-to-top{display: none;position: fixed;bottom: 20px;right: 20px;width: 40px;height: 40px;background-color: #0d74db; color: #fff;text-align: center;line-height: 40px;border-radius: 50%;cursor: pointer;z-index: 999;}


/* ================= 12. 高级动效：页面滚动浮现 (Scroll Reveal) ================= */
.reveal { opacity: 0; transform: translateY(40px); transition: all 0.9s cubic-bezier(0.25, 0.8, 0.25, 1); }
.reveal.active { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: 0.1s; }
.delay-2 { transition-delay: 0.2s; }
.delay-3 { transition-delay: 0.3s; }


/* ================== 全局自适应响应式 ================== */
@media (max-width: 1400px) {
    .header-main .logo-box img{ height: 50px;}
    .intro-section h5{ font-size: 28px;}
}

@media (max-width: 1300px) {
    .honor-section .swiper-button-prev { left: 0; background: rgba(255,255,255,0.9); }
    .honor-section .swiper-button-next { right: 0; background: rgba(255,255,255,0.9); }
}

@media (max-width: 1200px) {
    .header-main .mega-grid { gap: 30px; grid-template-columns: 1fr 1.2fr; }
    .solutions-section .solutions-icons-grid { flex-wrap: wrap; }
    .solutions-section .icon-box { flex: 1 1 25%; }
}

@media (max-width: 1080px) {
    .header-main .nav-link { padding: 0 10px; font-size: 15px; }
    .intro-section .intro-grid { gap: 40px; }
    .intro-section .main-title { font-size: 32px; }
    .news-section .news-grid { grid-template-columns: 1fr; gap: 20px; }
    .site-footer .footer-main { flex-wrap: wrap; gap: 30px; }
    .site-footer .contact-col { border-right: none; flex: 1 1 100%; margin-bottom: 20px; }
    .site-footer .footer-col { flex: 1 1 30%; }
    .site-footer .qr-col { flex: 1 1 100%; align-items: flex-start; }
}

/* ================= 平板端 (iPad Mini/Air 等) 核心适配 ================= */
@media (max-width: 850px) {
    .top-bar .welcome-text { display: none; }
    .top-bar .container { justify-content: center; }
    
    .header-main .mobile-toggle { display: block; }
    .header-main .search-btn { display: none; }
    
    /* 移动端菜单：锁死顶部无缝衔接 */
    .header-main .nav-menu { position: absolute; top: 70px; left: 0; width: 100%; background: #fff; flex-direction: column; box-shadow: 0 10px 20px rgba(0,0,0,0.15); display: none; align-items: flex-start; height: auto; z-index: 9999; border-top: 1px solid #eee; padding-bottom: 20px; }
    .header-main .nav-menu.active { display: flex; }
    .header-main .nav-list { flex-direction: column; width: 100%; height: auto; }
    .header-main .nav-item { width: 100%; height: auto; flex-direction: column; align-items: flex-start; border-bottom: 1px solid #f5f5f5; }
    .header-main .nav-link { width: 100%; padding: 15px 5%; justify-content: space-between; }
    .header-main .nav-link::after { display: none; }
    
    /* 移动端直接设定固定高度，抛弃收缩动效以保持极致稳定 */
    .header-main { height: 70px; }
    .header-main::before { height: 70px; }
    .header-main.scrolled::before { height: 70px; }
    .header-main > .container { height: 70px; }
    .header-main.scrolled > .container { height: 70px; }

    /* 下拉菜单在移动端被转为相对静止的垂直展开状态 */
    .header-main .mega-dropdown-panel { position: static; width: 100%; padding: 20px 5%; background-color: #f9f9f9; box-shadow: none; border-top: none; display: none; opacity: 1; visibility: visible; transform: none; }
    /* 取消针对 scrolled 的顶部偏移覆盖 */
    .header-main.scrolled .mega-dropdown-panel { top: auto; }
    
    .header-main .nav-item.has-mega.mobile-open .mega-dropdown-panel { display: block; }
    .header-main .mega-grid { grid-template-columns: 1fr; gap: 0 20px; }
    .header-main .mega-links-grid { grid-template-columns: 1fr; gap: 10px; }
    
    .header-main .simple-dropdown .mega-links-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
    .header-main .nav-item.has-mega.mobile-open .nav-link i.fa-angle-down { transform: rotate(180deg); }
    
    /* 其他区块适配 */
    .banner-section .banner-swiper { height: 400px; }
    .banner-section .swiper-button-next, .banner-section .swiper-button-prev { transform: scale(0.7); } 
    
    .stats-wrapper { margin-top: -50px; margin-bottom: 40px; }
    .stats-wrapper .stats-box { grid-template-columns: repeat(2, 1fr); gap: 35px 0; padding: 30px 0; }
    .stats-wrapper .stat-item:not(:last-child)::after { display: none; }
    .stats-wrapper .stat-item:last-child { grid-column: 1 / -1; }
    .stats-wrapper .stat-num .num-val { font-size: 38px; }
    
    .intro-section .intro-grid { grid-template-columns: 1fr; gap: 30px; }
    .intro-section .main-title { font-size: 28px; margin-bottom: 20px; }
    .intro-section .desc { margin-bottom: 25px; }
    
    .section-header { flex-direction: column; align-items: flex-start; gap: 15px; margin-bottom: 30px; }
    .section-header .sub-title { font-size: 24px; }
    .section-header .main-title { font-size: 18px; }
    
    .products-section { padding: 60px 0; }
    .products-section .card-img { height: 300px; }
    .products-section .swiper-button-next,.products-section .swiper-button-prev{display:none}
    .solutions-section { height: auto; min-height: 500px; }
    .solutions-section .solutions-content { padding-top: 60px; padding-bottom: 40px; }
    .solutions-section .sol-title { font-size: 28px; margin-bottom: 20px; }
    
    .honor-section { padding: 50px 0; }
    .honor-section .honor-img { height: 180px; }
    .honor-section .swiper-button-next, .honor-section .swiper-button-prev { display: none; }

    .news-section { padding: 60px 0 70px 0; }
    .cta-section { padding: 80px 0; }
    .cta-section .cta-content h2 { font-size: 30px; margin-bottom: 15px; }
}

/* ================= 手机端 (iPhone Max/SE 等) 核心适配 ================= */
@media (max-width: 650px) {
    .top-bar{ display: none;}
    .header-main .logo-icon { width: 36px; height: 36px; }
    .header-main .logo-text h1 { font-size: 17px; }
    .header-main .logo-text span { font-size: 8px; }
    
    .header-main .simple-dropdown .mega-links-grid { grid-template-columns: 1fr; }
    
    .header-main .mega-image img{ display: none;}
    .header-main .mega-content h2{ display: none;}
    .header-main .mega-content p{ display: none;}

    .banner-section .banner-swiper { height: 320px; }
    .video-container{ height: 320px; }
    
    .stats-wrapper { margin-top: -40px; margin-bottom: 30px; }
    .stats-wrapper .stats-box { grid-template-columns: repeat(2, 1fr); gap: 25px 0; padding: 25px 0; }
    .stats-wrapper .stat-num .num-val { font-size: 30px; } 
    .stats-wrapper .stat-num .unit { font-size: 13px; margin-left: 2px; }
    .stats-wrapper .stat-icon svg { width: 36px; height: 36px; }
    .stats-wrapper .stat-icon { margin-bottom: 8px; }
    .stats-wrapper .stat-desc { font-size: 12px; letter-spacing: 0; } 
    .solutions-section .sol-subtitle { font-size: 32px; }
    .solutions-section .sol-title { font-size: 24px; }
    .solutions-section .icon-box { flex: 1 1 50%; height: 100px; }

    .video-modal-content { width: 95%; padding: 4px; }
    .video-close-btn { bottom: -50px; width: 36px; height: 36px; font-size: 16px; border-width: 1px; }
    .intro-section .play-btn i { font-size: 20px; }
    
    .news-section .featured-img { height: 200px; } 
    .news-section .featured-content { padding: 15px 20px; }
    .news-section .featured-content h4 { font-size: 17px; margin-bottom: 8px; }
    .news-section .featured-content p { font-size: 13px; }
    
    .news-section .news-list { gap: 10px; }
    .news-section .news-list-item { flex-direction: row; height: 100px; padding: 12px; }
    .news-section .item-img { width: 110px; height: 76px; margin-bottom: 0; margin-right: 15px; border-radius: 4px; flex-shrink: 0; }
    .news-section .item-content { padding: 0; justify-content: center; }
    .news-section .item-content h4 { font-size: 14px; margin-bottom: 5px; white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
    .news-section .item-content p { display: none; } 
    .news-section .news-date { font-size: 12px; margin-top: 4px; }
    
    .site-footer { padding-top: 35px; }
    .site-footer .footer-top { flex-direction: column; gap: 20px; align-items: center; text-align: center; }
    .site-footer .social-icons { justify-content: center; }
    .site-footer .footer-main { display: flex; flex-direction: column; gap: 0; padding-bottom: 20px; }
    .site-footer .footer-col { flex: unset; margin-bottom: 0; }
    
    .site-footer .contact-col { border-bottom: 1px solid rgba(255, 255, 255, 0.1); padding-bottom: 25px; margin-bottom: 10px; text-align: left; padding-right: 0; }
    .site-footer .qr-col { align-items: center; margin-top: 15px; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, 0.1); }
    
    .site-footer .footer-col:not(.contact-col):not(.qr-col) { border-bottom: 1px solid rgba(255, 255, 255, 0.1); padding: 15px 0; }
    .site-footer .footer-col:not(.contact-col):not(.qr-col) h4 { font-size: 16px; margin-bottom: 0; display: flex; justify-content: space-between; align-items: center; cursor: pointer; color: #fff; }
    .site-footer .footer-col:not(.contact-col):not(.qr-col) h4::after { content: '\f107'; font-family: 'Font Awesome 7 Free'; font-weight: 900; font-size: 16px; transition: transform 0.3s; color: rgba(255,255,255,0.6); }
    .site-footer .footer-col:not(.contact-col):not(.qr-col) ul { display: none; padding-top: 18px; }
    .site-footer .footer-col:not(.contact-col):not(.qr-col) ul li { display: inline-block; width: 48%; margin-bottom: 12px; }
    .site-footer .footer-col.open:not(.contact-col):not(.qr-col) h4::after { transform: rotate(180deg); color: #fff; }
    .site-footer .footer-col.open:not(.contact-col):not(.qr-col) ul { display: block; }
    .site-footer .bottom-flex { flex-direction: column; gap: 10px; text-align: center; margin-bottom: 60px;}

    .footer-fix{box-shadow:0 0 10px rgba(41,42,45,.2);position:fixed;bottom:0;left:0;width:100%;background-color:#fff;z-index:9999999;display:block}
    .footer-fix li{float:left;width:25%}
    .footer-fix li a{display:block;text-align:center;padding:7px 0;font-size:14px;line-height:1}
    .footer-fix li i{display:block; font-size: 25px; background:no-repeat center;background-size:contain;margin-bottom:5px}
    .footer-contact input{ width: 100%; background: #f5f5f51c; font-size: 13px; margin-bottom: 5px; margin-right: 0;}
    .footer-contact input.lastin{ width: 100%;}
    .footer-contact img{ width: 40%!important;}
    .footer-contact button{ width: 50%;}
}