/* news-detail — 由 tools/extract-css.mjs 从内联样式抽取；源块: (no-id), (no-id), mobile-nav-consistency-fix, cms-final-no-blank-style, fixed-page-hero-box-final, breadcrumb-title-white-final, detail-breadcrumb-card-2line-final, breadcrumb-pale-white-20260712, responsive-footer-unified-layout */
:root{--navy:#0d1426;--navy-2:#121b2d;--blue:#0063ff;--bg:#f8fafc;--card:#fff;--ink:#0d1426;--text:#334155;--muted:#667085;--line:#e7ecf3;--pale-blue:#eef5ff;--shadow:0 16px 38px rgba(13,20,38,.08);--container:min(1248px,calc(100vw - 48px))}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans SC","Microsoft YaHei",sans-serif;color:var(--text);background:var(--bg);overflow-x:hidden}
    a{color:inherit;text-decoration:none}.container{width:var(--container);margin:0 auto}
    .site-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:88px;background:rgba(8,16,31,.7);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(18px);transition:box-shadow .25s ease,background .25s ease,height .25s ease}
    .site-header.is-scrolled{height:76px;background:rgba(8,16,31,.92);box-shadow:0 12px 34px rgba(4,10,22,.28)}
    .nav-inner{width:var(--container);height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0 auto}
    .brand{display:inline-flex;align-items:center;justify-content:center;min-width:154px;color:#fff}
    .brand-logo{display:block;width:154px;height:60px;object-fit:contain}
    .nav-links{display:flex;align-items:center;gap:46px;color:rgba(226,232,240,.82);font-size:14px;font-weight:400;letter-spacing:.045em}
    .nav-links a{position:relative;padding:31px 0;transition:color .2s ease}
    .site-header.is-scrolled .nav-links a{padding:25px 0}
    .nav-links a::after{content:"";position:absolute;left:50%;bottom:20px;width:0;height:2px;border-radius:999px;background:var(--blue);transform:translateX(-50%);transition:width .2s ease}
    .nav-links a.is-active,.nav-links a:hover{color:#fff}
    .nav-links a.is-active::after{width:28px}
    .nav-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 28px;border-radius:999px;background:var(--blue);color:#fff;border:0;box-shadow:0 14px 30px rgba(0,99,255,.25);font-weight:700;font-size:15px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
    .nav-cta:hover{transform:translateY(-2px);box-shadow:0 20px 42px rgba(0,99,255,.34)}
    .menu-toggle{display:none;width:44px;height:44px;flex:0 0 44px;margin-left:auto;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:rgba(255,255,255,.06);color:#fff;cursor:pointer}
    .menu-toggle span{display:block;width:20px;height:2px;margin:5px auto;border-radius:999px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
    .menu-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .menu-open .menu-toggle span:nth-child(2){opacity:0}
    .menu-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
    .page-hero{position:relative;padding:160px 0 72px;overflow:hidden;color:#fff;background:linear-gradient(125deg,#020713 0%,#081020 52%,#061944 100%)}
    .page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 60%,rgba(0,99,255,.22),transparent 50%)}
    .page-hero .container{position:relative;z-index:2}
    .breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:20px;font-size:13px;color:#fff}
    .breadcrumb a{color:#fff;transition:color .2s}.breadcrumb a:hover{color:#fff}
    .breadcrumb .sep{opacity:.9}
    .news-tag-hero{display:inline-flex;align-items:center;height:28px;padding:0 14px;border-radius:999px;background:rgba(0,99,255,.92);color:#fff;font-size:12px;font-weight:700;margin-bottom:16px}
    .page-hero h1{font-size:38px;font-weight:700;margin:0 0 14px;letter-spacing:-.02em;line-height:1.2}
    .news-hero-meta{display:flex;align-items:center;gap:20px;font-size:14px;color:rgba(255,255,255,.5)}
    .news-hero-meta svg{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none;margin-right:4px;vertical-align:-2px}
    .article-wrap{max-width:var(--container);margin:0 auto;padding:64px 0 80px}
    .article-body p{font-size:16px;line-height:1.85;color:var(--text);margin:0 0 24px}
    .article-body h2{font-size:22px;font-weight:700;color:var(--ink);margin:48px 0 18px;line-height:1.3}
    .article-body h3{font-size:18px;font-weight:700;color:var(--ink);margin:36px 0 14px}
    .article-body ul{margin:0 0 24px;padding-left:20px}
    .article-body li{font-size:15px;line-height:1.8;color:var(--text);margin-bottom:6px}
    .highlight-card{background:var(--pale-blue);border-left:4px solid var(--blue);border-radius:0 8px 8px 0;padding:24px 28px;margin:32px 0}
    .highlight-card h4{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--ink)}
    .highlight-card p{margin:0;font-size:15px;color:var(--text);line-height:1.7}
    .keypoints{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:32px 0}
    .keypoint{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:24px;transition:border-color .2s,box-shadow .2s}
    .keypoint:hover{border-color:rgba(0,99,255,.2);box-shadow:0 8px 24px rgba(13,20,38,.06)}
    .keypoint-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:var(--pale-blue);margin-bottom:14px}
    .keypoint-icon svg{width:20px;height:20px;stroke:var(--blue);stroke-width:2;fill:none}
    .keypoint h4{margin:0 0 6px;font-size:16px;font-weight:700;color:var(--ink)}
    .keypoint p{margin:0;font-size:14px;color:var(--muted);line-height:1.6}
    .related-section{padding:64px 0;background:var(--pale-blue)}
    .related-section .section-label{display:inline-block;margin-bottom:8px;font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--blue);text-transform:uppercase}
    .related-section h2{margin:0 0 28px;font-size:26px;font-weight:700;color:var(--ink)}
    .related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
    .related-card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:24px;transition:border-color .2s,box-shadow .2s}
    .related-card:hover{border-color:rgba(0,99,255,.2);box-shadow:0 8px 24px rgba(13,20,38,.06)}
    .related-card .tag{display:inline-flex;align-items:center;height:22px;padding:0 10px;border-radius:999px;background:var(--pale-blue);color:var(--blue);font-size:11px;font-weight:700;margin-bottom:10px}
    .related-card h3{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--ink);line-height:1.4}
    .related-card .date{font-size:12px;color:var(--muted)}
    .site-footer { background: var(--navy); color: rgba(255,255,255,0.6); padding: 64px 0 0; }
    .footer-grid { display: grid; grid-template-columns: 260px 200px auto; gap: 48px; margin-bottom: 48px; justify-content: space-between; align-items: flex-start; }
    .footer-grid > .footer-col:last-child { width: 450px; justify-self: end; text-align: left; transform: translateX(96px); }
    .footer-col:last-child a, .footer-col:last-child span { justify-content: flex-start; }
    .footer-desc { font-size: 14px; line-height: 1.7; margin: 14px 0 0; }
    .footer-col h3 { color: #fff; font-size: 14px; font-weight: 700; margin: 0 0 18px; }
    .footer-col a, .footer-col span { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; color: rgba(255,255,255,0.55); line-height: 1.8; transition: color 0.2s; }
    .footer-col a:hover { color: #fff; }
    .footer-col .contact-icon { flex-shrink: 0; width: 16px; height: 16px; margin-top: 2px; color: rgba(255,255,255,0.35); }
    .footer-col .contact-text { display: inline-flex; align-items: center; }
    .qr-wrap { display: flex; flex-direction: row; align-items: flex-start; gap: 24px; }
    .qr-item { display: flex; flex-direction: column; align-items: center; }
    .qr-item + .qr-item { margin-left: 50px; }
    .qr { display: grid; grid-template-columns: repeat(5, 1fr); gap: 3px; width: 90px; margin-bottom: 8px; }
    .qr i { aspect-ratio: 1; border-radius: 2px; background: rgba(255,255,255,0.12); }
    .qr i:nth-child(2n+1) { background: rgba(255,255,255,0.3); }
    .qr-label { font-size: 11px; text-align: center; }
    .footer-bottom { border-top: 1px solid rgba(255,255,255,0.08); padding: 24px 0; display: flex; justify-content: space-between; font-size: 12px; color: rgba(255,255,255,0.35); }
    .reveal{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease;transition-delay:var(--delay,0ms)}
    .reveal.is-visible{opacity:1;transform:translateY(0)}
    @media(max-width:1024px){.nav-links{gap:30px;font-size:13px}.keypoints{grid-template-columns:1fr}.related-grid{grid-template-columns:repeat(2,1fr)}}
    @media(max-width:768px){.nav-links{position:fixed;top:72px;left:0;right:0;flex-direction:column;background:var(--navy);padding:16px 24px;gap:0;transform:translateY(-120%);transition:transform .3s;z-index:49}body.menu-open .nav-links{transform:translateY(0)}.nav-cta{display:none}.menu-toggle{display:flex}.page-hero h1{font-size:26px}.related-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:200px 140px auto;gap:28px}.footer-grid>.footer-col:last-child{width:auto;transform:none}}
    @media (max-width: 1180px) {
      .footer-grid{grid-template-columns:200px 140px auto;gap:28px}.footer-grid>.footer-col:last-child{width:auto;transform:none}
    }
    @media (max-width: 1024px) {
      .footer-grid{grid-template-columns:1fr;gap:36px}.footer-grid>div:first-child{display:flex;align-items:flex-start;gap:16px}.footer-grid .footer-desc{margin:0;max-width:none}.qr-wrap{justify-content:center;gap:40px}.qr-item+.qr-item{margin-left:0}.footer-grid>.footer-col:last-child{width:auto;transform:none;justify-self:start;text-align:left}.footer-col:last-child a,.footer-col:last-child span{justify-content:flex-start}
    }
    @media (max-width: 768px) {
      .footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{flex-direction:column;gap:8px}
    }
  
    /* news-related-footer-gap-final */
    #cms-news-detail-shell .news-related-section,
    body.news-detail-server-rendered #cms-news-detail-shell .news-related-section{
      padding:76px 0 168px!important;
      background:#eaf3ff!important;
    }
    #cms-news-detail-shell .news-related-grid,
    body.news-detail-server-rendered #cms-news-detail-shell .news-related-grid{
      display:grid!important;
      grid-template-columns:repeat(3,minmax(0,1fr))!important;
      gap:32px!important;
      margin-top:42px!important;
      margin-bottom:0!important;
      align-items:stretch!important;
    }
    #cms-news-detail-shell .news-related-card,
    body.news-detail-server-rendered #cms-news-detail-shell .news-related-card{
      min-height:210px!important;
      padding:34px 36px 34px!important;
      display:flex!important;
      flex-direction:column!important;
      justify-content:space-between!important;
      box-sizing:border-box!important;
    }
    #cms-news-detail-shell .news-related-card .date,
    body.news-detail-server-rendered #cms-news-detail-shell .news-related-card .date{
      margin-top:auto!important;
      padding-top:14px!important;
    }
    @media(max-width:900px){#cms-news-detail-shell .news-related-grid,body.news-detail-server-rendered #cms-news-detail-shell .news-related-grid{grid-template-columns:1fr!important}#cms-news-detail-shell .news-related-section,body.news-detail-server-rendered #cms-news-detail-shell .news-related-section{padding:70px 0 132px!important}}
    /* /news-related-footer-gap-final */
html.cms-dynamic-loading .nav-links,
  html.cms-dynamic-loading .nav-cta,
  html.cms-dynamic-loading .hero-copy,
  html.cms-dynamic-loading .page-hero .container,
  html.cms-dynamic-loading .section-block > .container,
  html.cms-dynamic-loading .site-footer .container {
    visibility: visible !important;
  }
@media (max-width: 768px) {
  body.menu-open { overflow: hidden !important; }

  .site-header,
  .site-header.is-scrolled {
    height: 76px !important;
    background: rgba(8, 16, 31, 0.98) !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
    z-index: 1000 !important;
  }

  .nav-inner {
    width: min(100% - 32px, 640px) !important;
    height: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
  }

  .brand {
    min-width: 0 !important;
    flex: 0 1 auto !important;
  }

  .brand-logo {
    width: 142px !important;
    height: 52px !important;
    object-fit: contain !important;
  }

  .nav-cta {
    display: none !important;
  }

  .menu-toggle {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    height: 46px !important;
    flex: 0 0 46px !important;
    margin-left: auto !important;
    border-radius: 10px !important;
    color: #fff !important;
    background: rgba(255,255,255,0.06) !important;
    border: 1px solid rgba(255,255,255,0.16) !important;
    z-index: 1002 !important;
  }

  .menu-toggle span {
    width: 20px !important;
    height: 2px !important;
    margin: 3px 0 !important;
    border-radius:999px !important;
    background: currentColor !important;
  }

  .menu-open .menu-toggle span:nth-child(1) {
    transform: translateY(8px) rotate(45deg) !important;
  }

  .menu-open .menu-toggle span:nth-child(2) {
    opacity: 0 !important;
  }

  .menu-open .menu-toggle span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg) !important;
  }

  .nav-links {
    position: fixed !important;
    top: 76px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    width: 100% !important;
    max-height: calc(100vh - 76px) !important;
    overflow-y: auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    gap: 0 !important;
    padding: 18px 28px 28px !important;
    background: rgba(8, 16, 31, 0.98) !important;
    box-shadow: 0 24px 55px rgba(0,0,0,0.32) !important;
    text-align: left !important;
    transform: translateY(-110%) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: transform 0.24s ease, opacity 0.2s ease, visibility 0.2s ease !important;
    z-index: 999 !important;
  }

  body.menu-open .nav-links,
  .menu-open .nav-links {
    transform: translateY(0) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    display: grid !important;
  }

  .nav-links a,
  .site-header.is-scrolled .nav-links a {
    display: block !important;
    width: 100% !important;
    padding: 15px 0 !important;
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    color: rgba(255,255,255,0.78) !important;
    text-align: left !important;
    letter-spacing: 0.04em !important;
  }

  .nav-links a.is-active,
  .nav-links a:hover {
    color: #fff !important;
    font-weight: 700 !important;
  }

  .nav-links a::after {
    left: 0 !important;
    right: auto !important;
    bottom: 7px !important;
    transform: none !important;
  }

  .nav-links a.is-active::after {
    width: 32px !important;
  }

  .hero,
  .page-hero {
    padding-top: 128px !important;
  }
}

