/* Header */
.hdr{position:fixed;top:0;left:0;width:100%;z-index:1000;transition:all .4s ease;background:none;backdrop-filter:none;box-shadow:none}
.hdr.scrolled{background:rgba(255,255,255,.96);backdrop-filter:blur(20px);box-shadow:0 1px 12px rgba(22,70,114,.06)}
.hdr-top{background:var(--deep);padding:8px 0;transition:all .4s ease}
.hdr.scrolled .hdr-top{height:0;padding:0;overflow:hidden}
.hdr-top-inner{max-width:1400px;margin:0 auto;padding:0 48px;display:flex;justify-content:space-between;align-items:center}
.hdr-top-info{display:flex;gap:28px}
.hdr-top-info a{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.6);font-size:13px;transition:color .2s}
.hdr-top-info a:hover{color:#fff}
.hdr-top-info svg{width:14px;height:14px}
.lang-sw{display:flex;gap:4px}
.lang-sw button{background:none;border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.5);font-size:11px;font-weight:600;padding:4px 10px;border-radius:4px;cursor:pointer;transition:all .2s}
.lang-sw button:hover,.lang-sw button.active{background:rgba(68,153,212,.2);border-color:var(--blue);color:#fff}
.hdr-main{max-width:1400px;margin:0 auto;padding:5px 48px;display:flex;align-items:center;justify-content:space-between}
.hdr-logo{font-size:26px;font-weight:700;color:#fff;letter-spacing:-.03em;transition:color .4s}
.hdr-logo img{display:block;}
.hdr.scrolled .hdr-logo{color:var(--primary)}
.hdr-logo span{color:var(--blue-light)}
.hdr.scrolled .hdr-logo span{color:var(--blue)}
.hdr-menu{display:flex;gap:34px; align-items:center;}
.hdr-menu>a{font-size:15px;font-weight:500;color:rgba(255,255,255,.85);transition:color .2s;position:relative}
.hdr.scrolled .hdr-menu>a,.hdr.scrolled .hdr-menu .dd-toggle{color:var(--text-body); font-size:15px; font-weight:500;}
.hdr-menu>a:hover{color:var(--blue-light)}
.hdr.scrolled .hdr-menu>a:hover{color:var(--blue)}
.hdr-menu>a::after,.hdr-menu .nav-dd>a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--blue);transition:width .3s}
.hdr-menu>a:hover::after{width:100%}
.hdr-menu .dd-toggle{color:rgba(255,255,255,.85);position:relative}
.hdr-menu .dd-toggle:hover{color:var(--blue-light)}
.hdr.scrolled .hdr-menu .dd-toggle:hover{color:var(--blue)}
.hdr-cta{padding:12px 28px;background:var(--amber);color:#fff;font-size:14px;font-weight:600;border-radius:60px;transition:all .3s}
.hdr-cta:hover{background:var(--amber-dark);transform:translateY(-2px);box-shadow:0 8px 24px rgba(245,158,11,.35)}

.swiper-pagination .swiper-pagination-bullet{width:9px; height:9px; display:inline-block; margin-left:5px; margin-right:5px; border-radius:100%; transition:opacity .5s, background-color .5s, width .5s; transition-delay:.5s, .5s, 0s; background:rgba(46,116,181,.22);}
.swiper-pagination .swiper-pagination-bullet-active{width:26px; border-radius:6px; transition-delay:0s; background:#2E74B5;}

/* Header Social Dropdown */
.header-social{display:flex; gap:30px;}
.header-social-wrap{display:inline-flex}
.header-social-wrap .social-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1.5px solid rgba(255,255,255,.35);border-radius:50%;color:rgba(255,255,255,.92);background:rgba(255,255,255,.06);transition:all .3s ease;cursor:pointer}
.header-social-wrap .social-toggle:hover{background:rgba(255,255,255,.16);border-color:#fff;color:#fff;transform:scale(1.04)}
.header-social-wrap .social-toggle svg{width:20px;height:20px}
.hdr.scrolled .header-social-wrap .social-toggle{color:var(--primary);border-color:rgba(46,116,181,.45);background:rgba(255,255,255,.6)}
.hdr.scrolled .header-social-wrap .social-toggle:hover{background:var(--primary);color:#fff;border-color:var(--primary)}
.social-menu{min-width:240px;padding:10px}
.social-item{display:flex!important;align-items:center;gap:12px;padding:10px 14px!important;border-radius:10px;font-size:14px;color:var(--text-body)!important;transition:all .2s ease;white-space:nowrap}
.social-item:hover{background:var(--blue-pale)!important;color:var(--primary)!important}
.social-item svg{width:18px;height:18px;color:var(--primary);flex-shrink:0}
.social-item:hover svg{color:var(--primary-2)}
.social-item span{font-weight:500}

/* ===== HERO ===== */
.hero{height:82vh;min-height:640px;max-height:920px;display:flex;align-items:center;position:relative;overflow:hidden;background:var(--deep);padding-top:56px;padding-bottom:110px}
.hero-media{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-media video,.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-media video,.hero-media img{filter:brightness(.58)}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(95deg,rgba(14,46,82,.82) 0%,rgba(31,94,148,.42) 50%,rgba(46,116,181,.1) 100%)}
.hero-inner{position:relative;z-index:2;width:100%;max-width:860px}
.hero-inner--center{max-width:1180px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto;gap:26px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:12px;font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:500;color:var(--blue-light);text-transform:uppercase;letter-spacing:.2em;margin-bottom:22px}
.hero-eyebrow::before{content:'';width:40px;height:2px;background:linear-gradient(90deg,transparent,var(--blue-light))}
.hero-eyebrow .dot{width:6px;height:6px;background:var(--blue-light);border-radius:50%;animation:dotPulse 2s ease infinite}
@keyframes dotPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}
.hero-h1{font-size:clamp(36px,4.2vw,60px);font-weight:700;color:rgba(255,255,255,.85);letter-spacing:-.04em;line-height:1.08;margin-bottom:20px}
.hero-h1 .accent{background:linear-gradient(120deg,var(--blue-light),#A8D8F5 60%,#fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-h1--xl{font-size:clamp(50px,6.4vw,94px);line-height:1.04;margin:0;letter-spacing:-.045em;font-weight:800;text-shadow:0 6px 30px rgba(8,28,52,.45)}
.hero-sub{font-size:clamp(14px,1.3vw,17px);color:rgba(255,255,255,.75);line-height:1.6;max-width:540px;margin-bottom:30px;font-weight:300}
.hero-btns{display:flex;gap:16px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:12px;padding:14px 26px;font-size:14px;font-weight:600;border-radius:60px;transition:all .35s ease;cursor:pointer;border:none;letter-spacing:.01em}
.btn .arr{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .35s ease;flex-shrink:0}
.btn .arr svg{width:14px;height:14px}
.btn-amber{background:linear-gradient(135deg,#FFB020,var(--amber));color:#fff;box-shadow:0 8px 26px rgba(245,158,11,.35)}
.btn-amber:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(245,158,11,.45)}
.btn-amber .arr{background:rgba(255,255,255,.2)}
.btn-amber:hover .arr{transform:translateX(3px);background:rgba(255,255,255,.3)}
.btn-blue{background:linear-gradient(135deg,#7CBDEB,var(--blue));color:#fff;box-shadow:0 8px 26px rgba(68,135,212,.35)}
.btn-blue:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(68,135,212,.45)}
.btn-blue .arr{background:rgba(255,255,255,.2)}
.btn-blue:hover .arr{transform:translateX(3px);background:rgba(255,255,255,.3)}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1.5px solid rgba(255,255,255,.45);backdrop-filter:blur(8px)}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.14);transform:translateY(-2px)}
.btn-ghost .arr{background:rgba(255,255,255,.12)}
.btn-ghost:hover .arr{transform:translateX(3px)}
.hero-stats{position:absolute;left:0;right:0;bottom:0;z-index:3;background:linear-gradient(180deg,rgba(14,46,82,0),rgba(10,32,58,.45));border-top:1px solid rgba(124,189,235,.14)}
.hero-stats-inner{max-width:1400px;margin:0 auto;padding:14px 48px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.hero-stat{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;position:relative}
.hero-stat+.hero-stat::before{content:'';position:absolute;left:-10px;top:10%;height:80%;width:1px;background:rgba(124,189,235,.14)}
.hero-stat-big{font-family:'Space Grotesk',sans-serif;font-size:clamp(22px,2vw,32px);font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1;text-shadow:0 2px 12px rgba(0,0,0,.45)}
.hero-stat-big .stat-suffix{font-size:.52em;color:var(--blue-light);margin-left:3px;font-weight:600}
.hero-stat-label{font-size:10.5px;color:rgba(255,255,255,.62);text-transform:uppercase;letter-spacing:.14em;font-weight:500}
/* Hero lateral entrance: headline slides in from the left, stats from the right */
@keyframes heroSlideL{from{opacity:0;transform:translateX(-90px)}to{opacity:1;transform:none}}
@keyframes heroSlideR{from{opacity:0;transform:translateX(90px)}to{opacity:1;transform:none}}
.hero-inner{animation:heroSlideL 1.4s cubic-bezier(.16,1,.3,1) .2s both}
.hero-stats{animation:heroSlideR 1.4s cubic-bezier(.16,1,.3,1) .6s both}
/* ===== ABOUT (公司简介图文区) ===== */
.about-sec{background:#fff;min-height:33.33vh;display:flex;align-items:center;padding:56px 0}
.about-sec .container{width:100%}
.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;}
.about-visual{position:relative;display:flex;align-items:stretch}
.about-photos{position:relative;width:100%;display:flex;flex-direction:column;gap:0}
.about-photos-main{position:relative;width:100%;border-radius:18px;overflow:hidden;box-shadow:0 24px 56px rgba(10,35,64,.18);aspect-ratio:5/4;background:#0E2E52}
.about-photos-main img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 8s ease}
.about-photos:hover .about-photos-main img{transform:scale(1.04)}
.about-photos-stat{position:absolute;left:22px;top:22px;background:linear-gradient(155deg,#0E2E52 0%,#164672 100%);color:#fff;padding:14px 18px;border-radius:14px;display:flex;align-items:center;gap:14px;box-shadow:0 14px 34px rgba(10,35,64,.28);backdrop-filter:blur(6px);z-index:2}
.stat-row{display:flex;flex-direction:column;gap:2px}
.stat-num{font-family:'Space Grotesk',sans-serif;font-size:26px;font-weight:700;line-height:1;letter-spacing:-.02em;color:#fff}
.stat-num .stat-plus{color:#F5A623;margin-left:1px}
.stat-lbl{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7);font-weight:500}
.stat-divider{width:1px;height:34px;background:rgba(255,255,255,.18)}
.about-photos-sub{position:absolute;right:-14px;bottom:0;width:60%;border-radius:16px;overflow:hidden;box-shadow:0 22px 50px rgba(10,35,64,.22);border:5px solid #fff;background:#fff;z-index:3;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.about-photos:hover .about-photos-sub{transform:translateY(-6px)}
.about-photos-sub img{width:100%;height:auto;display:block;aspect-ratio:4/3;object-fit:cover}
.about-photos-tag{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:7px;padding:7px 12px;background:rgba(14,46,82,.92);color:#fff;border-radius:999px;font-size:11px;font-weight:500;letter-spacing:.04em;backdrop-filter:blur(6px);box-shadow:0 6px 18px rgba(0,0,0,.18)}
.about-photos-tag .tag-dot{width:7px;height:7px;border-radius:50%;background:#3DDC97;box-shadow:0 0 0 3px rgba(61,220,151,.25);animation:mfPulse 2.2s infinite}
@keyframes mfPulse{0%,100%{box-shadow:0 0 0 3px rgba(61,220,151,.28)}50%{box-shadow:0 0 0 8px rgba(61,220,151,.07)}}

.about-copy{display:flex; flex-direction:column; align-items:flex-start;}
.about-copy .section-title{font-size:clamp(24px,2.8vw,36px);margin-bottom:14px}
.about-copy p{color:var(--text-body);margin-bottom:10px;max-width:520px;font-size:15px}
.about-copy .btn{margin:auto 0 0 0; padding:11px 22px}
/* staggered entrance for about copy */
.about-copy .section-num,.about-copy .section-title,.about-copy p,.about-copy .btn{opacity:0;transform:translateX(60px);transition:opacity .9s ease,transform 1.2s cubic-bezier(.16,1,.3,1)}
.about-visual{opacity:0;transform:translateX(-60px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1.3s cubic-bezier(.16,1,.3,1)}
.about-sec.in .about-visual{opacity:1;transform:none;transition-delay:.1s}
.about-sec.in .about-copy .section-num{opacity:1;transform:none;transition-delay:.3s}
.about-sec.in .about-copy .section-title{opacity:1;transform:none;transition-delay:.5s}
.about-sec.in .about-copy p:nth-of-type(1){opacity:1;transform:none;transition-delay:.7s}
.about-sec.in .about-copy p:nth-of-type(2){opacity:1;transform:none;transition-delay:.9s}
.about-sec.in .about-copy .btn{opacity:1;transform:none;transition-delay:1.1s}

/* ===== SECTION COMMON ===== */
.section{padding:40px 0;position:relative}
.section-dark{background:linear-gradient(160deg,var(--deep) 0%,var(--primary-3) 100%);color:#fff}
.section-mist{background:var(--blue-mist)}
.section-header{margin-bottom:60px}
.section-num{font-size:14px;font-weight:600;color:var(--blue);letter-spacing:.18em; margin-top:16px; margin-bottom:16px;text-transform:uppercase;display:flex;align-items:center;gap:12px}
.section-num::before{content:'';width:34px;height:2px;background:var(--blue)}
.section-dark .section-num{color:var(--blue-light)}
.section-dark .section-num::before{background:var(--blue-light)}
.section-title{font-size:clamp(30px, 3.4vw, 46px);font-weight:700;letter-spacing:-.035em;line-height:1.08;margin-bottom:20px;color:var(--text)}
.section-dark .section-title{color:#fff}
.section-title span{background:linear-gradient(120deg,var(--blue),var(--primary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.section-dark .section-title span{background:linear-gradient(120deg,var(--blue-light),#fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.section-sub{font-size:18px;color:var(--text-mute);max-width:760px;line-height:1.65}
.section-dark .section-sub{color:rgba(255,255,255,.6)}
.center-head{text-align:center;display:flex;flex-direction:column;align-items:center}
.center-head .section-sub{margin:0 auto}
.center-head .section-num{justify-content:center}

/* Reveal */
.reveal{opacity:0;transform:translateY(28px);transition:all 1.1s cubic-bezier(.16,1,.3,1)}
.reveal-l{transform:translateX(-80px)}
.reveal-r{transform:translateX(80px);transition-delay:.28s}
.reveal.visible,.reveal-l.visible,.reveal-r.visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
    .reveal,.reveal-l,.reveal-r,.about-visual,.about-copy .section-num,.about-copy .section-title,.about-copy p,.about-copy .btn{opacity:1!important;transform:none!important;transition:none!important}
    .hero-inner,.hero-stats{animation:none!important}
}



/* ===== 02 CORE MATERIALS (Hot Products) ===== */
#products{min-height:66.67vh;display:flex;align-items:center;padding:64px 0}
.prod-wrap{display:flex;align-items:center;gap:16px}
.prod-carousel{position:relative;overflow:hidden;padding:6px 0 64px;flex:1}
.prod-track{display:flex;gap:22px;transition:transform .55s cubic-bezier(.16,1,.3,1);will-change:transform;align-items:stretch}
.prod-track .prod-card{flex:0 0 calc((100% - 66px)/4)}
.prod-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:all .4s cubic-bezier(.16,1,.3,1);display:block;position:relative;z-index:1}
.prod-card:hover{transform:scale(1.06);box-shadow:var(--shadow-3);border-color:rgba(46,116,181,.3);z-index:5}
.prod-media{height:210px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.prod-media::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.35),transparent 55%)}
.prod-emoji{font-size:74px;filter:drop-shadow(0 10px 22px rgba(14,46,82,.35));transition:transform .5s cubic-bezier(.16,1,.3,1);position:relative;z-index:2}
.prod-card:hover .prod-emoji{transform:scale(1.18) rotate(-6deg)}
.prod-body{padding:22px 22px 24px}
.prod-body h3{font-size:19px;font-weight:600;color:var(--text);letter-spacing:-.01em;margin-bottom:8px}
.prod-body p{font-size:13.5px;color:var(--text-mute);line-height:1.6;margin-bottom:12px}
.prod-go{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--primary)}
.prod-go svg{width:14px;height:14px;transition:transform .3s}
.prod-card:hover .prod-go svg{transform:translateX(4px)}
.prod-cta{display:flex;justify-content:center;margin-top:34px}
.grad-sky{background:linear-gradient(135deg,#7CBDEB 0%,#4499D4 55%,#2E74B5 100%)}
/* Carousel controls - outside */
.car-out{position:static;transform:none;flex-shrink:0;width:48px;height:48px;border-radius:50%;border:none;background:#fff;box-shadow:var(--shadow-2);color:var(--primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s}
.car-out svg{width:20px;height:20px}
.car-out:hover{background:var(--primary);color:#fff}
.car-out:active{transform:scale(.94)}
.car-out:disabled{opacity:.35;cursor:default}
.car-dots{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);display:flex;gap:8px;z-index:6}
.car-dots button{width:9px;height:9px;border-radius:50%;border:none;background:rgba(46,116,181,.22);cursor:pointer;transition:all .3s;padding:0}
.car-dots button.on{background:var(--primary);width:26px;border-radius:6px}

/* ===== 03 APPLICATIONS (Brand-matrix banner carousel) ===== */
#products{padding-bottom:18px}
#applications{min-height:auto;padding:30px 0 60px;overflow:hidden}
#applications .section-header{margin-bottom:42px}
#applications .section-num{margin-bottom:10px;font-size:12.5px}
#applications .section-title{font-size:clamp(30px,3.4vw,46px);margin-bottom:10px;letter-spacing:-.035em}
#applications .section-sub{font-size:15.5px;line-height:1.55}
.app-stage{position:relative;max-width:1320px;margin:0 auto;padding:0 20px}
.app-stage::before,.app-stage::after{content:'';position:absolute;top:0;bottom:0;width:120px;pointer-events:none;z-index:4}
.app-stage::before{left:0;background:linear-gradient(90deg,var(--blue-mist) 0%,rgba(232,242,250,0) 100%)}
.app-stage::after{right:0;background:linear-gradient(270deg,var(--blue-mist) 0%,rgba(232,242,250,0) 100%)}
.app-track{display:flex;align-items:center;justify-content:center;gap:20px;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.app-cell{position:relative;flex:0 1 auto;width:300px;height:440px;border-radius:16px;overflow:hidden;display:block;text-decoration:none;box-shadow:0 10px 28px rgba(14,46,82,.12);transition:all .55s cubic-bezier(.22,1,.36,1)}
.app-cell--mid{width:300px;height:440px;transform:translateY(-10px);box-shadow:0 26px 56px rgba(14,46,82,.30);z-index:3}
.app-cell--side{width:240px;height:340px;opacity:.75}
.app-cell--far{width:200px;height:280px;opacity:.5}
.app-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.app-bg-emoji{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:44px;opacity:.55;filter:drop-shadow(0 8px 20px rgba(0,0,0,.18))}
.app-cell--mid .app-bg-emoji{font-size:64px;opacity:.7}
.app-cell--far .app-bg-emoji{font-size:32px;opacity:.45}
.app-cell:hover .app-bg{transform:scale(1.06)}
.app-label{position:absolute;top:14px;left:14px;font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(14,46,82,.42);backdrop-filter:blur(10px);padding:5px 12px;border-radius:60px;z-index:3;border:1px solid rgba(255,255,255,.22)}
.app-cell--far .app-label{top:12px;left:12px}
.app-title{position:absolute;left:16px;right:16px;bottom:16px;font-family:'Space Grotesk',sans-serif;font-size:15px;font-weight:700;color:#fff;letter-spacing:-.015em;line-height:1.2;text-shadow:0 4px 18px rgba(10,32,58,.5);z-index:3}
.app-cell--mid .app-title{font-size:19px}
.app-mask{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,32,58,0) 40%,rgba(10,32,58,.65) 100%);z-index:2}
.app-dots{display:flex;justify-content:center;gap:9px;margin-top:32px}
.app-dots button{width:9px;height:9px;border-radius:50%;border:none;background:rgba(46,116,181,.22);cursor:pointer;transition:all .3s;padding:0}
.app-dots button.on{background:var(--primary);width:28px;border-radius:6px}
@media (max-width:960px){
    .app-stage{padding:0 60px}
    .app-stage::before,.app-stage::after{width:50px}
    .app-track{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 0 10px;justify-content:flex-start;gap:14px;scrollbar-width:none}
    .app-track::-webkit-scrollbar{display:none}
    .app-cell{flex:0 0 62%;scroll-snap-align:center;height:280px;width:auto;transform:none}
    .app-cell--mid{width:auto;flex:0 0 72%;height:320px}
    .app-cell--side,.app-cell--far{flex:0 0 62%;height:280px;opacity:1}
    .app-cell--far{height:260px}
}
@media (max-width:560px){
    .app-stage{padding:0 16px}
    .app-stage::before,.app-stage::after{display:none}
    .app-cell,.app-cell--side,.app-cell--far{flex:0 0 78%;height:300px}
    .app-cell--mid{flex:0 0 88%;height:380px}
    .app-title{font-size:16px}
    .app-cell--mid .app-title{font-size:19px}
}

/* ===== 04 CERTIFICATIONS (Auto Scroll) ===== */
#certifications{padding:72px 0 0;background:linear-gradient(180deg,#fff 0%,var(--blue-mist) 100%);overflow:hidden}
.cert-head{text-align:center;max-width:920px;margin:0 auto 36px;padding:0 32px}
.cert-head .section-num{justify-content:center;margin-bottom:14px}
.cert-head .section-title{margin-bottom:14px;font-size:clamp(30px, 3.4vw, 46px);white-space:nowrap}
.cert-head .cert-sub{font-size:15px;color:var(--text-mute);line-height:1.6}
.cert-track{display:flex;gap:10px;animation:certScroll 45s linear infinite;width:max-content}
.cert-track:hover{animation-play-state:paused}
.cert-item{display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0 5px;border:1px solid transparent;border-radius:50px;opacity:1;transition:all .3s;white-space:nowrap;min-width:170px}
.cert-item:hover{background:var(--blue-pale);box-shadow:0 3px 12px rgba(22,70,114,.10);border:1px solid rgba(46,116,181,.16);}
.cert-item .ci-icon{width:48px;height:48px;flex-shrink:0;color:var(--primary)}
.cert-item .ci-logo{height:46px;width:auto;max-width:170px;flex-shrink:0;display:block}
.cert-item .ci-badge{height:42px;width:auto;flex-shrink:0;display:block}
@keyframes certScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

.marquee-wrap {width: 100%;overflow:hidden;position:relative;}
.marquee-list{display:flex;width:max-content;padding-bottom:15px;}
.marquee-item{flex-shrink:0;padding:0 16px;display:flex;justify-content:center;align-items:center;border:1px solid transparent; border-radius:50px; opacity:1; transition:all .3s; white-space:nowrap; min-width:170px;}
.marquee-item:hover{background:var(--blue-pale);box-shadow:0 3px 12px rgba(22,70,114,.10);border:1px solid rgba(46,116,181,.16);}
.marquee-item img{height:80px;display:block;}
.marquee-wrap:hover .marquee-list{animation-play-state:paused;}
@keyframes scroll { 0% {transform: translateX(0);} 100% {transform: translateX(-50%);} }

/* ===== 04 WHY (removed) ===== */

/* ===== 06 NEWS ===== */
.grad-blue{background:linear-gradient(135deg,#2E74B5 0%,#4499D4 55%,#7CBDEB 100%)}
.grad-green{background:linear-gradient(135deg,#10B981 0%,#34D399 55%,#6EE7B7 100%)}
.grad-teal{background:linear-gradient(135deg,#14B8A6 0%,#2DD4BF 55%,#5EEAD4 100%)}
.grad-amber{background:linear-gradient(135deg,#F59E0B 0%,#FBBF24 55%,#FCD34D 100%)}
.grad-rose{background:linear-gradient(135deg,#F43F5E 0%,#FB7185 55%,#FDA4AF 100%)}
.grad-purple{background:linear-gradient(135deg,#7C3AED 0%,#8B5CF6 55%,#A78BFA 100%)}
.nws-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
/* ===== FEATURE NEWS (magazine split) ===== */
.nws-split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:stretch}
.nws-col{display:flex;flex-direction:column;min-width:0}
.nws-col-title{font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:600;color:var(--text-mute);letter-spacing:.22em;text-transform:uppercase;margin:0 0 20px;display:flex;align-items:center;gap:14px}
.nws-col-title::after{display:none}
.nws-col-grid{display:flex;flex-direction:column;gap:16px;flex:1}
.nws-col-more{display:inline-flex;align-items:center;gap:8px;align-self:flex-end;margin-top:22px;font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:600;color:var(--primary);letter-spacing:.06em;text-transform:uppercase;transition:gap .25s ease,color .2s}
.nws-col-more:hover{gap:12px;color:var(--deep)}
.nws-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:460px;border-radius:22px;overflow:hidden;background:var(--deep);box-shadow:0 18px 44px rgba(14,46,82,.16);transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s}
.nws-card:hover{transform:translateY(-8px);box-shadow:0 30px 64px rgba(14,46,82,.26)}
.nws-visual{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.nws-visual--photo{background-size:cover;background-position:center 32%}
.nws-card:hover .nws-visual{transform:scale(1.06)}
.nws-visual .ndeco{color:rgba(255,255,255,.30)}
.nws-visual .ndeco svg{width:120px;height:120px;stroke-width:1}
.nws-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,24,46,0) 24%,rgba(8,24,46,.55) 58%,rgba(8,24,46,.94) 100%)}
.nws-visual .ncat{position:absolute;top:20px;left:20px;z-index:2;font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(14,46,82,.45);backdrop-filter:blur(10px);padding:6px 14px;border-radius:60px;border:1px solid rgba(255,255,255,.25)}
.nws-body{position:relative;z-index:2;padding:30px 32px 32px;color:#fff}
.nws-date{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:rgba(255,255,255,.65);margin-bottom:14px;letter-spacing:.08em;text-transform:uppercase}
.nws-date svg{width:13px;height:13px}
.nws-body h4{font-size:22px;font-weight:600;color:#fff;letter-spacing:-.015em;line-height:1.28;margin-bottom:12px;height:56px;display:-webkit-box; -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.nws-body p{font-size:14px;color:rgba(255,255,255,.72);line-height:1.65;margin-bottom:18px;max-width:52ch;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nws-more{font-size:13px;font-weight:600;color:#fff;display:inline-flex;align-items:center;gap:8px;letter-spacing:.05em}
.nws-more::after{content:'';width:34px;height:1.5px;background:var(--blue-light);transition:width .3s ease}
.nws-card:hover .nws-more::after{width:52px}
.nws-more svg{width:14px;height:14px;transition:transform .3s}
.nws-card:hover .nws-more svg{transform:translateX(4px)}
.nws-cta{display:flex;justify-content:center;margin-top:56px}



@media(max-width:1080px){
    .nws-grid{grid-template-columns:repeat(2,1fr)}
    .nws-split{grid-template-columns:1fr;gap:32px}
    .about-grid{grid-template-columns:1fr;gap:40px}
    .about-sec .about-visual{max-width:540px;margin:0 auto;width:100%}
    .prod-track .prod-card{flex:0 0 calc((100% - 22px)/2)}
    .app-bg span{font-size:42px}
}
@media(max-width:720px){
    .container,.hdr-main,.hdr-top-inner{padding-left:24px;padding-right:24px}
    .hdr-menu{display:none}
    .nws-grid{grid-template-columns:1fr}
    .nws-body h4{min-height:0}
    .hero{padding-top:110px;padding-bottom:150px}
    .hero-stats-inner{grid-template-columns:repeat(2,1fr);gap:12px;padding:12px 24px}
    .hero-stat-big{font-size:20px}
    .hero-stat-label{font-size:9.5px}
    .prod-track .prod-card{flex:0 0 86%}
    .car-out{display:none}
    .about-photos-sub{right:-6px;bottom:0;width:64%;border-width:4px}
    .about-photos-stat{padding:10px 14px;left:14px;top:14px;gap:10px}
    .stat-num{font-size:20px}
    .stat-divider{height:26px}
    .stat-lbl{font-size:8.5px;letter-spacing:.14em}
    .section{padding:80px 0}
}

.index-wrap{
    width:92%;
    max-width:1280px;
    margin:0 auto;
    position: relative;
}
.index-wrap .swiper{
    width:100%;
    padding-top:20px;
    padding-bottom:25px;
}
.index-wrap .swiper-slide{
    border-radius:18px;
    overflow:hidden;
    background:#fff;
    transition:all .4s cubic-bezier(.16,1,.3,1);
}
.index-wrap .swiper-slide:hover{
    transform:scale(1.06);
    box-shadow:0 5px 10px rgba(22,70,114,.16);
}
.index-wrap .card-top{
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 3;
}
.index-wrap .card-top img{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .9s cubic-bezier(.16, 1, .3, 1);
}
.index-wrap .card-content{
    padding:24px;
}
.index-wrap .card-content h3{
    font-size:19px;
    color:#152338;
    margin-bottom:8px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.index-wrap .card-content p{
    font-size:14px;
    color:#555;
    line-height:1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.index-wrap .card-link{
    margin-top:20px;
}
.index-wrap .card-link a{
    color:#2b6ed9;
    text-decoration:none;
    font-size:14px;
}

.index-wrap .swiper-pagination-bullet{
    background:#b8c2d0;
    opacity:1;
}
.index-wrap .swiper-pagination-bullet-active{
    background:#2b6ed9;
}
.swiper-button-next.is-end {
    opacity: 0.4;
}
.swiper-button-prev.is-start {
    opacity: 0.4;
}
.index-wrap .swiper-button-prev:hover,
.index-wrap .swiper-button-next:hover{background:var(--primary);color:#fff}
.index-wrap .swiper-button-prev:active,
.index-wrap .swiper-button-next:active{transform:scale(.94)}
.index-wrap .swiper-button-prev.is-start,
.index-wrap .swiper-button-next.is-end{opacity:.35;}

.index-wrap .swiper-pagination-bullets.swiper-pagination-horizontal{bottom:-36px !important;}
.index-wrap .swiper-button-next,
.index-wrap .swiper-button-prev {
    width:48px !important;
    height:48px !important;
    border-radius:50%;
    background:#ffffff;
    color:#333;
    transition:all .3s;
    box-shadow:var(--shadow-2);
    color:var(--primary);
}
.index-wrap .swiper-button-next::after,
.index-wrap .swiper-button-prev::after{
    font-size:12px !important;
    font-weight:bold;
}
.index-wrap .swiper-button-prev{
    left:-60px !important;
}
.index-wrap .swiper-button-next{
    right:-60px !important;
}
@media (max-width:768px) {
    .index-wrap .swiper-button-prev,
    .index-wrap .swiper-button-next {
        display:none !important;
    }
}

.app-wrap {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    overflow-x: clip;
    overflow-y: visible;
}

.app-wrap .swiper {
    width: 100%;
    height: 320px;
    padding: 30px 0;
}

.app-wrap .swiper-slide {
    width: 420px;
    height: 280px;
    perspective: 1200px;
}

.app-wrap .card {
    width: 100%;
    height: 100%;
    border-radius: 10px;
    overflow: hidden;
    /*box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);*/
    background: #fff;
    position: relative;
}

.app-wrap .card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.app-wrap .card-title {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 12px;
    color: #fff;
    font-size: 15px;
    text-align: center;
    background: linear-gradient(180deg, rgba(10, 32, 58, 0) 40%, rgba(10, 32, 58, .65) 100%);
}

/* 左右箭头 */
.app-wrap .swiper-button-prev,
.app-wrap .swiper-button-next {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
    color: #333;
    top: 50%;
    transform: translateY(-50%);
}

.app-wrap .swiper-button-prev {
    left: 20px;
}

.app-wrap .swiper-button-next {
    right: 20px;
}

.app-wrap .swiper-button-prev::after,
.app-wrap .swiper-button-next::after {
    font-size: 18px;
    font-weight: bold;
}

/* 分页 */
.app-wrap .swiper-pagination-bullet {
    opacity: .22;
    width: 9px;
    height: 9px;
    transition:opacity .5s, background-color .5s, width .5s;
    transition-delay:.5s, .5s, 0s;
    background:#2E74B5;
}

.app-wrap .swiper-pagination-bullet-active {
    opacity: 1;
    width:26px;
    border-radius:6px;
    transition-delay:0s;
    background:#2E74B5;
}
.app-wrap .swiper-pagination-bullets.swiper-pagination-horizontal{bottom:-36px !important;}

.app-wrap .card-hover {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: rgba(10, 32, 58, 0.78); /* 深蓝色遮罩，可改透明度 */
    color: #fff;
    opacity: 0;
    visibility: hidden;
    transition: opacity .35s ease, visibility .35s ease;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 24px;
    border-radius: 14px;
}

.app-wrap .card:hover .card-hover {
    opacity: 1;
    visibility: visible;
}

.app-wrap .card-hover-inner {
    width: 100%;
    max-width: 320px;
}

.app-wrap .card-hover-title {
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 12px;
    color: #fff;
}

.app-wrap .card-hover-text {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 0 18px;
    color: rgba(255, 255, 255, 0.88);
}

.app-wrap .card-hover-link {
    display: inline-block;
    font-size: 14px;
    padding: 9px 18px;
    border: 1px solid #fff;
    border-radius: 999px;
    color: #fff;
    transition: background .3s ease, color .3s ease;
}

.app-wrap .card-hover-link:hover {
    background: #fff;
    color: #0a203a;
}

.app-wrap .card:hover .card-title {
    opacity: 0;
    visibility:hidden;
}

/* 移动端 */
@media (max-width: 768px) {
    .app-wrap .swiper {
        height: 260px;
        padding: 20px 0 50px;
    }

    .app-wrap .swiper-slide {
        width: 280px;
        height: 200px;
    }

    .app-wrap .swiper-button-prev,
    .app-wrap .swiper-button-next {
        width: 36px;
        height: 36px;
    }

    .app-wrap .swiper-button-prev {
        left: 6px;
    }

    .app-wrap .swiper-button-next {
        right: 6px;
    }

    .app-wrap .card-hover {
        padding: 18px;
    }

    .app-wrap .card-hover-title {
        font-size: 17px;
    }

    .app-wrap .card-hover-text {
        font-size: 13px;
    }
}