@media (max-width: 420px) {
  .site-header,
  .site-header.is-scrolled {
    height: 72px !important;
  }

  .nav-inner {
    width: calc(100% - 28px) !important;
  }

  .brand-logo {
    width: 136px !important;
    height: 48px !important;
  }

  .menu-toggle {
    width: 44px !important;
    height: 44px !important;
    flex-basis: 44px !important;
  }

  .nav-links {
    top: 72px !important;
    max-height: calc(100vh - 72px) !important;
    padding: 16px 24px 26px !important;
  }

  .hero,
  .page-hero {
    padding-top: 118px !important;
  }
}
html.cms-dynamic-loading .nav-links,
html.cms-dynamic-loading .nav-cta,
html.cms-dynamic-loading .hero-copy,
html.cms-dynamic-loading .page-hero .container,
html.cms-dynamic-loading .section-block > .container,
html.cms-dynamic-loading .site-footer .container { visibility: visible !important; opacity: 1 !important; }
.reveal { opacity: 1 !important; transform: none !important; }
.page-hero .container, .hero-copy, main .container { visibility: visible !important; opacity: 1 !important; }
/* 顶部 Banner 固定高度：关于、产品、服务、案例、新闻、联系统一，不再被标题/说明文字撑高 */
.page-hero,
.service-page-hero {
  height: 360px !important;
  min-height: 360px !important;
  max-height: 360px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.page-hero > .container,
.service-page-hero > .container {
  position: relative !important;
  z-index: 2 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.page-hero.has-hero-image,
.service-page-hero.has-hero-image {
  background-image: linear-gradient(125deg, rgba(2,7,19,0.86) 0%, rgba(8,16,32,0.72) 52%, rgba(6,25,68,0.80) 100%), var(--page-hero-image, var(--about-hero-image, var(--product-hero-image, var(--service-hero-image)))) !important;
}
@media (max-width: 820px) {
  .page-hero,
  .service-page-hero {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
    padding: 0 !important;
  }
}
/* breadcrumb-title-white-final */
.page-hero .breadcrumb,
.page-hero .breadcrumb a,
.service-page-hero .breadcrumb,
.service-page-hero .breadcrumb a,
.detail-hero .breadcrumb,
.detail-hero .breadcrumb a {
  color: #fff !important;
  opacity: 1 !important;
  font-weight: 700 !important;
}
.page-hero .breadcrumb .sep,
.service-page-hero .breadcrumb .sep,
.detail-hero .breadcrumb .sep {
  color: #fff !important;
  opacity: .92 !important;
}
/* /breadcrumb-title-white-final */
.product-dynamic-hero .detail-breadcrumb,.service-detail-top-hero .detail-breadcrumb,.service-dynamic-hero .detail-breadcrumb{display:flex!important;align-items:center!important;gap:8px!important;margin-bottom:24px!important}.product-dynamic-hero .detail-breadcrumb a,.service-detail-top-hero .detail-breadcrumb a,.service-dynamic-hero .detail-breadcrumb a{color:#fff!important;opacity:1!important;font-weight:700!important;text-decoration:none!important}.product-dynamic-hero .detail-breadcrumb .sep,.service-detail-top-hero .detail-breadcrumb .sep,.service-dynamic-hero .detail-breadcrumb .sep{color:#fff!important;opacity:.92!important}.case-card .case-summary-scroll p,.related-case-grid .related-case-card .case-summary-scroll p{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.page-hero .breadcrumb,.service-page-hero .breadcrumb,.detail-hero .breadcrumb{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.page-hero .breadcrumb a,.service-page-hero .breadcrumb a,.detail-hero .breadcrumb a{color:rgba(255,255,255,.74)!important;opacity:1!important;text-decoration:none!important;transition:color .18s ease}
.page-hero .breadcrumb a:hover,.service-page-hero .breadcrumb a:hover,.detail-hero .breadcrumb a:hover{color:#fff!important}
.page-hero .breadcrumb .sep,.service-page-hero .breadcrumb .sep,.detail-hero .breadcrumb .sep{color:rgba(255,255,255,.52)!important;opacity:1!important}
.detail-breadcrumb .breadcrumb-current{color:rgba(255,255,255,.68)!important;opacity:1!important}
@media (max-width: 1024px) {
      .site-footer .footer-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 32px !important;
        align-items: start !important;
        justify-content: stretch !important;
      }

      .site-footer .footer-grid > div:first-child {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        justify-self: stretch !important;
        transform: none !important;
        text-align: left !important;
      }

      .site-footer .footer-grid > div:first-child .brand {
        justify-content: flex-start !important;
      }

      .site-footer .footer-grid > div:first-child .footer-desc {
        margin-top: 14px !important;
        text-align: left !important;
      }

      .site-footer .qr-wrap {
        display: flex !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 auto !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        justify-content: center !important;
        gap: clamp(32px, 10vw, 56px) !important;
        transform: none !important;
      }

      .site-footer .qr-wrap .qr-item,
      .site-footer .qr-wrap .qr-item + .qr-item {
        margin: 0 !important;
        align-items: center !important;
      }

      .site-footer .footer-grid > .footer-col:last-child {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        justify-self: stretch !important;
        transform: none !important;
        text-align: left !important;
      }

      .site-footer .footer-grid > .footer-col:last-child h3 {
        text-align: left !important;
      }

      .site-footer .footer-grid > .footer-col:last-child > a,
      .site-footer .footer-grid > .footer-col:last-child > span {
        justify-content: flex-start !important;
        text-align: left !important;
      }
    }
