/*
Theme Name: 企因优承 QiYinYouCheng
Theme URI: https://qiyinc.com/
Author: QiYinYouCheng
Author URI: https://qiyinc.com/
Description: 专注外贸企业增长的专业咨询与培训机构官方网站主题。Navy + Red 设计风格，Noto Serif SC 标题字体，Elementor 可视化编辑支持。
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: qiyinc
*/

/* ═══════════════════════════════════════════════════════
   企因优承 · 共享设计系统
   Design System — Navy + Red · Editorial · Consulting
   ═══════════════════════════════════════════════════════ */

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --navy:      #14213D;
  --navy-dark: #0A1428;
  --navy-lt:   #1E3054;
  --red:       #C8322E;
  --red-dark:  #A32826;
  --ink:       #1A1A1A;
  --text:      #2A2A2A;
  --muted:     #6B6B6B;
  --light:     #9CA3AF;
  --bg:        #FFFFFF;
  --bg-soft:   #FAFAF8;
  --border:    #E8E8E5;
  --divider:   #EFEFEC;
}

html { scroll-behavior: smooth; }
body {
  font-family: 'Inter', 'Noto Sans SC', -apple-system, sans-serif;
  color: var(--text);
  background: var(--bg);
  line-height: 1.7;
  font-size: 15px;
  -webkit-font-smoothing: antialiased;
}

.container { max-width: 1200px; margin: 0 auto; padding: 0 40px; }

/* ═══ NAV ═══ */
nav.site-nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  height: 72px;
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--divider);
}
.nav-inner {
  max-width: 1200px; margin: 0 auto; padding: 0 40px;
  height: 100%;
  display: flex; align-items: center; justify-content: space-between;
}
.nav-logo {
  font-family: 'Noto Serif SC', serif;
  font-size: 20px; font-weight: 700;
  color: var(--navy); letter-spacing: 3px;
  display: flex; align-items: center; gap: 10px;
  text-decoration: none;
}
.nav-logo::before {
  content: ''; display: block;
  width: 4px; height: 20px;
  background: var(--red);
}
.nav-links { display: flex; gap: 40px; list-style: none; }
.nav-links a {
  color: var(--text);
  text-decoration: none; font-size: 14px; font-weight: 400;
  transition: color .2s;
  position: relative;
}
.nav-links a::after {
  content: ''; position: absolute; left: 0; bottom: -6px;
  width: 0; height: 2px; background: var(--red);
  transition: width .25s ease;
}
.nav-links a:hover { color: var(--navy); }
.nav-links a.active { color: var(--navy); font-weight: 500; }
.nav-links a.active::after { width: 100%; }
.nav-links a:hover::after { width: 100%; }
.nav-cta {
  padding: 10px 24px;
  background: var(--navy); color: #fff;
  border: none; border-radius: 2px;
  font-size: 13px; font-weight: 500; letter-spacing: .5px;
  cursor: pointer;
  transition: background .2s;
}
.nav-cta:hover { background: var(--red); }

/* ═══ PAGE HEADER (子页面横幅) ═══ */
.page-header {
  padding: 160px 0 100px;
  background: var(--navy);
  color: #fff;
  position: relative;
  overflow: hidden;
}
.page-header::before {
  content: '';
  position: absolute; top: 0; right: 0;
  width: 55%; height: 100%;
  background: linear-gradient(135deg, rgba(200,50,46,0.08) 0%, transparent 60%);
}
.page-header::after {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.15), transparent);
}
.page-header-inner {
  position: relative; z-index: 1;
  display: grid; grid-template-columns: 1.4fr 1fr;
  gap: 60px; align-items: center;
}
.page-eyebrow {
  display: inline-flex; align-items: center; gap: 12px;
  font-size: 12px; letter-spacing: 3px;
  color: rgba(255,255,255,0.55);
  text-transform: uppercase;
  margin-bottom: 32px;
}
.page-eyebrow::before {
  content: ''; width: 32px; height: 1px;
  background: var(--red);
}
.page-title {
  font-family: 'Noto Serif SC', serif;
  font-size: clamp(36px, 4.5vw, 58px);
  font-weight: 500;
  color: #fff;
  line-height: 1.25;
  letter-spacing: 1px;
  margin-bottom: 24px;
}
.page-title em {
  font-style: normal;
  position: relative;
  color: #fff;
}
.page-title em::after {
  content: '';
  position: absolute; left: 0; right: 0; bottom: 4px;
  height: 8px;
  background: var(--red);
  z-index: -1;
  opacity: 0.9;
}
.page-subtitle {
  font-size: 16px;
  color: rgba(255,255,255,0.7);
  max-width: 520px;
  line-height: 1.9;
}
.page-breadcrumb {
  display: flex; gap: 12px; align-items: center;
  font-size: 12px; color: rgba(255,255,255,0.5);
  letter-spacing: 1.5px;
  margin-bottom: 40px;
}
.page-breadcrumb a { color: rgba(255,255,255,0.5); text-decoration: none; transition: color .2s; }
.page-breadcrumb a:hover { color: var(--red); }
.page-breadcrumb span.sep { color: rgba(255,255,255,0.25); }

/* Right decorative visual */
.header-visual {
  position: relative;
  aspect-ratio: 1/1;
  max-height: 360px;
}
.header-visual-frame {
  position: absolute; inset: 0;
  border: 1px solid rgba(255,255,255,0.15);
}
.header-visual-frame::before {
  content: '';
  position: absolute; top: -1px; left: -1px;
  width: 40px; height: 40px;
  border-top: 2px solid var(--red);
  border-left: 2px solid var(--red);
}
.header-visual-frame::after {
  content: '';
  position: absolute; bottom: -1px; right: -1px;
  width: 40px; height: 40px;
  border-bottom: 2px solid var(--red);
  border-right: 2px solid var(--red);
}

/* ═══ BUTTONS ═══ */
.btn-primary {
  padding: 15px 36px;
  background: var(--red); color: #fff;
  border: none; border-radius: 2px;
  font-size: 14px; font-weight: 500; letter-spacing: 1px;
  cursor: pointer;
  transition: background .2s;
  display: inline-flex; align-items: center; gap: 10px;
  text-decoration: none;
  font-family: inherit;
}
.btn-primary:hover { background: var(--red-dark); }
.btn-primary::after { content: '→'; font-size: 16px; }
.btn-ghost {
  padding: 15px 36px;
  background: transparent; color: #fff;
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 2px;
  font-size: 14px; font-weight: 400; letter-spacing: 1px;
  cursor: pointer;
  transition: border-color .2s, background .2s;
  text-decoration: none; display: inline-flex; align-items: center; gap: 8px;
  font-family: inherit;
}
.btn-ghost:hover { border-color: #fff; background: rgba(255,255,255,0.06); }
.btn-outline {
  padding: 15px 36px;
  background: transparent; color: var(--navy);
  border: 1px solid var(--border);
  border-radius: 2px;
  font-size: 14px; font-weight: 500; letter-spacing: 1px;
  cursor: pointer;
  transition: all .2s;
  text-decoration: none; display: inline-flex; align-items: center; gap: 8px;
  font-family: inherit;
}
.btn-outline:hover { background: var(--navy); color: #fff; border-color: var(--navy); }

/* ═══ SECTIONS ═══ */
section { padding: 120px 0; }
.section-head { margin-bottom: 80px; max-width: 720px; }
.section-head.center { margin-left: auto; margin-right: auto; text-align: center; }
.section-eyebrow {
  display: inline-flex; align-items: center; gap: 12px;
  font-size: 12px; letter-spacing: 3px; text-transform: uppercase;
  color: var(--red);
  font-weight: 500;
  margin-bottom: 24px;
}
.section-eyebrow::before {
  content: ''; width: 32px; height: 1px; background: var(--red);
}
.section-head.center .section-eyebrow { justify-content: center; }
.section-title {
  font-family: 'Noto Serif SC', serif;
  font-size: clamp(28px, 3.5vw, 44px);
  font-weight: 500;
  color: var(--navy);
  line-height: 1.35;
  letter-spacing: 1px;
}
.section-title em {
  font-style: normal; color: var(--red);
}
.section-sub {
  margin-top: 20px;
  font-size: 15px; color: var(--muted);
  line-height: 1.9;
  max-width: 640px;
}
.section-head.center .section-sub { margin-left: auto; margin-right: auto; }

/* ═══ CTA BANNER ═══ */
.cta-banner {
  background: var(--navy);
  color: #fff;
  text-align: center;
  padding: 130px 40px;
  position: relative;
  overflow: hidden;
}
.cta-banner::before {
  content: '';
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 500px; height: 500px;
  border: 1px solid rgba(255,255,255,0.05);
  border-radius: 50%;
}
.cta-banner::after {
  content: '';
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 700px; height: 700px;
  border: 1px solid rgba(255,255,255,0.04);
  border-radius: 50%;
}
.cta-inner { position: relative; z-index: 1; max-width: 720px; margin: 0 auto; }
.cta-eyebrow {
  display: inline-flex; align-items: center; gap: 12px;
  font-size: 12px; letter-spacing: 3px; text-transform: uppercase;
  color: var(--red);
  margin-bottom: 32px;
}
.cta-eyebrow::before, .cta-eyebrow::after {
  content: ''; width: 32px; height: 1px; background: var(--red);
}
.cta-banner h2 {
  font-family: 'Noto Serif SC', serif;
  font-size: clamp(30px, 4vw, 52px);
  font-weight: 500;
  color: #fff;
  line-height: 1.35;
  margin-bottom: 32px;
  letter-spacing: 1px;
}
.cta-banner h2 em { font-style: normal; color: var(--red); }
.cta-banner p {
  font-size: 16px; color: rgba(255,255,255,0.65);
  max-width: 520px; margin: 0 auto 48px;
  line-height: 1.9;
}
.cta-btns { display: flex; justify-content: center; gap: 16px; flex-wrap: wrap; }

/* ═══ FOOTER ═══ */
footer.site-footer {
  background: var(--navy-dark);
  padding: 80px 0 40px;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.footer-grid {
  display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: 60px;
  margin-bottom: 60px;
}
.footer-brand .nav-logo { color: #fff; }
.footer-brand p {
  font-size: 13px; color: rgba(255,255,255,0.45);
  margin-top: 20px; line-height: 2;
  max-width: 280px;
}
.footer-col h4 {
  font-size: 12px; font-weight: 500;
  color: #fff;
  margin-bottom: 24px;
  letter-spacing: 2px; text-transform: uppercase;
  position: relative; padding-bottom: 16px;
}
.footer-col h4::after {
  content: ''; position: absolute; bottom: 0; left: 0;
  width: 24px; height: 1px; background: var(--red);
}
.footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 12px; }
.footer-col ul li a {
  font-size: 13px; color: rgba(255,255,255,0.5);
  text-decoration: none; transition: color .2s;
}
.footer-col ul li a:hover { color: #fff; }
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.06);
  padding-top: 32px;
  display: flex; justify-content: space-between; align-items: center;
  flex-wrap: wrap; gap: 12px;
}
.footer-bottom p { font-size: 12px; color: rgba(255,255,255,0.3); letter-spacing: .5px; }

/* ═══ FLOATING CONTACT ═══ */
.float-btn {
  position: fixed; right: 32px; bottom: 40px; z-index: 200;
  display: flex; flex-direction: column; gap: 12px;
}
.float-item {
  width: 48px; height: 48px;
  background: #fff;
  border: 1px solid var(--border);
  color: var(--navy);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; font-size: 18px;
  box-shadow: 0 4px 20px rgba(20,33,61,0.12);
  transition: all .2s;
}
.float-item:hover { background: var(--navy); color: #fff; border-color: var(--navy); }
.float-item.main {
  background: var(--red); color: #fff; border-color: var(--red);
  width: 56px; height: 56px; font-size: 22px;
}
.float-item.main:hover { background: var(--red-dark); border-color: var(--red-dark); }

/* ═══ RESPONSIVE ═══ */
@media (max-width: 960px) {
  .container, .nav-inner { padding-left: 24px; padding-right: 24px; }
  .nav-links { display: none; }
  section { padding: 72px 0; }
  .page-header { padding: 120px 0 60px; }
  .page-header-inner { grid-template-columns: 1fr; gap: 40px; }
  .header-visual { display: none; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
  .section-head { margin-bottom: 50px; }
}
@media (max-width: 560px) {
  .footer-grid { grid-template-columns: 1fr; }
  .cta-banner { padding: 80px 24px; }
}

/* ═══════════════════════════════════════════════════════
   IMAGE SYSTEM — 图片处理系统
   ═══════════════════════════════════════════════════════ */

/* 图片容器基础 */
.img-container {
  position: relative;
  overflow: hidden;
  background: var(--navy);
}
.img-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .6s ease;
}
.img-container:hover img {
  transform: scale(1.05);
}

/* 图片遮罩变体 */
.img-overlay-navy::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(20,33,61,0.85) 0%, rgba(20,33,61,0.6) 100%);
  pointer-events: none;
}
.img-overlay-dark::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(10,20,40,0.95) 0%, rgba(10,20,40,0.3) 60%, transparent 100%);
  pointer-events: none;
}
.img-overlay-red::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(200,50,46,0.15) 0%, rgba(20,33,61,0.7) 100%);
  pointer-events: none;
}
.img-overlay-light::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(20,33,61,0.6) 100%);
  pointer-events: none;
}

/* 图片框装饰（四角） */
.img-frame-corners {
  position: relative;
}
.img-frame-corners::before,
.img-frame-corners::after {
  content: '';
  position: absolute;
  width: 32px; height: 32px;
  z-index: 2;
}
.img-frame-corners::before {
  top: 16px; left: 16px;
  border-top: 2px solid var(--red);
  border-left: 2px solid var(--red);
}
.img-frame-corners::after {
  bottom: 16px; right: 16px;
  border-bottom: 2px solid var(--red);
  border-right: 2px solid var(--red);
}

/* 图片编号标签（左上角） */
.img-tag {
  position: absolute;
  top: 20px; left: 20px;
  z-index: 3;
  background: var(--red);
  color: #fff;
  padding: 6px 14px;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 500;
}
.img-tag-dark {
  background: rgba(20,33,61,0.92);
  backdrop-filter: blur(8px);
}

/* 图片底部标注 */
.img-caption {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 24px 24px 20px;
  z-index: 2;
  color: #fff;
}
.img-caption-eyebrow {
  font-size: 11px;
  color: var(--red);
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 8px;
  display: block;
}
.img-caption-title {
  font-family: 'Noto Serif SC', serif;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 1.5;
}

/* Hero大图英雄区背景图 */
.hero-image-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.hero-image-bg img {
  width: 100%; height: 100%;
  object-fit: cover;
  filter: brightness(0.4) saturate(0.8);
}
.hero-image-bg::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(20,33,61,0.92) 0%, rgba(20,33,61,0.75) 50%, rgba(10,20,40,0.85) 100%);
}

/* 图片说明性水印/替换提示 */
.img-placeholder-hint {
  position: absolute;
  top: 12px; right: 12px;
  z-index: 5;
  background: rgba(0,0,0,0.6);
  color: rgba(255,255,255,0.9);
  padding: 4px 10px;
  font-size: 10px;
  letter-spacing: 1px;
  border-radius: 2px;
  opacity: 0;
  transition: opacity .2s;
  font-family: 'Inter', monospace;
}
.img-container:hover .img-placeholder-hint {
  opacity: 1;
}

/* 图片网格 - 用于logo墙、案例图墙等 */
.image-grid {
  display: grid;
  gap: 2px;
  background: var(--border);
  border: 1px solid var(--border);
}
.image-grid > * {
  background: #fff;
}


/* ═══ HOMEPAGE ═══ */
    /* ─── HOMEPAGE Specific ─── */

    /* HERO — 沉浸式大图 */
    .hero {
      position: relative;
      min-height: 100vh;
      display: flex; align-items: center;
      overflow: hidden;
    }
    .hero-inner {
      position: relative; z-index: 2;
      max-width: 1200px; margin: 0 auto; padding: 140px 40px 100px;
      width: 100%;
      display: grid; grid-template-columns: 1.3fr 1fr;
      gap: 80px; align-items: center;
    }
    .hero-eyebrow {
      display: inline-flex; align-items: center; gap: 12px;
      font-size: 12px; letter-spacing: 3px;
      color: rgba(255,255,255,0.65);
      text-transform: uppercase;
      margin-bottom: 32px;
    }
    .hero-eyebrow::before {
      content: ''; width: 32px; height: 1px;
      background: var(--red);
    }
    .hero h1 {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(38px, 4.8vw, 62px);
      font-weight: 500;
      color: #fff;
      line-height: 1.25;
      letter-spacing: 1px;
      margin-bottom: 32px;
    }
    .hero h1 em {
      font-style: normal;
      position: relative;
      color: #fff;
    }
    .hero h1 em::after {
      content: '';
      position: absolute; left: 0; right: 0; bottom: 6px;
      height: 10px;
      background: var(--red);
      z-index: -1;
      opacity: 0.9;
    }
    .hero-desc {
      font-size: 16px;
      color: rgba(255,255,255,0.75);
      max-width: 520px;
      line-height: 2;
      margin-bottom: 48px;
    }
    .hero-btns { display: flex; gap: 16px; flex-wrap: wrap; }

    /* Hero 右侧图片卡片组合 */
    .hero-visual-stack {
      position: relative;
      aspect-ratio: 4/5;
    }
    .hero-img-main {
      position: absolute;
      top: 0; right: 0;
      width: 78%;
      aspect-ratio: 3/4;
      overflow: hidden;
      border: 3px solid rgba(255,255,255,0.1);
    }
    .hero-img-main img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .hero-img-secondary {
      position: absolute;
      bottom: 0; left: 0;
      width: 55%;
      aspect-ratio: 4/3;
      overflow: hidden;
      border: 6px solid var(--navy);
      box-shadow: -20px 20px 40px rgba(0,0,0,0.3);
    }
    .hero-img-secondary img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .hero-badge-float {
      position: absolute;
      top: 20%; left: -20px;
      background: var(--red);
      color: #fff;
      padding: 20px 28px;
      z-index: 5;
      box-shadow: 0 10px 30px rgba(200,50,46,0.4);
    }
    .hero-badge-float-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 36px; font-weight: 500;
      line-height: 1;
      letter-spacing: 1px;
    }
    .hero-badge-float-lbl {
      font-size: 11px;
      letter-spacing: 2px;
      margin-top: 6px;
      opacity: 0.9;
    }

    /* Hero stats底部 */
    .hero-stats {
      position: absolute; bottom: 0; left: 0; right: 0; z-index: 3;
      background: rgba(10,20,40,0.9);
      backdrop-filter: blur(10px);
      border-top: 1px solid rgba(255,255,255,0.08);
    }
    .hero-stats-inner {
      max-width: 1200px; margin: 0 auto; padding: 0 40px;
      display: flex;
    }
    .stat-item {
      flex: 1; padding: 28px 0;
      text-align: left; padding-left: 32px;
      border-right: 1px solid rgba(255,255,255,0.08);
    }
    .stat-item:first-child { padding-left: 0; }
    .stat-item:last-child { border-right: none; }
    .stat-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px; font-weight: 500;
      color: #fff;
      letter-spacing: 1px;
    }
    .stat-num sup { color: var(--red); font-size: 18px; }
    .stat-label {
      font-size: 12px; color: rgba(255,255,255,0.5);
      margin-top: 4px; letter-spacing: 1px;
    }

    /* ═══ ABOUT ═══ */
    .about { background: var(--bg-soft); }
    .about-grid {
      display: grid; grid-template-columns: 1fr 1.15fr;
      gap: 80px; align-items: center;
    }
    .about-visual {
      position: relative;
      aspect-ratio: 4/5;
    }
    .about-img-main {
      position: absolute;
      inset: 0;
      overflow: hidden;
      z-index: 1;
    }
    .about-img-main img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .about-img-overlay {
      position: absolute;
      right: -30px; bottom: -30px;
      width: 55%;
      aspect-ratio: 3/2;
      background: var(--navy);
      padding: 32px 28px;
      z-index: 3;
      color: #fff;
      border: 6px solid var(--bg-soft);
    }
    .about-img-overlay-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 56px; font-weight: 500;
      color: var(--red);
      line-height: 1;
      margin-bottom: 12px;
    }
    .about-img-overlay-txt {
      font-size: 12px;
      letter-spacing: 2px;
      color: rgba(255,255,255,0.75);
      text-transform: uppercase;
    }
    .about-badge-tl {
      position: absolute;
      top: -20px; left: -20px;
      background: var(--red);
      color: #fff;
      padding: 16px 22px;
      z-index: 4;
      font-family: 'Noto Serif SC', serif;
      letter-spacing: 2px;
      font-weight: 500;
    }
    .about-text h2 {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(28px, 3vw, 40px);
      font-weight: 500;
      color: var(--navy);
      line-height: 1.4;
      margin-bottom: 32px;
      letter-spacing: 1px;
    }
    .about-text h2 em { font-style: normal; color: var(--red); }
    .about-text p {
      color: var(--muted);
      font-size: 15px;
      line-height: 2;
      margin-bottom: 20px;
    }
    .about-tags {
      display: flex; flex-wrap: wrap; gap: 10px;
      margin-top: 32px;
    }
    .about-tag {
      padding: 6px 16px;
      background: #fff;
      border: 1px solid var(--border);
      color: var(--navy);
      font-size: 13px;
      letter-spacing: .5px;
    }

    /* ═══ SERVICES — 图卡式 ═══ */
    .services { background: var(--bg); }
    .services-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 32px;
    }
    .service-card {
      position: relative;
      overflow: hidden;
      background: #fff;
      border: 1px solid var(--border);
      transition: all .35s;
      display: flex; flex-direction: column;
    }
    .service-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 24px 60px rgba(20,33,61,0.15);
    }
    .service-cover {
      position: relative;
      aspect-ratio: 16/10;
      overflow: hidden;
      background: var(--navy);
    }
    .service-cover img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .service-card:hover .service-cover img { transform: scale(1.08); }
    .service-cover::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.75) 0%, rgba(20,33,61,0.2) 60%, transparent 100%);
    }
    .service-num-tag {
      position: absolute;
      top: 20px; left: 20px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      font-size: 12px;
      letter-spacing: 2px;
      padding: 6px 14px;
      font-weight: 500;
    }
    .service-featured-tag {
      position: absolute;
      top: 20px; right: 20px;
      z-index: 2;
      background: rgba(255,255,255,0.95);
      color: var(--navy);
      font-size: 11px;
      letter-spacing: 2px;
      padding: 6px 14px;
      font-weight: 600;
    }
    .service-cover-title {
      position: absolute;
      bottom: 24px; left: 24px; right: 24px;
      z-index: 2;
      color: #fff;
    }
    .service-cover-eyebrow {
      font-size: 11px;
      color: rgba(255,255,255,0.65);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 8px;
    }
    .service-cover-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 22px;
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1.4;
    }
    .service-body {
      padding: 28px 28px 32px;
      flex: 1;
      display: flex; flex-direction: column;
    }
    .service-body p {
      font-size: 14px;
      color: var(--muted);
      line-height: 1.9;
      margin-bottom: 24px;
      flex: 1;
    }
    .service-more {
      font-size: 12px;
      color: var(--navy);
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
      display: inline-flex; align-items: center; gap: 10px;
      padding-top: 20px;
      border-top: 1px solid var(--divider);
    }
    .service-more::after {
      content: '→';
      transition: transform .2s;
    }
    .service-card:hover .service-more::after { transform: translateX(6px); color: var(--red); }

    /* ═══ CASES — 大图案例 ═══ */
    .cases { background: var(--navy); color: #fff; }
    .cases .section-title { color: #fff; }
    .cases .section-sub { color: rgba(255,255,255,0.6); }
    .cases-featured {
      display: grid; grid-template-columns: 1.5fr 1fr;
      gap: 40px;
      margin-bottom: 40px;
    }
    .case-main-card {
      position: relative;
      overflow: hidden;
      aspect-ratio: 4/3;
      background: var(--navy-dark);
    }
    .case-main-card img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .case-main-card::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(10,20,40,0.95) 0%, rgba(10,20,40,0.5) 40%, rgba(10,20,40,0.2) 100%);
      pointer-events: none;
    }
    .case-main-content {
      position: absolute;
      bottom: 0; left: 0; right: 0;
      padding: 48px 48px 40px;
      z-index: 2;
    }
    .case-main-cat {
      display: inline-block;
      padding: 5px 14px;
      background: var(--red);
      color: #fff;
      font-size: 12px;
      letter-spacing: 2px;
      margin-bottom: 20px;
      font-weight: 500;
    }
    .case-main-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      color: #fff;
      line-height: 1.35;
      letter-spacing: 1px;
      margin-bottom: 16px;
    }
    .case-main-desc {
      font-size: 14px;
      color: rgba(255,255,255,0.7);
      line-height: 1.9;
      margin-bottom: 28px;
      max-width: 480px;
    }
    .case-main-nums {
      display: flex; gap: 40px;
      padding-top: 24px;
      border-top: 1px solid rgba(255,255,255,0.15);
    }
    .case-main-nums div {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      color: var(--red);
      letter-spacing: 1px;
    }
    .case-main-nums div small {
      display: block;
      font-family: 'Inter', sans-serif;
      font-size: 11px;
      color: rgba(255,255,255,0.5);
      letter-spacing: 1.5px;
      margin-top: 4px;
      font-weight: 400;
    }

    .case-side { display: flex; flex-direction: column; gap: 24px; }
    .case-sm-card {
      position: relative;
      flex: 1;
      overflow: hidden;
      background: var(--navy-dark);
    }
    .case-sm-card img {
      width: 100%; height: 100%;
      object-fit: cover;
      position: absolute;
      inset: 0;
    }
    .case-sm-card::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(10,20,40,0.9) 0%, rgba(10,20,40,0.7) 100%);
    }
    .case-sm-content {
      position: relative; z-index: 2;
      padding: 32px 28px;
      height: 100%;
      display: flex; flex-direction: column; justify-content: space-between;
      min-height: 200px;
    }
    .case-sm-content .case-main-cat { margin-bottom: 12px; font-size: 10px; padding: 3px 10px; }
    .case-sm-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px;
      font-weight: 500;
      color: #fff;
      line-height: 1.5;
      letter-spacing: .5px;
      margin-bottom: 16px;
    }
    .case-sm-metric {
      display: flex; align-items: baseline; gap: 8px;
    }
    .case-sm-metric strong {
      font-family: 'Noto Serif SC', serif;
      font-size: 28px;
      font-weight: 500;
      color: var(--red);
      letter-spacing: 1px;
    }
    .case-sm-metric span {
      font-size: 12px;
      color: rgba(255,255,255,0.55);
      letter-spacing: 1px;
    }

    /* Logo Wall - 品牌客户展示 */
    .logo-wall-wrapper {
      margin-top: 80px;
      padding-top: 60px;
      border-top: 1px solid rgba(255,255,255,0.1);
    }
    .logo-wall-head {
      text-align: center;
      margin-bottom: 40px;
    }
    .logo-wall-head-label {
      font-size: 12px;
      color: rgba(255,255,255,0.5);
      letter-spacing: 3px;
      text-transform: uppercase;
    }
    .logo-wall {
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      gap: 1px;
      background: rgba(255,255,255,0.08);
      border: 1px solid rgba(255,255,255,0.08);
    }
    .logo-item {
      background: var(--navy);
      aspect-ratio: 3/2;
      display: flex; align-items: center; justify-content: center;
      padding: 20px;
      transition: all .25s;
      cursor: pointer;
      position: relative;
    }
    .logo-item:hover {
      background: var(--navy-dark);
    }
    .logo-item:hover .logo-item-name { color: var(--red); }
    .logo-item-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px;
      font-weight: 500;
      color: rgba(255,255,255,0.7);
      letter-spacing: 1px;
      text-align: center;
      transition: color .2s;
    }

    /* ═══ TEAM ═══ */
    .team { background: var(--bg-soft); }
    .team-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 32px;
    }
    .team-card {
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      transition: all .3s;
    }
    .team-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 24px 60px rgba(20,33,61,0.12);
    }
    .team-photo {
      position: relative;
      aspect-ratio: 4/5;
      overflow: hidden;
      background: var(--navy);
    }
    .team-photo img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
      filter: saturate(0.9);
    }
    .team-card:hover .team-photo img { transform: scale(1.05); }
    .team-photo::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.85) 0%, rgba(20,33,61,0.15) 50%, transparent 100%);
    }
    .team-photo-info {
      position: absolute;
      bottom: 24px; left: 24px; right: 24px;
      z-index: 2;
      color: #fff;
    }
    .team-role-tag {
      display: inline-block;
      padding: 4px 12px;
      background: var(--red);
      color: #fff;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 12px;
      font-weight: 500;
    }
    .team-photo-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 24px;
      font-weight: 500;
      letter-spacing: 2px;
      line-height: 1.3;
    }
    .team-body {
      padding: 28px 28px 32px;
    }
    .team-body p {
      font-size: 14px;
      color: var(--muted);
      line-height: 1.9;
    }
    .team-social {
      margin-top: 20px;
      padding-top: 20px;
      border-top: 1px solid var(--divider);
      display: flex; gap: 12px;
    }
    .team-social a {
      width: 32px; height: 32px;
      background: var(--bg-soft);
      color: var(--navy);
      display: flex; align-items: center; justify-content: center;
      font-size: 13px;
      text-decoration: none;
      transition: all .2s;
    }
    .team-social a:hover { background: var(--red); color: #fff; }

    /* ═══ TESTIMONIALS ═══ */
    .testimonials { background: var(--bg); }
    .testi-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 32px;
    }
    .testi-card {
      background: #fff;
      border: 1px solid var(--border);
      padding: 40px 32px;
      position: relative;
      transition: all .25s;
    }
    .testi-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 20px 50px rgba(20,33,61,0.10);
      border-color: var(--red);
    }
    .testi-quote {
      font-family: 'Noto Serif SC', serif;
      font-size: 72px;
      line-height: 0.5;
      color: var(--red);
      opacity: 0.9;
      margin-bottom: 32px;
      display: block;
    }
    .testi-stars {
      color: var(--red);
      font-size: 14px;
      margin-bottom: 16px;
      letter-spacing: 4px;
    }
    .testi-text {
      font-size: 15px;
      color: var(--text);
      line-height: 2;
      margin-bottom: 32px;
      min-height: 168px;
    }
    .testi-author {
      display: flex; align-items: center; gap: 16px;
      padding-top: 24px;
      border-top: 1px solid var(--divider);
    }
    .testi-avatar {
      width: 52px; height: 52px;
      overflow: hidden;
      background: var(--navy);
      flex-shrink: 0;
      border: 2px solid var(--border);
    }
    .testi-avatar img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .testi-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px;
      font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
    }
    .testi-role {
      font-size: 12px;
      color: var(--muted);
      margin-top: 4px;
    }

    /* ═══ Responsive ═══ */
    @media (max-width: 960px) {
      .hero-inner { grid-template-columns: 1fr; gap: 60px; padding-top: 120px; padding-bottom: 100px; }
      .hero-visual-stack { max-width: 400px; margin: 0 auto; }
      .about-grid { grid-template-columns: 1fr; gap: 80px; }
      .services-grid { grid-template-columns: 1fr 1fr; }
      .cases-featured { grid-template-columns: 1fr; }
      .team-grid { grid-template-columns: 1fr 1fr; }
      .testi-grid { grid-template-columns: 1fr; }
      .logo-wall { grid-template-columns: repeat(3, 1fr); }
      .hero-stats-inner { flex-wrap: wrap; }
      .stat-item { flex: 0 0 50%; padding-left: 20px !important; border-bottom: 1px solid rgba(255,255,255,0.05); }
    }
    @media (max-width: 560px) {
      .services-grid { grid-template-columns: 1fr; }
      .team-grid { grid-template-columns: 1fr; }
      .logo-wall { grid-template-columns: repeat(2, 1fr); }
      .case-main-content { padding: 32px 24px 24px; }
      .case-main-title { font-size: 22px; }
    }

/* ═══ ABOUT ═══ */
    /* ─── ABOUT PAGE ─── */

    /* Page Header with 背景大图 */
    .page-header {
      padding: 160px 0 100px;
      position: relative;
      overflow: hidden;
      color: #fff;
    }
    .page-header-bg {
      position: absolute; inset: 0;
      z-index: 0;
    }
    .page-header-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
      filter: brightness(0.35) saturate(0.85);
    }
    .page-header-bg::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.9) 0%, rgba(20,33,61,0.65) 100%);
    }
    .page-header-inner { position: relative; z-index: 1; }

    /* Header 右侧图片替代原来的框 */
    .header-hero-visual {
      position: relative;
      aspect-ratio: 1/1;
      max-height: 380px;
      overflow: hidden;
    }
    .header-hero-visual img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .header-hero-visual::before {
      content: '';
      position: absolute; top: -1px; left: -1px;
      width: 40px; height: 40px;
      border-top: 2px solid var(--red);
      border-left: 2px solid var(--red);
      z-index: 2;
    }
    .header-hero-visual::after {
      content: '';
      position: absolute; bottom: -1px; right: -1px;
      width: 40px; height: 40px;
      border-bottom: 2px solid var(--red);
      border-right: 2px solid var(--red);
      z-index: 2;
    }
    .header-hero-badge {
      position: absolute;
      bottom: -20px; left: -20px;
      background: var(--red);
      color: #fff;
      padding: 20px 28px;
      z-index: 3;
    }
    .header-hero-badge-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1;
      margin-bottom: 6px;
    }
    .header-hero-badge-txt {
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    /* ═══ STORY 品牌故事 ═══ */
    .story { background: var(--bg); }
    .story-grid {
      display: grid; grid-template-columns: 1fr 1.15fr;
      gap: 80px; align-items: center;
    }

    /* 品牌故事图片组合 */
    .story-visual {
      position: relative;
      aspect-ratio: 4/5;
    }
    .story-img-1 {
      position: absolute;
      top: 0; left: 0;
      width: 75%;
      aspect-ratio: 3/4;
      overflow: hidden;
      z-index: 1;
    }
    .story-img-1 img { width: 100%; height: 100%; object-fit: cover; }
    .story-img-2 {
      position: absolute;
      bottom: 0; right: 0;
      width: 55%;
      aspect-ratio: 1/1;
      overflow: hidden;
      z-index: 2;
      border: 8px solid #fff;
      box-shadow: -12px -12px 30px rgba(20,33,61,0.15);
    }
    .story-img-2 img { width: 100%; height: 100%; object-fit: cover; }
    .story-quote-box {
      position: absolute;
      top: 30%; right: -30px;
      background: var(--red);
      color: #fff;
      padding: 24px 28px;
      z-index: 3;
      max-width: 200px;
      box-shadow: 0 12px 30px rgba(200,50,46,0.35);
    }
    .story-quote-mark {
      font-family: 'Noto Serif SC', serif;
      font-size: 48px;
      line-height: 0.7;
      opacity: 0.9;
      margin-bottom: 8px;
    }
    .story-quote-text {
      font-family: 'Noto Serif SC', serif;
      font-size: 14px;
      line-height: 1.7;
      letter-spacing: 1px;
    }

    .story-content h2 {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(28px, 3vw, 42px);
      font-weight: 500;
      color: var(--navy);
      line-height: 1.4;
      margin-bottom: 32px;
      letter-spacing: 1px;
    }
    .story-content h2 em { font-style: normal; color: var(--red); }
    .story-content p {
      color: var(--muted);
      font-size: 15px;
      line-height: 2;
      margin-bottom: 20px;
    }

    /* ═══ Numbers 数据条 ═══ */
    .numbers {
      background: var(--navy); color: #fff;
      padding: 80px 0;
      position: relative;
      overflow: hidden;
    }
    .numbers-bg {
      position: absolute; inset: 0;
      z-index: 0;
      opacity: 0.15;
    }
    .numbers-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .numbers .container { position: relative; z-index: 1; }
    .numbers-grid {
      display: grid; grid-template-columns: repeat(4, 1fr);
    }
    .number-item {
      text-align: center;
      padding: 20px 0;
      border-right: 1px solid rgba(255,255,255,0.1);
    }
    .number-item:last-child { border-right: none; }
    .number-val {
      font-family: 'Noto Serif SC', serif;
      font-size: 56px; font-weight: 500;
      color: #fff;
      letter-spacing: 1px;
      line-height: 1;
    }
    .number-val sup { font-size: 24px; color: var(--red); }
    .number-lbl {
      font-size: 13px;
      color: rgba(255,255,255,0.65);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-top: 16px;
    }

    /* ═══ MISSION Vision Values 图卡式 ═══ */
    .principles { background: var(--bg-soft); }
    .principles-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 32px;
    }
    .principle-card {
      background: #fff;
      overflow: hidden;
      border: 1px solid var(--border);
      transition: all .3s;
    }
    .principle-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 24px 60px rgba(20,33,61,0.12);
    }
    .principle-img {
      position: relative;
      aspect-ratio: 16/10;
      overflow: hidden;
      background: var(--navy);
    }
    .principle-img img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .principle-card:hover .principle-img img { transform: scale(1.08); }
    .principle-img::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.7) 0%, rgba(200,50,46,0.3) 100%);
    }
    .principle-badge {
      position: absolute;
      top: 20px; left: 20px;
      z-index: 2;
      background: rgba(255,255,255,0.95);
      color: var(--navy);
      padding: 8px 16px;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .principle-num {
      position: absolute;
      bottom: 24px; right: 24px;
      z-index: 2;
      font-family: 'Noto Serif SC', serif;
      font-size: 64px;
      font-weight: 500;
      color: #fff;
      opacity: 0.9;
      letter-spacing: 1px;
      line-height: 1;
    }
    .principle-body {
      padding: 40px 32px;
    }
    .principle-label {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 3px;
      text-transform: uppercase;
      margin-bottom: 12px;
    }
    .principle-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 24px; font-weight: 500;
      color: var(--navy);
      margin-bottom: 20px;
      letter-spacing: 1px;
      line-height: 1.4;
    }
    .principle-desc {
      font-size: 14px;
      color: var(--muted);
      line-height: 1.9;
    }

    /* ═══ TIMELINE 发展历程 ═══ */
    .timeline {
      background: var(--navy);
      color: #fff;
      position: relative;
      overflow: hidden;
    }
    .timeline-bg-img {
      position: absolute; inset: 0;
      z-index: 0;
      opacity: 0.1;
    }
    .timeline-bg-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .timeline .container { position: relative; z-index: 1; }
    .timeline .section-title { color: #fff; }
    .timeline .section-sub { color: rgba(255,255,255,0.55); }

    /* 时间线现在是水平的，带图片 */
    .timeline-horizontal {
      display: grid; grid-template-columns: repeat(5, 1fr);
      gap: 20px;
      position: relative;
    }
    .timeline-horizontal::before {
      content: '';
      position: absolute;
      top: 105px; left: 10%; right: 10%;
      height: 1px;
      background: rgba(255,255,255,0.15);
      z-index: 0;
    }
    .timeline-node {
      position: relative;
      z-index: 1;
    }
    .timeline-photo {
      aspect-ratio: 1/1;
      overflow: hidden;
      margin-bottom: 32px;
      background: var(--navy-dark);
      position: relative;
      border: 3px solid var(--navy);
      transition: all .3s;
    }
    .timeline-node:hover .timeline-photo {
      border-color: var(--red);
      transform: translateY(-6px);
    }
    .timeline-photo img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .timeline-node:hover .timeline-photo img { transform: scale(1.1); }
    .timeline-photo::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(10,20,40,0.6) 0%, transparent 60%);
    }
    .timeline-photo-year {
      position: absolute;
      bottom: 12px; left: 12px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 6px 12px;
      font-family: 'Noto Serif SC', serif;
      font-size: 20px;
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1;
    }
    .timeline-dot {
      width: 14px; height: 14px;
      background: var(--red);
      border: 3px solid var(--navy);
      margin: -7px auto 20px;
      border-radius: 50%;
      position: relative;
      z-index: 2;
    }
    .timeline-info h3 {
      font-family: 'Noto Serif SC', serif;
      font-size: 17px;
      font-weight: 500;
      color: #fff;
      letter-spacing: 1px;
      margin-bottom: 12px;
      text-align: center;
    }
    .timeline-info p {
      font-size: 13px;
      color: rgba(255,255,255,0.65);
      line-height: 1.8;
      text-align: center;
    }
    .timeline-info-tag {
      display: block;
      text-align: center;
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 8px;
    }

    /* ═══ FOUNDER 创始人深度介绍 ═══ */
    .founder { background: var(--bg); }
    .founder-grid {
      display: grid; grid-template-columns: 1fr 1.1fr;
      gap: 80px; align-items: start;
    }
    .founder-photo-wrap {
      position: relative;
    }
    .founder-photo-main {
      aspect-ratio: 3/4;
      overflow: hidden;
      position: relative;
      background: var(--navy);
    }
    .founder-photo-main img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .founder-photo-secondary {
      position: absolute;
      bottom: -40px; right: -40px;
      width: 55%;
      aspect-ratio: 3/4;
      overflow: hidden;
      border: 8px solid var(--bg);
      z-index: 2;
      box-shadow: -12px -12px 40px rgba(20,33,61,0.15);
    }
    .founder-photo-secondary img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .founder-quote-tag {
      position: absolute;
      top: 30px; left: -30px;
      z-index: 3;
      background: var(--red);
      color: #fff;
      padding: 16px 22px;
      max-width: 220px;
      box-shadow: 0 12px 30px rgba(200,50,46,0.3);
    }
    .founder-quote-mark {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      line-height: 0.7;
      opacity: 0.85;
      margin-bottom: 6px;
    }
    .founder-quote-text {
      font-family: 'Noto Serif SC', serif;
      font-size: 13px;
      line-height: 1.7;
      letter-spacing: 1px;
    }

    .founder-info { padding-top: 20px; }
    .founder-info .section-eyebrow { margin-bottom: 24px; }
    .founder-name {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(36px, 4vw, 52px);
      font-weight: 500;
      color: var(--navy);
      letter-spacing: 2px;
      margin-bottom: 8px;
    }
    .founder-title {
      font-size: 14px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 32px;
      padding-bottom: 32px;
      border-bottom: 1px solid var(--border);
    }
    .founder-bio {
      font-size: 15px;
      color: var(--muted);
      line-height: 2;
      margin-bottom: 20px;
    }
    .founder-highlights {
      margin-top: 40px;
      display: grid; grid-template-columns: repeat(4, 1fr);
      gap: 16px;
    }
    .highlight-item {
      padding: 24px 20px;
      background: var(--bg-soft);
      border-left: 3px solid var(--red);
      text-align: center;
    }
    .highlight-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 24px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 4px;
    }
    .highlight-label {
      font-size: 11px;
      color: var(--muted);
      letter-spacing: 1.5px;
    }

    /* ═══ CULTURE 企业文化 ═══ */
    .culture { background: var(--bg-soft); }
    .culture-intro {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 60px; align-items: center;
      margin-bottom: 80px;
    }
    .culture-intro-img {
      aspect-ratio: 16/10;
      overflow: hidden;
      position: relative;
    }
    .culture-intro-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .culture-intro-tag {
      position: absolute;
      top: 20px; left: 20px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 8px 18px;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .culture-intro-text h2 {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(28px, 3vw, 40px);
      font-weight: 500;
      color: var(--navy);
      line-height: 1.4;
      margin-bottom: 24px;
      letter-spacing: 1px;
    }
    .culture-intro-text h2 em { color: var(--red); font-style: normal; }
    .culture-intro-text p {
      font-size: 15px;
      color: var(--muted);
      line-height: 2;
    }
    .culture-grid {
      display: grid; grid-template-columns: repeat(4, 1fr);
      gap: 24px;
    }
    .culture-card {
      background: #fff;
      padding: 40px 32px;
      border: 1px solid var(--border);
      position: relative;
      transition: all .25s;
    }
    .culture-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 20px 50px rgba(20,33,61,0.10);
    }
    .culture-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 40px; font-weight: 500;
      color: var(--red);
      opacity: 0.15;
      position: absolute;
      top: 24px; right: 32px;
      letter-spacing: 1px;
    }
    .culture-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px; font-weight: 500;
      color: var(--navy);
      margin-bottom: 12px;
      letter-spacing: 4px;
      padding-top: 8px;
    }
    .culture-title-en {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 3px;
      text-transform: uppercase;
      margin-bottom: 16px;
    }
    .culture-desc {
      font-size: 14px;
      color: var(--muted);
      line-height: 1.9;
    }

    /* ═══ OFFICE 办公环境 ═══ */
    .office { background: var(--bg); }
    .office-gallery {
      display: grid;
      grid-template-columns: 2fr 1fr 1fr;
      grid-template-rows: 1fr 1fr;
      gap: 16px;
      height: 600px;
    }
    .office-img {
      overflow: hidden;
      position: relative;
      background: var(--navy);
    }
    .office-img img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .office-img:hover img { transform: scale(1.05); }
    .office-img::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.4) 0%, transparent 50%);
      opacity: 0;
      transition: opacity .3s;
    }
    .office-img:hover::after { opacity: 1; }
    .office-img-1 { grid-row: 1 / 3; }
    .office-img-caption {
      position: absolute;
      bottom: 20px; left: 20px;
      z-index: 2;
      color: #fff;
      opacity: 0;
      transition: opacity .3s;
    }
    .office-img:hover .office-img-caption { opacity: 1; }
    .office-img-caption-label {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 4px;
    }
    .office-img-caption-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 16px;
      letter-spacing: 1px;
    }

    /* ═══ CREDENTIALS 荣誉资质 ═══ */
    .credentials { background: var(--bg-soft); }
    .credentials-showcase {
      display: grid; grid-template-columns: repeat(4, 1fr);
      gap: 24px;
    }
    .credential-frame {
      background: #fff;
      border: 1px solid var(--border);
      padding: 20px;
      transition: all .3s;
    }
    .credential-frame:hover {
      transform: translateY(-4px);
      box-shadow: 0 20px 50px rgba(20,33,61,0.10);
      border-color: var(--red);
    }
    .credential-cert {
      aspect-ratio: 3/4;
      overflow: hidden;
      background: var(--navy);
      position: relative;
      margin-bottom: 16px;
    }
    .credential-cert img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .credential-frame:hover .credential-cert img { transform: scale(1.05); }
    .credential-cert-badge {
      position: absolute;
      top: 12px; right: 12px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      width: 32px; height: 32px;
      display: flex; align-items: center; justify-content: center;
      font-size: 14px;
    }
    .credential-info {
      padding: 8px;
      text-align: center;
    }
    .credential-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 6px;
    }
    .credential-year {
      font-size: 11px;
      color: var(--muted);
      letter-spacing: 2px;
    }

    /* Responsive */
    @media (max-width: 960px) {
      .story-grid { grid-template-columns: 1fr; gap: 80px; }
      .principles-grid { grid-template-columns: 1fr; }
      .culture-intro { grid-template-columns: 1fr; gap: 40px; }
      .culture-grid { grid-template-columns: 1fr 1fr; }
      .credentials-showcase { grid-template-columns: 1fr 1fr; }
      .numbers-grid { grid-template-columns: 1fr 1fr; }
      .number-item { padding: 32px 0; border-bottom: 1px solid rgba(255,255,255,0.1); }
      .founder-grid { grid-template-columns: 1fr; gap: 100px; }
      .founder-highlights { grid-template-columns: 1fr 1fr; }
      .timeline-horizontal { grid-template-columns: 1fr; }
      .timeline-horizontal::before { display: none; }
      .office-gallery { grid-template-columns: 1fr; grid-template-rows: repeat(5, 200px); height: auto; }
      .office-img-1 { grid-row: auto; }
    }
    @media (max-width: 560px) {
      .culture-grid { grid-template-columns: 1fr; }
      .credentials-showcase { grid-template-columns: 1fr; }
      .founder-highlights { grid-template-columns: 1fr; }
    }

/* ═══ PRODUCTS ═══ */
    /* ─── CONSULTING PRODUCT PAGE ─── */

    /* Page Header with 背景大图 */
    .page-header {
      padding: 160px 0 100px;
      position: relative;
      overflow: hidden;
      color: #fff;
    }
    .page-header-bg {
      position: absolute; inset: 0;
      z-index: 0;
    }
    .page-header-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
      filter: brightness(0.35) saturate(0.85);
    }
    .page-header-bg::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.9) 0%, rgba(20,33,61,0.65) 100%);
    }
    .page-header-inner-c {
      position: relative; z-index: 1;
      display: grid; grid-template-columns: 1.4fr 1fr;
      gap: 60px; align-items: center;
    }
    .header-visual-img {
      position: relative;
      aspect-ratio: 1/1;
      max-height: 380px;
      overflow: hidden;
    }
    .header-visual-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .header-visual-img::before {
      content: '';
      position: absolute; top: -1px; left: -1px;
      width: 40px; height: 40px;
      border-top: 2px solid var(--red);
      border-left: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-img::after {
      content: '';
      position: absolute; bottom: -1px; right: -1px;
      width: 40px; height: 40px;
      border-bottom: 2px solid var(--red);
      border-right: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-badge {
      position: absolute;
      bottom: -20px; left: -20px;
      background: var(--red);
      color: #fff;
      padding: 20px 28px;
      z-index: 3;
    }
    .header-visual-badge-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 24px;
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1;
      margin-bottom: 6px;
    }
    .header-visual-badge-txt {
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    /* Inline CTA */
    .inline-cta {
      margin-top: 60px;
      padding: 40px 48px;
      background: var(--bg-soft);
      border-left: 3px solid var(--red);
      display: flex; justify-content: space-between; align-items: center;
      gap: 40px; flex-wrap: wrap;
    }
    .inline-cta-text {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px; color: var(--navy);
      font-weight: 500;
      letter-spacing: 1px;
    }
    .inline-cta-text small {
      display: block;
      font-family: 'Inter', 'Noto Sans SC', sans-serif;
      font-size: 13px;
      color: var(--muted);
      margin-top: 6px;
      letter-spacing: 0.5px;
      font-weight: 400;
    }
    .inline-cta.dark {
      background: var(--navy);
      border-color: var(--red);
    }
    .inline-cta.dark .inline-cta-text { color: #fff; }
    .inline-cta.dark .inline-cta-text small { color: rgba(255,255,255,0.6); }

    /* ═══ Section 1: 行业优势 with imagery ═══ */
    .advantages { background: var(--bg); }
    .adv-grid {
      display: grid; grid-template-columns: repeat(4, 1fr);
      gap: 24px;
    }
    .adv-card {
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      transition: all .3s;
    }
    .adv-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 24px 60px rgba(20,33,61,0.12);
    }
    .adv-cover {
      position: relative;
      aspect-ratio: 4/3;
      overflow: hidden;
      background: var(--navy);
    }
    .adv-cover img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .adv-card:hover .adv-cover img { transform: scale(1.08); }
    .adv-cover::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.7) 0%, rgba(200,50,46,0.25) 100%);
    }
    .adv-num {
      position: absolute;
      top: 20px; left: 20px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      width: 44px; height: 44px;
      display: flex; align-items: center; justify-content: center;
      font-family: 'Noto Serif SC', serif;
      font-size: 18px;
      font-weight: 500;
      letter-spacing: 1px;
    }
    .adv-body {
      padding: 32px 28px;
    }
    .adv-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px; font-weight: 500;
      color: var(--navy);
      margin-bottom: 16px;
      letter-spacing: 1px;
      line-height: 1.5;
      min-height: 54px;
    }
    .adv-desc {
      font-size: 13px;
      color: var(--muted);
      line-height: 1.9;
    }

    /* ═══ Section 2: 服务体系 with 大图 ═══ */
    .system { background: var(--bg-soft); }
    .system-showcase {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 60px;
      align-items: center;
      margin-bottom: 100px;
    }
    .system-showcase-img {
      aspect-ratio: 4/3;
      overflow: hidden;
      position: relative;
    }
    .system-showcase-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .system-showcase-tag {
      position: absolute;
      top: 20px; left: 20px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 8px 18px;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .system-showcase-text h3 {
      font-family: 'Noto Serif SC', serif;
      font-size: 30px;
      font-weight: 500;
      color: var(--navy);
      line-height: 1.4;
      letter-spacing: 1px;
      margin-bottom: 20px;
    }
    .system-showcase-text h3 em { color: var(--red); font-style: normal; }
    .system-showcase-text p {
      font-size: 15px;
      color: var(--muted);
      line-height: 2;
      margin-bottom: 24px;
    }

    .system-diagram {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }
    .system-block {
      overflow: hidden;
      background: #fff;
      border: 1px solid var(--border);
      transition: all .3s;
    }
    .system-block:hover {
      transform: translateY(-6px);
      box-shadow: 0 24px 60px rgba(20,33,61,0.12);
    }
    .system-block-img {
      position: relative;
      aspect-ratio: 16/9;
      overflow: hidden;
      background: var(--navy);
    }
    .system-block-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .system-block-img::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.85) 0%, rgba(20,33,61,0.3) 60%, transparent 100%);
    }
    .system-block.core .system-block-img::after {
      background: linear-gradient(to top, rgba(200,50,46,0.85) 0%, rgba(200,50,46,0.3) 60%, transparent 100%);
    }
    .system-block-cover-tag {
      position: absolute;
      top: 20px; left: 20px;
      z-index: 2;
      background: rgba(255,255,255,0.95);
      color: var(--navy);
      padding: 6px 14px;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 600;
    }
    .system-block-cover-title {
      position: absolute;
      bottom: 20px; left: 20px; right: 20px;
      z-index: 2;
      color: #fff;
    }
    .system-block-num {
      font-size: 11px;
      letter-spacing: 2px;
      margin-bottom: 8px;
      opacity: 0.75;
    }
    .system-block-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 22px; font-weight: 500;
      letter-spacing: 1px;
      line-height: 1.3;
    }
    .system-block-body {
      padding: 32px 28px;
    }
    .system-block-list {
      list-style: none;
      display: flex; flex-direction: column;
      gap: 14px;
    }
    .system-block-list li {
      font-size: 14px;
      color: var(--text);
      line-height: 1.6;
      padding-left: 24px;
      position: relative;
    }
    .system-block-list li::before {
      content: '';
      position: absolute; left: 0; top: 10px;
      width: 12px; height: 1px;
      background: var(--red);
    }

    /* ═══ Section 3: 服务流程 with 大图 ═══ */
    .process {
      background: var(--navy);
      color: #fff;
      position: relative;
      overflow: hidden;
    }
    .process-bg {
      position: absolute; inset: 0;
      z-index: 0;
      opacity: 0.12;
    }
    .process-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .process .container { position: relative; z-index: 1; }
    .process .section-title { color: #fff; }
    .process .section-sub { color: rgba(255,255,255,0.55); }

    .process-flow {
      display: grid; grid-template-columns: repeat(5, 1fr);
      gap: 20px;
      position: relative;
    }
    .process-flow::before {
      content: '';
      position: absolute;
      top: 30%; left: 8%; right: 8%;
      height: 1px;
      background: rgba(255,255,255,0.15);
      z-index: 0;
    }
    .process-step {
      position: relative;
      z-index: 1;
    }
    .process-step-img {
      aspect-ratio: 1/1;
      overflow: hidden;
      background: var(--navy-dark);
      position: relative;
      border: 3px solid rgba(255,255,255,0.1);
      margin-bottom: 24px;
      transition: all .3s;
    }
    .process-step:hover .process-step-img {
      border-color: var(--red);
      transform: translateY(-6px);
    }
    .process-step-img img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
      filter: brightness(0.7);
    }
    .process-step:hover .process-step-img img {
      transform: scale(1.1);
      filter: brightness(0.9);
    }
    .process-step-img::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.6) 0%, rgba(20,33,61,0.3) 100%);
    }
    .process-step-num {
      position: absolute;
      top: 50%; left: 50%;
      transform: translate(-50%, -50%);
      z-index: 2;
      color: #fff;
      font-family: 'Noto Serif SC', serif;
      font-size: 48px;
      font-weight: 500;
      letter-spacing: 2px;
      line-height: 1;
    }
    .process-step-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px; font-weight: 500;
      color: #fff;
      margin-bottom: 12px;
      letter-spacing: 1px;
      text-align: center;
    }
    .process-step-desc {
      font-size: 13px;
      color: rgba(255,255,255,0.6);
      line-height: 1.8;
      text-align: center;
      max-width: 200px;
      margin: 0 auto;
    }

    /* ═══ Section 4: 交付内容 - 图卡组合 ═══ */
    .deliverables { background: var(--bg); }
    .deliv-grid {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 32px;
    }
    .deliv-card {
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      transition: all .3s;
    }
    .deliv-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 24px 60px rgba(20,33,61,0.12);
    }
    .deliv-cover {
      position: relative;
      aspect-ratio: 21/9;
      overflow: hidden;
      background: var(--navy);
    }
    .deliv-cover img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .deliv-card:hover .deliv-cover img { transform: scale(1.05); }
    .deliv-cover::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to right, rgba(20,33,61,0.85) 0%, rgba(20,33,61,0.4) 80%);
    }
    .deliv-cover-inner {
      position: absolute;
      inset: 0;
      z-index: 2;
      display: flex; align-items: center;
      padding: 32px 40px;
      color: #fff;
    }
    .deliv-cover-icon {
      width: 56px; height: 56px;
      background: var(--red);
      color: #fff;
      display: flex; align-items: center; justify-content: center;
      flex-shrink: 0;
      margin-right: 20px;
    }
    .deliv-cover-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 22px; font-weight: 500;
      letter-spacing: 1px;
      line-height: 1.4;
      margin-bottom: 4px;
    }
    .deliv-cover-meta {
      font-size: 12px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
    }
    .deliv-body {
      padding: 36px 40px;
    }
    .deliv-list {
      list-style: none;
      display: flex; flex-direction: column;
      gap: 14px;
    }
    .deliv-list li {
      font-size: 14px;
      color: var(--text);
      line-height: 1.7;
      padding-left: 26px;
      position: relative;
    }
    .deliv-list li::before {
      content: '✓';
      position: absolute; left: 0; top: 0;
      color: var(--red);
      font-weight: 600;
      font-size: 15px;
    }

    /* ═══ Section 5: 服务客户 with 图片 ═══ */
    .clients { background: var(--bg-soft); }
    .clients-industries {
      display: grid; grid-template-columns: repeat(6, 1fr);
      gap: 16px;
      margin-bottom: 80px;
    }
    .industry-card {
      background: #fff;
      overflow: hidden;
      border: 1px solid var(--border);
      transition: all .25s;
    }
    .industry-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 12px 30px rgba(20,33,61,0.1);
    }
    .industry-img {
      aspect-ratio: 4/3;
      overflow: hidden;
      background: var(--navy);
      position: relative;
    }
    .industry-img img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
      filter: grayscale(0.3);
    }
    .industry-card:hover .industry-img img {
      transform: scale(1.08);
      filter: grayscale(0);
    }
    .industry-img::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.5) 0%, transparent 60%);
    }
    .industry-info {
      padding: 16px 12px;
      text-align: center;
    }
    .industry-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 13px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 2px;
    }
    .industry-count {
      font-size: 10px;
      color: var(--red);
      letter-spacing: 1.5px;
      font-weight: 500;
    }

    /* Client testimonials 带客户照片 */
    .clients-testi-grid {
      display: grid; grid-template-columns: repeat(2, 1fr);
      gap: 32px;
    }
    .client-testi {
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      display: grid;
      grid-template-columns: 1fr 1.5fr;
    }
    .client-testi-img {
      aspect-ratio: 3/4;
      overflow: hidden;
      background: var(--navy);
      position: relative;
    }
    .client-testi-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .client-testi-img::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.85) 0%, transparent 40%);
    }
    .client-testi-name-tag {
      position: absolute;
      bottom: 20px; left: 20px; right: 20px;
      z-index: 2;
      color: #fff;
    }
    .client-testi-name-tag-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 16px; font-weight: 500;
      letter-spacing: 1px;
      margin-bottom: 4px;
    }
    .client-testi-name-tag-role {
      font-size: 12px;
      color: rgba(255,255,255,0.75);
      letter-spacing: .5px;
    }
    .client-testi-content {
      padding: 32px 32px;
      display: flex; flex-direction: column; justify-content: center;
      position: relative;
    }
    .client-testi-content::before {
      content: '"';
      position: absolute;
      top: 16px; right: 24px;
      font-family: 'Noto Serif SC', serif;
      font-size: 64px;
      line-height: 0.5;
      color: var(--red);
      opacity: 0.4;
    }
    .client-testi-text {
      font-size: 14px;
      color: var(--text);
      line-height: 2;
      margin-bottom: 24px;
    }
    .client-testi-result {
      padding-top: 20px;
      border-top: 1px solid var(--divider);
      font-family: 'Noto Serif SC', serif;
      font-size: 24px; font-weight: 500;
      color: var(--red);
      letter-spacing: 1px;
    }
    .client-testi-result small {
      display: inline-block;
      margin-left: 12px;
      font-family: 'Inter', sans-serif;
      font-size: 12px;
      color: var(--muted);
      letter-spacing: 1.5px;
      font-weight: 400;
    }

    /* ═══ FAQ ═══ */
    .faq { background: var(--bg); }
    .faq-list {
      max-width: 900px; margin: 0 auto;
    }
    .faq-item {
      border-bottom: 1px solid var(--border);
      padding: 32px 0;
      cursor: pointer;
    }
    .faq-item.open .faq-answer { display: block; }
    .faq-item.open .faq-question::after { content: '−'; }
    .faq-question {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      display: flex; align-items: center; justify-content: space-between;
      gap: 24px;
    }
    .faq-question::after {
      content: '+';
      font-size: 24px;
      color: var(--red);
      font-weight: 400;
      flex-shrink: 0;
    }
    .faq-answer {
      display: none;
      margin-top: 20px;
      font-size: 14px;
      color: var(--muted);
      line-height: 2;
      padding-right: 48px;
    }

    /* Responsive */
    @media (max-width: 960px) {
      .page-header-inner-c { grid-template-columns: 1fr; gap: 40px; }
      .adv-grid { grid-template-columns: 1fr 1fr; }
      .system-showcase { grid-template-columns: 1fr; gap: 40px; }
      .system-diagram { grid-template-columns: 1fr; }
      .process-flow { grid-template-columns: 1fr; gap: 40px; }
      .process-flow::before { display: none; }
      .deliv-grid { grid-template-columns: 1fr; }
      .clients-industries { grid-template-columns: repeat(3, 1fr); }
      .clients-testi-grid { grid-template-columns: 1fr; }
      .client-testi { grid-template-columns: 1fr; }
      .client-testi-img { aspect-ratio: 16/10; }
      .inline-cta { flex-direction: column; align-items: flex-start; }
    }
    @media (max-width: 560px) {
      .adv-grid { grid-template-columns: 1fr; }
      .clients-industries { grid-template-columns: 1fr 1fr; }
    }

/* ═══ TEAM ═══ */
    /* ─── TEAM PAGE ─── */

    /* Page Header with 背景大图 */
    .page-header {
      padding: 160px 0 100px;
      position: relative;
      overflow: hidden;
      color: #fff;
    }
    .page-header-bg {
      position: absolute; inset: 0;
      z-index: 0;
    }
    .page-header-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
      filter: brightness(0.35) saturate(0.85);
    }
    .page-header-bg::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.9) 0%, rgba(20,33,61,0.65) 100%);
    }
    .page-header-inner-c {
      position: relative; z-index: 1;
      display: grid; grid-template-columns: 1.4fr 1fr;
      gap: 60px; align-items: center;
    }
    .header-visual-img {
      position: relative;
      aspect-ratio: 1/1;
      max-height: 380px;
      overflow: hidden;
    }
    .header-visual-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .header-visual-img::before {
      content: '';
      position: absolute; top: -1px; left: -1px;
      width: 40px; height: 40px;
      border-top: 2px solid var(--red);
      border-left: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-img::after {
      content: '';
      position: absolute; bottom: -1px; right: -1px;
      width: 40px; height: 40px;
      border-bottom: 2px solid var(--red);
      border-right: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-badge {
      position: absolute;
      bottom: -20px; left: -20px;
      background: var(--red);
      color: #fff;
      padding: 20px 28px;
      z-index: 3;
    }
    .header-visual-badge-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1;
      margin-bottom: 6px;
    }
    .header-visual-badge-txt {
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    /* ═══ 团队全貌大图 ═══ */
    .team-hero { background: var(--bg); padding: 100px 0; }
    .team-hero-photo {
      position: relative;
      aspect-ratio: 21/9;
      overflow: hidden;
      background: var(--navy);
      margin-bottom: 60px;
    }
    .team-hero-photo img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform 1s;
    }
    .team-hero-photo:hover img { transform: scale(1.05); }
    .team-hero-photo::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.3) 0%, transparent 50%, rgba(20,33,61,0.6) 100%);
    }
    .team-hero-tag {
      position: absolute;
      top: 24px; left: 24px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 8px 18px;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .team-hero-caption {
      position: absolute;
      bottom: 40px; left: 40px; right: 40px;
      z-index: 2;
      color: #fff;
      display: flex; justify-content: space-between; align-items: flex-end;
      flex-wrap: wrap; gap: 20px;
    }
    .team-hero-caption-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 28px;
      font-weight: 500;
      letter-spacing: 2px;
    }
    .team-hero-caption-stats {
      display: flex; gap: 40px;
    }
    .team-hero-stat {
      text-align: center;
    }
    .team-hero-stat-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      color: var(--red);
      letter-spacing: 1px;
      line-height: 1;
    }
    .team-hero-stat-lbl {
      font-size: 11px;
      color: rgba(255,255,255,0.7);
      letter-spacing: 1.5px;
      margin-top: 6px;
    }

    /* 团队介绍文字块 */
    .team-intro {
      display: grid; grid-template-columns: 1fr 1.2fr;
      gap: 60px; align-items: center;
    }
    .team-intro-text .section-eyebrow { margin-bottom: 20px; }
    .team-intro-text h2 {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(28px, 3vw, 40px);
      font-weight: 500;
      color: var(--navy);
      line-height: 1.4;
      letter-spacing: 1px;
      margin-bottom: 24px;
    }
    .team-intro-text h2 em { color: var(--red); font-style: normal; }
    .team-intro-text p {
      font-size: 15px;
      color: var(--muted);
      line-height: 2;
      margin-bottom: 16px;
    }
    .team-intro-quote {
      margin-top: 32px;
      padding: 24px 28px;
      background: var(--bg-soft);
      border-left: 3px solid var(--red);
      font-family: 'Noto Serif SC', serif;
      font-size: 15px;
      color: var(--navy);
      line-height: 1.9;
      letter-spacing: 1px;
    }

    /* ═══ FOUNDER 特写 ═══ */
    .founder-feature {
      background: var(--navy);
      color: #fff;
      position: relative;
      overflow: hidden;
    }
    .founder-feature-bg {
      position: absolute; inset: 0;
      z-index: 0;
      opacity: 0.1;
    }
    .founder-feature-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .founder-feature .container { position: relative; z-index: 1; }
    .founder-feature-grid {
      display: grid; grid-template-columns: 1fr 1.2fr;
      gap: 80px; align-items: center;
    }
    .founder-portrait {
      position: relative;
      aspect-ratio: 3/4;
    }
    .founder-portrait-main {
      position: absolute; inset: 0;
      overflow: hidden;
    }
    .founder-portrait-main img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .founder-portrait-frame {
      position: absolute;
      top: -20px; left: -20px; right: 20px; bottom: 20px;
      border: 2px solid var(--red);
      z-index: -1;
    }
    .founder-portrait-badge {
      position: absolute;
      bottom: -24px; right: -24px;
      background: var(--red);
      color: #fff;
      padding: 20px 28px;
      z-index: 2;
      box-shadow: 0 12px 40px rgba(200,50,46,0.4);
    }
    .founder-portrait-badge-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      line-height: 1;
      margin-bottom: 6px;
      letter-spacing: 1px;
    }
    .founder-portrait-badge-txt {
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    .founder-info { padding: 20px 0; }
    .founder-info .section-eyebrow { color: var(--red); margin-bottom: 24px; }
    .founder-info-name {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(36px, 4vw, 52px);
      font-weight: 500;
      color: #fff;
      letter-spacing: 2px;
      margin-bottom: 12px;
    }
    .founder-info-title {
      font-size: 14px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 32px;
      padding-bottom: 32px;
      border-bottom: 1px solid rgba(255,255,255,0.15);
    }
    .founder-info-bio {
      font-size: 15px;
      color: rgba(255,255,255,0.75);
      line-height: 2;
      margin-bottom: 20px;
    }
    .founder-quote-block {
      margin-top: 40px;
      padding: 32px 40px;
      background: rgba(255,255,255,0.05);
      border-left: 3px solid var(--red);
      position: relative;
    }
    .founder-quote-block::before {
      content: '"';
      position: absolute;
      top: 16px; right: 24px;
      font-family: 'Noto Serif SC', serif;
      font-size: 80px;
      line-height: 0.5;
      color: var(--red);
      opacity: 0.4;
    }
    .founder-quote-block p {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px;
      color: #fff;
      line-height: 1.9;
      letter-spacing: 1px;
    }
    .founder-highlights {
      margin-top: 40px;
      display: grid; grid-template-columns: repeat(4, 1fr);
      gap: 16px;
    }
    .founder-hl {
      padding: 20px 16px;
      background: rgba(255,255,255,0.05);
      border-left: 3px solid var(--red);
      text-align: center;
    }
    .founder-hl-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 24px; font-weight: 500;
      color: var(--red);
      letter-spacing: 1px;
      margin-bottom: 4px;
    }
    .founder-hl-lbl {
      font-size: 11px;
      color: rgba(255,255,255,0.6);
      letter-spacing: 1.5px;
    }

    /* ═══ CONSULTANTS 顾问团队卡片 ═══ */
    .consultants { background: var(--bg-soft); }
    .consultants-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 32px;
    }
    .consultant-card {
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      transition: all .3s;
    }
    .consultant-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 30px 70px rgba(20,33,61,0.15);
    }
    .consultant-photo {
      position: relative;
      aspect-ratio: 4/5;
      overflow: hidden;
      background: var(--navy);
    }
    .consultant-photo img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
      filter: saturate(0.95);
    }
    .consultant-card:hover .consultant-photo img { transform: scale(1.05); }
    .consultant-photo::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.85) 0%, rgba(20,33,61,0.15) 45%, transparent 100%);
    }
    .consultant-photo-info {
      position: absolute;
      bottom: 24px; left: 24px; right: 24px;
      z-index: 2;
      color: #fff;
    }
    .consultant-role {
      display: inline-block;
      padding: 4px 12px;
      background: var(--red);
      color: #fff;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 12px;
      font-weight: 500;
    }
    .consultant-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 24px;
      font-weight: 500;
      letter-spacing: 2px;
      line-height: 1.3;
      margin-bottom: 4px;
    }
    .consultant-en-name {
      font-size: 12px;
      color: rgba(255,255,255,0.7);
      letter-spacing: 2px;
      font-family: 'Inter', sans-serif;
    }
    .consultant-body {
      padding: 32px 28px;
    }
    .consultant-title {
      font-size: 14px;
      color: var(--red);
      letter-spacing: 1.5px;
      margin-bottom: 16px;
      padding-bottom: 16px;
      border-bottom: 1px solid var(--divider);
      font-weight: 500;
    }
    .consultant-desc {
      font-size: 14px;
      color: var(--muted);
      line-height: 1.9;
      margin-bottom: 20px;
      min-height: 108px;
    }
    .consultant-tags {
      display: flex; flex-wrap: wrap; gap: 6px;
      margin-bottom: 20px;
    }
    .consultant-tag {
      padding: 4px 10px;
      background: var(--bg-soft);
      color: var(--navy);
      font-size: 11px;
      letter-spacing: .5px;
      border: 1px solid var(--divider);
    }
    .consultant-social {
      display: flex; gap: 8px;
      padding-top: 20px;
      border-top: 1px solid var(--divider);
    }
    .consultant-social a {
      width: 32px; height: 32px;
      background: var(--bg-soft);
      color: var(--navy);
      display: flex; align-items: center; justify-content: center;
      font-size: 12px;
      text-decoration: none;
      transition: all .2s;
      font-weight: 500;
    }
    .consultant-social a:hover { background: var(--red); color: #fff; }

    /* ═══ CAPABILITIES 专业能力矩阵 ═══ */
    .capabilities { background: var(--bg); }
    .cap-grid {
      display: grid; grid-template-columns: repeat(4, 1fr);
      gap: 0;
      border-top: 1px solid var(--divider);
      border-left: 1px solid var(--divider);
    }
    .cap-cell {
      padding: 48px 32px;
      border-right: 1px solid var(--divider);
      border-bottom: 1px solid var(--divider);
      background: #fff;
      transition: all .3s;
      position: relative;
    }
    .cap-cell::before {
      content: '';
      position: absolute; top: 0; left: 0;
      width: 100%; height: 3px;
      background: var(--red);
      transform: scaleX(0); transform-origin: left;
      transition: transform .3s;
    }
    .cap-cell:hover::before { transform: scaleX(1); }
    .cap-cell:hover { background: var(--bg-soft); }
    .cap-icon {
      width: 56px; height: 56px;
      background: var(--bg-soft);
      color: var(--red);
      border: 1px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      margin-bottom: 24px;
      font-size: 22px;
    }
    .cap-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px;
      font-weight: 500;
      color: var(--navy);
      margin-bottom: 12px;
      letter-spacing: 1px;
    }
    .cap-desc {
      font-size: 13px;
      color: var(--muted);
      line-height: 1.9;
    }
    .cap-level {
      margin-top: 20px;
      display: flex; gap: 3px;
    }
    .cap-dot {
      width: 8px; height: 8px;
      background: var(--divider);
    }
    .cap-dot.active { background: var(--red); }

    /* ═══ CULTURE (团队日常) ═══ */
    .team-culture {
      background: var(--navy);
      color: #fff;
      position: relative;
      overflow: hidden;
    }
    .team-culture .section-title { color: #fff; }
    .team-culture .section-sub { color: rgba(255,255,255,0.55); }
    .culture-collage {
      display: grid;
      grid-template-columns: 2fr 1fr 1fr;
      grid-template-rows: 240px 240px;
      gap: 12px;
    }
    .collage-img {
      overflow: hidden;
      position: relative;
      background: var(--navy-dark);
    }
    .collage-img img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .collage-img:hover img { transform: scale(1.08); }
    .collage-img::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.6) 0%, transparent 60%);
    }
    .collage-img-1 { grid-row: 1 / 3; }
    .collage-cap {
      position: absolute;
      bottom: 20px; left: 20px;
      z-index: 2;
      color: #fff;
    }
    .collage-cap-lbl {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 4px;
    }
    .collage-cap-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px;
      letter-spacing: 1px;
    }

    /* ═══ JOIN US 加入我们 ═══ */
    .join-us { background: var(--bg-soft); }
    .join-us-wrapper {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 60px; align-items: center;
    }
    .join-us-visual {
      position: relative;
      aspect-ratio: 4/5;
      overflow: hidden;
    }
    .join-us-visual img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .join-us-visual::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.4) 0%, rgba(200,50,46,0.35) 100%);
    }
    .join-us-visual-tag {
      position: absolute;
      top: 24px; left: 24px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 8px 18px;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .join-us-content h2 {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(28px, 3vw, 40px);
      font-weight: 500;
      color: var(--navy);
      line-height: 1.4;
      letter-spacing: 1px;
      margin-bottom: 24px;
    }
    .join-us-content h2 em { color: var(--red); font-style: normal; }
    .join-us-content p {
      font-size: 15px;
      color: var(--muted);
      line-height: 2;
      margin-bottom: 24px;
    }
    .join-us-positions {
      margin-top: 32px;
    }
    .position-item {
      background: #fff;
      border: 1px solid var(--border);
      padding: 20px 24px;
      margin-bottom: 12px;
      display: flex; justify-content: space-between; align-items: center;
      transition: all .2s;
      cursor: pointer;
    }
    .position-item:hover {
      border-color: var(--red);
      transform: translateX(4px);
    }
    .position-info {
      display: flex; align-items: center; gap: 16px;
    }
    .position-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 20px;
      color: var(--red);
      font-weight: 500;
      letter-spacing: 1px;
      min-width: 30px;
    }
    .position-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
    }
    .position-meta {
      font-size: 12px;
      color: var(--muted);
      margin-top: 4px;
      letter-spacing: .5px;
    }
    .position-arrow {
      color: var(--red);
      font-size: 20px;
    }

    /* Responsive */
    @media (max-width: 960px) {
      .page-header-inner-c { grid-template-columns: 1fr; gap: 40px; }
      .team-intro { grid-template-columns: 1fr; gap: 40px; }
      .team-hero-caption { flex-direction: column; align-items: flex-start; }
      .founder-feature-grid { grid-template-columns: 1fr; gap: 80px; }
      .consultants-grid { grid-template-columns: 1fr 1fr; }
      .cap-grid { grid-template-columns: 1fr 1fr; }
      .culture-collage { grid-template-columns: 1fr 1fr; grid-template-rows: repeat(3, 200px); }
      .collage-img-1 { grid-row: 1; grid-column: 1 / 3; }
      .join-us-wrapper { grid-template-columns: 1fr; gap: 40px; }
      .founder-highlights { grid-template-columns: 1fr 1fr; }
    }
    @media (max-width: 560px) {
      .consultants-grid { grid-template-columns: 1fr; }
      .cap-grid { grid-template-columns: 1fr; }
      .culture-collage { grid-template-columns: 1fr; grid-template-rows: repeat(5, 200px); }
      .collage-img-1 { grid-column: auto; }
      .founder-highlights { grid-template-columns: 1fr; }
    }

/* ═══ COURSES ═══ */
    /* ─── COURSES PAGE ─── */

    /* Page Header */
    .page-header {
      padding: 160px 0 100px;
      position: relative;
      overflow: hidden;
      color: #fff;
    }
    .page-header-bg {
      position: absolute; inset: 0;
      z-index: 0;
    }
    .page-header-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
      filter: brightness(0.35) saturate(0.85);
    }
    .page-header-bg::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.9) 0%, rgba(20,33,61,0.65) 100%);
    }
    .page-header-inner-c {
      position: relative; z-index: 1;
      display: grid; grid-template-columns: 1.4fr 1fr;
      gap: 60px; align-items: center;
    }
    .header-visual-img {
      position: relative;
      aspect-ratio: 1/1;
      max-height: 380px;
      overflow: hidden;
    }
    .header-visual-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .header-visual-img::before {
      content: '';
      position: absolute; top: -1px; left: -1px;
      width: 40px; height: 40px;
      border-top: 2px solid var(--red);
      border-left: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-img::after {
      content: '';
      position: absolute; bottom: -1px; right: -1px;
      width: 40px; height: 40px;
      border-bottom: 2px solid var(--red);
      border-right: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-badge {
      position: absolute;
      bottom: -20px; left: -20px;
      background: var(--red);
      color: #fff;
      padding: 20px 28px;
      z-index: 3;
    }
    .header-visual-badge-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1;
      margin-bottom: 6px;
    }
    .header-visual-badge-txt {
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    /* ═══ Course Stats 顶部数据条 ═══ */
    .course-stats {
      background: var(--navy);
      color: #fff;
      padding: 40px 0;
      position: relative;
      z-index: 5;
      margin-top: -1px;
    }
    .course-stats-grid {
      display: grid; grid-template-columns: repeat(4, 1fr);
    }
    .cs-item {
      text-align: center;
      padding: 20px 24px;
      border-right: 1px solid rgba(255,255,255,0.1);
    }
    .cs-item:last-child { border-right: none; }
    .cs-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 36px;
      font-weight: 500;
      color: #fff;
      letter-spacing: 1px;
      line-height: 1;
      margin-bottom: 8px;
    }
    .cs-num sup { color: var(--red); font-size: 18px; }
    .cs-lbl {
      font-size: 12px;
      color: rgba(255,255,255,0.55);
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    /* ═══ Filter Tabs ═══ */
    .courses-filter {
      background: var(--bg);
      padding: 80px 0 40px;
    }
    .filter-wrap {
      display: flex; justify-content: space-between; align-items: center;
      gap: 20px; flex-wrap: wrap;
    }
    .filter-tabs {
      display: flex; gap: 8px; flex-wrap: wrap;
    }
    .filter-tab {
      padding: 10px 22px;
      background: transparent;
      border: 1px solid var(--border);
      color: var(--muted);
      font-size: 13px;
      letter-spacing: 1px;
      cursor: pointer;
      transition: all .2s;
      font-family: inherit;
    }
    .filter-tab:hover { border-color: var(--navy); color: var(--navy); }
    .filter-tab.active {
      background: var(--navy);
      color: #fff;
      border-color: var(--navy);
    }
    .filter-info { font-size: 13px; color: var(--muted); }
    .filter-info strong { color: var(--navy); font-weight: 500; }

    /* ═══ Featured Course - 主推课程 ═══ */
    .featured-course { background: var(--bg); padding: 40px 0 100px; }
    .featured-course-card {
      background: var(--navy);
      color: #fff;
      overflow: hidden;
      display: grid; grid-template-columns: 1.2fr 1fr;
      position: relative;
    }
    .featured-course-cover {
      position: relative;
      overflow: hidden;
      min-height: 460px;
    }
    .featured-course-cover img {
      width: 100%; height: 100%;
      object-fit: cover;
      position: absolute;
      inset: 0;
    }
    .featured-course-cover::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.3) 0%, transparent 100%);
    }
    .featured-course-tag {
      position: absolute;
      top: 24px; left: 24px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 8px 18px;
      font-size: 12px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .featured-course-play {
      position: absolute;
      top: 50%; left: 50%;
      transform: translate(-50%, -50%);
      z-index: 2;
      width: 80px; height: 80px;
      background: var(--red);
      color: #fff;
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      font-size: 24px;
      box-shadow: 0 0 0 10px rgba(200,50,46,0.2), 0 0 0 20px rgba(200,50,46,0.1);
      transition: transform .3s;
    }
    .featured-course-cover:hover .featured-course-play {
      transform: translate(-50%, -50%) scale(1.1);
    }
    .featured-course-badge-corner {
      position: absolute;
      bottom: 24px; left: 24px;
      z-index: 2;
      background: rgba(255,255,255,0.95);
      color: var(--navy);
      padding: 12px 20px;
      font-size: 12px;
      letter-spacing: 1.5px;
    }
    .featured-course-badge-corner strong {
      display: block;
      font-family: 'Noto Serif SC', serif;
      font-size: 22px;
      color: var(--red);
      font-weight: 500;
      letter-spacing: 1px;
    }

    .featured-course-content {
      padding: 56px 48px;
      display: flex; flex-direction: column; justify-content: center;
    }
    .featured-course-eyebrow {
      display: inline-flex; align-items: center; gap: 12px;
      font-size: 12px; letter-spacing: 3px;
      color: var(--red);
      text-transform: uppercase;
      margin-bottom: 20px;
      font-weight: 500;
    }
    .featured-course-eyebrow::before { content: '★'; }
    .featured-course-title {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(24px, 3vw, 36px);
      font-weight: 500;
      color: #fff;
      line-height: 1.3;
      letter-spacing: 1px;
      margin-bottom: 20px;
    }
    .featured-course-desc {
      font-size: 15px;
      color: rgba(255,255,255,0.7);
      line-height: 2;
      margin-bottom: 32px;
    }
    .featured-course-meta {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 20px;
      padding: 20px 0;
      margin-bottom: 32px;
      border-top: 1px solid rgba(255,255,255,0.1);
      border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    .featured-course-meta-item {
      display: flex; flex-direction: column;
    }
    .featured-course-meta-lbl {
      font-size: 11px;
      color: rgba(255,255,255,0.5);
      letter-spacing: 1.5px;
      text-transform: uppercase;
      margin-bottom: 4px;
    }
    .featured-course-meta-val {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px;
      color: #fff;
      font-weight: 500;
      letter-spacing: 1px;
    }
    .featured-course-bottom {
      display: flex; justify-content: space-between; align-items: center;
      flex-wrap: wrap; gap: 20px;
    }
    .featured-course-price {
      font-family: 'Noto Serif SC', serif;
    }
    .featured-course-price-num {
      font-size: 32px;
      font-weight: 500;
      color: var(--red);
      letter-spacing: 1px;
      line-height: 1;
    }
    .featured-course-price-old {
      font-size: 14px;
      color: rgba(255,255,255,0.4);
      text-decoration: line-through;
      margin-left: 8px;
      font-family: 'Inter', sans-serif;
    }
    .featured-course-price-lbl {
      font-size: 11px;
      color: rgba(255,255,255,0.5);
      letter-spacing: 1.5px;
      margin-top: 4px;
      font-family: 'Inter', sans-serif;
    }

    /* ═══ Course Grid 课程卡片 ═══ */
    .courses-grid-section { background: var(--bg-soft); }
    .courses-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 32px;
    }
    .course-card {
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      transition: all .3s;
      display: flex; flex-direction: column;
      cursor: pointer;
    }
    .course-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 30px 70px rgba(20,33,61,0.15);
      border-color: var(--red);
    }
    .course-cover {
      position: relative;
      aspect-ratio: 16/10;
      overflow: hidden;
      background: var(--navy);
    }
    .course-cover img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .course-card:hover .course-cover img { transform: scale(1.08); }
    .course-cover::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.5) 0%, transparent 50%);
    }
    .course-tag {
      position: absolute;
      top: 16px; left: 16px;
      z-index: 2;
      padding: 5px 12px;
      background: var(--red);
      color: #fff;
      font-size: 11px;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .course-tag.online {
      background: var(--navy);
    }
    .course-play-icon {
      position: absolute;
      top: 16px; right: 16px;
      z-index: 2;
      width: 40px; height: 40px;
      background: rgba(255,255,255,0.9);
      color: var(--navy);
      display: flex; align-items: center; justify-content: center;
      font-size: 14px;
      border-radius: 50%;
    }
    .course-info {
      padding: 24px;
      display: flex; flex-direction: column;
      flex: 1;
    }
    .course-cat {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 10px;
    }
    .course-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 17px; font-weight: 500;
      color: var(--navy);
      line-height: 1.5;
      letter-spacing: .5px;
      margin-bottom: 12px;
      min-height: 51px;
    }
    .course-desc {
      font-size: 13px;
      color: var(--muted);
      line-height: 1.8;
      margin-bottom: 20px;
      flex: 1;
    }
    .course-meta-list {
      display: flex; gap: 16px;
      margin-bottom: 16px;
      font-size: 11px;
      color: var(--muted);
      letter-spacing: .5px;
    }
    .course-meta-list span {
      display: flex; align-items: center; gap: 4px;
    }
    .course-meta-list strong {
      color: var(--navy);
      font-weight: 500;
      font-family: 'Noto Serif SC', serif;
    }
    .course-instructor {
      display: flex; align-items: center; gap: 10px;
      padding-top: 16px;
      border-top: 1px solid var(--divider);
      margin-bottom: 16px;
    }
    .course-inst-avatar {
      width: 32px; height: 32px;
      overflow: hidden;
      background: var(--navy);
      flex-shrink: 0;
      border-radius: 50%;
    }
    .course-inst-avatar img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .course-inst-name {
      font-size: 12px;
      color: var(--navy);
      font-weight: 500;
      letter-spacing: .5px;
    }
    .course-inst-role {
      font-size: 10px;
      color: var(--muted);
      margin-top: 2px;
    }
    .course-bottom {
      display: flex; justify-content: space-between; align-items: center;
      padding-top: 16px;
      border-top: 1px solid var(--divider);
    }
    .course-price {
      font-family: 'Noto Serif SC', serif;
      font-size: 22px;
      font-weight: 500;
      color: var(--red);
      letter-spacing: 1px;
      line-height: 1;
    }
    .course-price small {
      display: inline-block;
      font-family: 'Inter', sans-serif;
      font-size: 12px;
      color: var(--muted);
      text-decoration: line-through;
      margin-left: 6px;
      font-weight: 400;
    }
    .course-price-free {
      color: var(--navy);
    }
    .course-cta {
      font-size: 11px;
      color: var(--navy);
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
      display: flex; align-items: center; gap: 6px;
    }
    .course-cta::after {
      content: '→';
      transition: transform .2s;
    }
    .course-card:hover .course-cta::after {
      transform: translateX(4px);
      color: var(--red);
    }

    /* ═══ Bootcamp 训练营时间表 ═══ */
    .bootcamp {
      background: var(--navy);
      color: #fff;
      position: relative;
      overflow: hidden;
    }
    .bootcamp-bg {
      position: absolute; inset: 0;
      z-index: 0;
      opacity: 0.1;
    }
    .bootcamp-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .bootcamp .container { position: relative; z-index: 1; }
    .bootcamp .section-title { color: #fff; }
    .bootcamp .section-sub { color: rgba(255,255,255,0.55); }

    .bootcamp-schedule {
      display: flex; flex-direction: column;
      gap: 20px;
    }
    .bootcamp-item {
      background: rgba(255,255,255,0.04);
      border: 1px solid rgba(255,255,255,0.08);
      padding: 32px 40px;
      display: grid;
      grid-template-columns: 120px 1fr 200px 180px;
      gap: 40px; align-items: center;
      transition: all .25s;
      cursor: pointer;
    }
    .bootcamp-item:hover {
      background: rgba(255,255,255,0.08);
      border-color: var(--red);
      transform: translateX(4px);
    }
    .bootcamp-date {
      text-align: center;
      padding: 12px;
      background: var(--red);
      color: #fff;
    }
    .bootcamp-date-month {
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 4px;
    }
    .bootcamp-date-day {
      font-family: 'Noto Serif SC', serif;
      font-size: 36px;
      font-weight: 500;
      line-height: 1;
      letter-spacing: 1px;
    }
    .bootcamp-info-cat {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 8px;
    }
    .bootcamp-info-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 20px;
      font-weight: 500;
      color: #fff;
      letter-spacing: 1px;
      margin-bottom: 6px;
    }
    .bootcamp-info-desc {
      font-size: 13px;
      color: rgba(255,255,255,0.6);
      line-height: 1.7;
    }
    .bootcamp-meta {
      display: flex; flex-direction: column;
      gap: 8px;
      font-size: 12px;
      color: rgba(255,255,255,0.7);
    }
    .bootcamp-meta-item {
      display: flex; align-items: center; gap: 8px;
    }
    .bootcamp-meta-item span:first-child {
      color: rgba(255,255,255,0.5);
      letter-spacing: .5px;
      min-width: 40px;
    }
    .bootcamp-meta-item strong {
      color: #fff;
      font-family: 'Noto Serif SC', serif;
      font-weight: 500;
      letter-spacing: .5px;
    }
    .bootcamp-status {
      text-align: center;
    }
    .bootcamp-seats {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px;
      color: var(--red);
      font-weight: 500;
      letter-spacing: 1px;
      margin-bottom: 4px;
    }
    .bootcamp-seats-lbl {
      font-size: 11px;
      color: rgba(255,255,255,0.55);
      letter-spacing: 1px;
      margin-bottom: 12px;
    }
    .bootcamp-btn {
      background: var(--red);
      color: #fff;
      padding: 10px 20px;
      font-size: 12px;
      letter-spacing: 2px;
      text-transform: uppercase;
      border: none;
      cursor: pointer;
      font-family: inherit;
      display: inline-flex; align-items: center; gap: 8px;
    }
    .bootcamp-btn::after { content: '→'; }
    .bootcamp-btn:hover { background: var(--red-dark); }

    /* ═══ Instructors 讲师团队 ═══ */
    .instructors { background: var(--bg); }
    .instructors-grid {
      display: grid; grid-template-columns: repeat(4, 1fr);
      gap: 24px;
    }
    .instructor-card {
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      transition: all .3s;
    }
    .instructor-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 20px 50px rgba(20,33,61,0.10);
    }
    .instructor-photo {
      position: relative;
      aspect-ratio: 1/1;
      overflow: hidden;
      background: var(--navy);
    }
    .instructor-photo img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .instructor-card:hover .instructor-photo img { transform: scale(1.05); }
    .instructor-photo::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.6) 0%, transparent 60%);
    }
    .instructor-badge {
      position: absolute;
      top: 12px; right: 12px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 3px 10px;
      font-size: 10px;
      letter-spacing: 1.5px;
      font-weight: 500;
    }
    .instructor-body {
      padding: 20px 24px;
    }
    .instructor-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 17px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 6px;
    }
    .instructor-title {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 12px;
    }
    .instructor-desc {
      font-size: 12px;
      color: var(--muted);
      line-height: 1.8;
      margin-bottom: 12px;
      min-height: 65px;
    }
    .instructor-stats {
      display: flex; gap: 16px;
      padding-top: 12px;
      border-top: 1px solid var(--divider);
      font-size: 11px;
      color: var(--muted);
    }
    .instructor-stats strong {
      display: block;
      font-family: 'Noto Serif SC', serif;
      font-size: 14px;
      color: var(--red);
      font-weight: 500;
      margin-bottom: 2px;
    }

    /* ═══ Testimonials 学员评价 ═══ */
    .learner-testi { background: var(--bg-soft); }
    .lt-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 32px;
    }
    .lt-card {
      background: #fff;
      border: 1px solid var(--border);
      padding: 40px 32px;
      transition: all .25s;
      position: relative;
    }
    .lt-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 20px 50px rgba(20,33,61,0.10);
      border-color: var(--red);
    }
    .lt-quote {
      font-family: 'Noto Serif SC', serif;
      font-size: 60px;
      line-height: 0.5;
      color: var(--red);
      opacity: 0.85;
      margin-bottom: 28px;
      display: block;
    }
    .lt-course {
      display: inline-block;
      padding: 4px 12px;
      background: var(--bg-soft);
      color: var(--navy);
      font-size: 11px;
      letter-spacing: 1.5px;
      margin-bottom: 20px;
      border: 1px solid var(--divider);
    }
    .lt-text {
      font-size: 14px;
      color: var(--text);
      line-height: 2;
      margin-bottom: 24px;
      min-height: 130px;
    }
    .lt-author {
      display: flex; align-items: center; gap: 14px;
      padding-top: 20px;
      border-top: 1px solid var(--divider);
    }
    .lt-avatar {
      width: 44px; height: 44px;
      overflow: hidden;
      background: var(--navy);
      border-radius: 50%;
    }
    .lt-avatar img { width: 100%; height: 100%; object-fit: cover; }
    .lt-author-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 14px;
      font-weight: 500;
      color: var(--navy);
      letter-spacing: .5px;
    }
    .lt-author-role {
      font-size: 12px;
      color: var(--muted);
      margin-top: 2px;
    }

    /* ═══ Learning Path 学习路径 ═══ */
    .learn-path { background: var(--bg); }
    .learn-path-showcase {
      display: grid; grid-template-columns: 1fr 1.2fr;
      gap: 60px; align-items: center;
      margin-bottom: 80px;
    }
    .lp-visual {
      aspect-ratio: 4/5;
      overflow: hidden;
      position: relative;
    }
    .lp-visual img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .lp-visual-tag {
      position: absolute;
      top: 20px; left: 20px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 8px 18px;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }
    .lp-content h3 {
      font-family: 'Noto Serif SC', serif;
      font-size: 30px;
      font-weight: 500;
      color: var(--navy);
      line-height: 1.4;
      letter-spacing: 1px;
      margin-bottom: 24px;
    }
    .lp-content h3 em { color: var(--red); font-style: normal; }
    .lp-content p {
      font-size: 15px;
      color: var(--muted);
      line-height: 2;
      margin-bottom: 24px;
    }
    .lp-steps {
      display: flex; flex-direction: column;
      gap: 16px;
      margin-top: 32px;
    }
    .lp-step {
      background: var(--bg-soft);
      padding: 20px 24px;
      display: flex; align-items: center; gap: 20px;
      border-left: 3px solid var(--red);
    }
    .lp-step-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 24px;
      color: var(--red);
      font-weight: 500;
      letter-spacing: 1px;
      min-width: 40px;
    }
    .lp-step-info {
      flex: 1;
    }
    .lp-step-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 4px;
    }
    .lp-step-desc {
      font-size: 12px;
      color: var(--muted);
      line-height: 1.7;
    }

    /* Responsive */
    @media (max-width: 960px) {
      .page-header-inner-c { grid-template-columns: 1fr; gap: 40px; }
      .course-stats-grid { grid-template-columns: 1fr 1fr; gap: 20px 0; }
      .cs-item { border-bottom: 1px solid rgba(255,255,255,0.1); padding: 24px; }
      .featured-course-card { grid-template-columns: 1fr; }
      .featured-course-cover { min-height: 320px; }
      .featured-course-content { padding: 40px 28px; }
      .courses-grid { grid-template-columns: 1fr 1fr; }
      .bootcamp-item { grid-template-columns: 1fr; gap: 20px; text-align: center; }
      .bootcamp-meta { flex-direction: row; justify-content: center; }
      .instructors-grid { grid-template-columns: 1fr 1fr; }
      .lt-grid { grid-template-columns: 1fr; }
      .learn-path-showcase { grid-template-columns: 1fr; gap: 40px; }
    }
    @media (max-width: 560px) {
      .course-stats-grid { grid-template-columns: 1fr; }
      .courses-grid { grid-template-columns: 1fr; }
      .instructors-grid { grid-template-columns: 1fr; }
      .featured-course-meta { grid-template-columns: 1fr; gap: 16px; }
    }

/* ═══ CASES ═══ */
    /* ─── CASES PAGE ─── */

    /* Page Header with 背景大图 */
    .page-header {
      padding: 160px 0 100px;
      position: relative;
      overflow: hidden;
      color: #fff;
    }
    .page-header-bg {
      position: absolute; inset: 0;
      z-index: 0;
    }
    .page-header-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
      filter: brightness(0.35) saturate(0.85);
    }
    .page-header-bg::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.9) 0%, rgba(20,33,61,0.65) 100%);
    }
    .page-header-inner-c {
      position: relative; z-index: 1;
      display: grid; grid-template-columns: 1.4fr 1fr;
      gap: 60px; align-items: center;
    }
    .header-visual-img {
      position: relative;
      aspect-ratio: 1/1;
      max-height: 380px;
      overflow: hidden;
    }
    .header-visual-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .header-visual-img::before {
      content: '';
      position: absolute; top: -1px; left: -1px;
      width: 40px; height: 40px;
      border-top: 2px solid var(--red);
      border-left: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-img::after {
      content: '';
      position: absolute; bottom: -1px; right: -1px;
      width: 40px; height: 40px;
      border-bottom: 2px solid var(--red);
      border-right: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-badge {
      position: absolute;
      bottom: -20px; left: -20px;
      background: var(--red);
      color: #fff;
      padding: 20px 28px;
      z-index: 3;
    }
    .header-visual-badge-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1;
      margin-bottom: 6px;
    }
    .header-visual-badge-txt {
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    /* ═══ FEATURED CASE ═══ */
    .featured-wrapper {
      background: var(--navy);
      color: #fff;
      padding: 100px 0;
      position: relative;
      overflow: hidden;
    }
    .featured-grid {
      display: grid; grid-template-columns: 1.3fr 1fr;
      gap: 60px; align-items: center;
    }
    .featured-visual {
      position: relative;
      aspect-ratio: 4/3;
      overflow: hidden;
    }
    .featured-visual img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .featured-visual::before {
      content: '';
      position: absolute; top: -1px; left: -1px;
      width: 48px; height: 48px;
      border-top: 3px solid var(--red);
      border-left: 3px solid var(--red);
      z-index: 3;
    }
    .featured-visual::after {
      content: '';
      position: absolute; bottom: -1px; right: -1px;
      width: 48px; height: 48px;
      border-bottom: 3px solid var(--red);
      border-right: 3px solid var(--red);
      z-index: 3;
    }
    .featured-visual-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.3) 0%, rgba(20,33,61,0.7) 100%);
      z-index: 1;
    }
    .featured-badge-corner {
      position: absolute;
      bottom: 20px; left: 20px;
      z-index: 4;
      background: var(--red);
      color: #fff;
      padding: 12px 20px;
      font-size: 12px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .featured-badge-corner strong {
      display: block;
      font-family: 'Noto Serif SC', serif;
      font-size: 20px;
      letter-spacing: 1px;
      margin-bottom: 2px;
    }
    .featured-content .featured-badge {
      display: inline-flex; align-items: center; gap: 12px;
      font-size: 12px; letter-spacing: 3px;
      color: var(--red);
      text-transform: uppercase;
      margin-bottom: 24px;
    }
    .featured-content .featured-badge::before { content: '★'; font-size: 14px; }
    .featured-content h2 {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(28px, 3.5vw, 44px);
      font-weight: 500;
      color: #fff;
      line-height: 1.3;
      letter-spacing: 1px;
      margin-bottom: 24px;
    }
    .featured-content h2 em { font-style: normal; color: var(--red); }
    .featured-content .featured-desc {
      font-size: 15px;
      color: rgba(255,255,255,0.7);
      line-height: 2;
      margin-bottom: 32px;
    }
    .featured-tags {
      display: flex; flex-wrap: wrap; gap: 8px;
      margin-bottom: 32px;
    }
    .featured-tag {
      padding: 5px 14px;
      background: rgba(255,255,255,0.06);
      border: 1px solid rgba(255,255,255,0.15);
      color: rgba(255,255,255,0.75);
      font-size: 12px;
      letter-spacing: 1px;
    }
    .featured-stats-row {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 0;
      margin-bottom: 40px;
      padding-top: 24px;
      border-top: 1px solid rgba(255,255,255,0.1);
    }
    .featured-stat {
      padding-right: 24px;
      border-right: 1px solid rgba(255,255,255,0.1);
    }
    .featured-stat:last-child { border-right: none; }
    .featured-stat-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 40px; font-weight: 500;
      color: var(--red);
      line-height: 1;
      letter-spacing: 1px;
    }
    .featured-stat-lbl {
      font-size: 12px;
      color: rgba(255,255,255,0.5);
      letter-spacing: 1.5px;
      margin-top: 8px;
    }

    /* ═══ Metrics Overview ═══ */
    .metrics-overview {
      background: var(--navy-dark);
      color: #fff;
      padding: 60px 0;
      position: relative;
      overflow: hidden;
    }
    .metrics-overview-bg {
      position: absolute; inset: 0;
      z-index: 0;
      opacity: 0.1;
    }
    .metrics-overview-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .metrics-overview .container { position: relative; z-index: 1; }
    .metrics-overview-grid {
      display: grid; grid-template-columns: repeat(4, 1fr);
    }
    .metric-o {
      text-align: left;
      padding: 20px 32px;
      border-right: 1px solid rgba(255,255,255,0.1);
    }
    .metric-o:last-child { border-right: none; }
    .metric-o-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 56px; font-weight: 500;
      color: #fff;
      letter-spacing: 1px;
      line-height: 1;
    }
    .metric-o-num sup { color: var(--red); font-size: 24px; }
    .metric-o-lbl {
      font-size: 13px;
      color: rgba(255,255,255,0.55);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-top: 16px;
    }
    .metric-o-desc {
      font-size: 12px;
      color: rgba(255,255,255,0.4);
      margin-top: 8px;
      line-height: 1.7;
    }

    /* ═══ FILTER ═══ */
    .cases-filter {
      background: var(--bg);
      padding: 80px 0 40px;
    }
    .filter-wrap {
      display: flex; justify-content: space-between; align-items: center;
      gap: 20px; flex-wrap: wrap;
    }
    .filter-tabs {
      display: flex; gap: 8px; flex-wrap: wrap;
    }
    .filter-tab {
      padding: 10px 22px;
      background: transparent;
      border: 1px solid var(--border);
      color: var(--muted);
      font-size: 13px;
      letter-spacing: 1px;
      cursor: pointer;
      transition: all .2s;
      font-family: inherit;
    }
    .filter-tab:hover { border-color: var(--navy); color: var(--navy); }
    .filter-tab.active {
      background: var(--navy);
      color: #fff;
      border-color: var(--navy);
    }
    .filter-info { font-size: 13px; color: var(--muted); }
    .filter-info strong { color: var(--navy); font-weight: 500; }

    /* ═══ CASE GRID with 大图 ═══ */
    .cases-grid-section {
      background: var(--bg);
      padding-top: 40px;
    }
    .cases-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 32px;
    }
    .case-card {
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      transition: all .3s;
      display: flex; flex-direction: column;
      cursor: pointer;
    }
    .case-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 30px 70px rgba(20,33,61,0.15);
      border-color: var(--red);
    }
    .case-cover {
      position: relative;
      aspect-ratio: 4/3;
      overflow: hidden;
      background: var(--navy);
    }
    .case-cover img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .case-card:hover .case-cover img { transform: scale(1.08); }
    .case-cover::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.75) 0%, rgba(20,33,61,0.15) 50%, transparent 100%);
    }
    .case-cover-tag {
      position: absolute;
      top: 20px; left: 20px;
      z-index: 2;
      padding: 5px 14px;
      background: var(--red);
      color: #fff;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .case-cover-metrics {
      position: absolute;
      bottom: 20px; left: 20px; right: 20px;
      z-index: 2;
      display: flex; gap: 20px;
      color: #fff;
    }
    .case-cover-metric {
      display: flex; flex-direction: column;
    }
    .case-cover-metric-val {
      font-family: 'Noto Serif SC', serif;
      font-size: 24px; font-weight: 500;
      color: var(--red);
      letter-spacing: 1px;
      line-height: 1;
    }
    .case-cover-metric-lbl {
      font-size: 10px;
      color: rgba(255,255,255,0.75);
      letter-spacing: 1px;
      margin-top: 4px;
    }
    .case-info {
      padding: 28px;
      display: flex; flex-direction: column;
      flex: 1;
    }
    .case-cat {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 12px;
    }
    .case-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px; font-weight: 500;
      color: var(--navy);
      line-height: 1.5;
      letter-spacing: .5px;
      margin-bottom: 12px;
      min-height: 54px;
    }
    .case-desc {
      font-size: 13px;
      color: var(--muted);
      line-height: 1.9;
      margin-bottom: 24px;
      flex: 1;
    }
    .case-link {
      margin-top: 0;
      padding-top: 20px;
      border-top: 1px solid var(--divider);
      font-size: 12px;
      color: var(--navy);
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
      display: flex; align-items: center; gap: 8px;
    }
    .case-link::after {
      content: '→';
      transition: transform .2s;
    }
    .case-card:hover .case-link::after {
      transform: translateX(6px);
      color: var(--red);
    }

    .load-more {
      text-align: center;
      margin-top: 80px;
    }

    /* ═══ Video Testimonial - 新增视频形式 ═══ */
    .video-testi {
      background: var(--bg-soft);
    }
    .video-testi-grid {
      display: grid; grid-template-columns: 1.3fr 1fr;
      gap: 60px;
      align-items: center;
    }
    .video-testi-player {
      position: relative;
      aspect-ratio: 16/9;
      overflow: hidden;
      background: var(--navy);
      cursor: pointer;
    }
    .video-testi-player img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .video-testi-player::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.4) 0%, rgba(20,33,61,0.7) 100%);
      transition: opacity .3s;
    }
    .video-testi-player:hover::after {
      opacity: 0.3;
    }
    .play-btn {
      position: absolute;
      top: 50%; left: 50%;
      transform: translate(-50%, -50%);
      z-index: 3;
      width: 88px; height: 88px;
      border-radius: 50%;
      background: var(--red);
      color: #fff;
      display: flex; align-items: center; justify-content: center;
      font-size: 28px;
      cursor: pointer;
      box-shadow: 0 0 0 12px rgba(200,50,46,0.2), 0 0 0 24px rgba(200,50,46,0.1);
      transition: all .3s;
    }
    .video-testi-player:hover .play-btn {
      transform: translate(-50%, -50%) scale(1.1);
    }
    .video-testi-caption {
      position: absolute;
      bottom: 24px; left: 24px;
      z-index: 3;
      color: #fff;
    }
    .video-testi-caption-tag {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 6px;
    }
    .video-testi-caption-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 20px;
      font-weight: 500;
      letter-spacing: 1px;
    }
    .video-testi-info .section-eyebrow { margin-bottom: 24px; }
    .video-testi-info h3 {
      font-family: 'Noto Serif SC', serif;
      font-size: 30px;
      font-weight: 500;
      color: var(--navy);
      line-height: 1.4;
      letter-spacing: 1px;
      margin-bottom: 24px;
    }
    .video-testi-info h3 em { color: var(--red); font-style: normal; }
    .video-testi-info p {
      font-size: 15px;
      color: var(--muted);
      line-height: 2;
      margin-bottom: 24px;
    }
    .video-testi-quote {
      padding: 24px 28px;
      background: var(--navy);
      color: #fff;
      border-left: 3px solid var(--red);
      font-family: 'Noto Serif SC', serif;
      font-size: 15px;
      line-height: 1.9;
      letter-spacing: 1px;
      position: relative;
    }
    .video-testi-quote::before {
      content: '"';
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      color: var(--red);
      line-height: 0.5;
      margin-right: 8px;
      vertical-align: middle;
    }

    /* ═══ LOGO WALL 品牌客户展示 ═══ */
    .logo-wall-section { background: var(--bg); }
    .logo-wall-grid {
      display: grid; grid-template-columns: repeat(6, 1fr);
      gap: 1px;
      background: var(--border);
      border: 1px solid var(--border);
    }
    .logo-cell {
      background: #fff;
      padding: 32px 20px;
      display: flex; flex-direction: column; align-items: center; justify-content: center;
      transition: all .25s;
      min-height: 140px;
      position: relative;
      overflow: hidden;
    }
    .logo-cell:hover {
      background: var(--navy);
      transform: scale(1.03);
      z-index: 1;
      box-shadow: 0 8px 30px rgba(20,33,61,0.15);
    }
    .logo-cell:hover .logo-name { color: #fff; }
    .logo-cell:hover .logo-cat { color: var(--red); }
    .logo-icon-bg {
      width: 40px; height: 40px;
      background: var(--bg-soft);
      color: var(--navy);
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      font-size: 18px;
      margin-bottom: 12px;
      transition: all .25s;
    }
    .logo-cell:hover .logo-icon-bg {
      background: var(--red);
      color: #fff;
    }
    .logo-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 14px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 4px;
      text-align: center;
    }
    .logo-cat {
      font-size: 10px;
      color: var(--muted);
      letter-spacing: 1px;
    }

    /* Responsive */
    @media (max-width: 960px) {
      .page-header-inner-c { grid-template-columns: 1fr; gap: 40px; }
      .featured-grid { grid-template-columns: 1fr; gap: 40px; }
      .cases-grid { grid-template-columns: 1fr 1fr; }
      .video-testi-grid { grid-template-columns: 1fr; gap: 40px; }
      .logo-wall-grid { grid-template-columns: repeat(3, 1fr); }
      .metrics-overview-grid { grid-template-columns: 1fr 1fr; gap: 32px 0; }
      .metric-o { border-bottom: 1px solid rgba(255,255,255,0.1); }
    }
    @media (max-width: 560px) {
      .cases-grid { grid-template-columns: 1fr; }
      .logo-wall-grid { grid-template-columns: repeat(2, 1fr); }
      .metrics-overview-grid { grid-template-columns: 1fr; }
      .featured-stats-row { grid-template-columns: 1fr; gap: 20px; }
      .featured-stat { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 16px; }
    }

/* ═══ BLOG ═══ */
    /* ─── BLOG PAGE ─── */

    /* Page Header */
    .page-header {
      padding: 160px 0 100px;
      position: relative;
      overflow: hidden;
      color: #fff;
    }
    .page-header-bg {
      position: absolute; inset: 0;
      z-index: 0;
    }
    .page-header-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
      filter: brightness(0.35) saturate(0.85);
    }
    .page-header-bg::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.9) 0%, rgba(20,33,61,0.65) 100%);
    }
    .page-header-inner-c {
      position: relative; z-index: 1;
      display: grid; grid-template-columns: 1.4fr 1fr;
      gap: 60px; align-items: center;
    }
    .header-visual-img {
      position: relative;
      aspect-ratio: 1/1;
      max-height: 380px;
      overflow: hidden;
    }
    .header-visual-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .header-visual-img::before {
      content: '';
      position: absolute; top: -1px; left: -1px;
      width: 40px; height: 40px;
      border-top: 2px solid var(--red);
      border-left: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-img::after {
      content: '';
      position: absolute; bottom: -1px; right: -1px;
      width: 40px; height: 40px;
      border-bottom: 2px solid var(--red);
      border-right: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-badge {
      position: absolute;
      bottom: -20px; left: -20px;
      background: var(--red);
      color: #fff;
      padding: 20px 28px;
      z-index: 3;
    }
    .header-visual-badge-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1;
      margin-bottom: 6px;
    }
    .header-visual-badge-txt {
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    /* ═══ Search Bar ═══ */
    .search-section {
      background: var(--navy-dark);
      color: #fff;
      padding: 40px 0;
    }
    .search-wrap {
      display: flex; justify-content: space-between; align-items: center;
      gap: 40px; flex-wrap: wrap;
    }
    .search-box {
      flex: 1;
      max-width: 500px;
      position: relative;
    }
    .search-input {
      width: 100%;
      padding: 14px 20px 14px 48px;
      background: rgba(255,255,255,0.06);
      border: 1px solid rgba(255,255,255,0.12);
      color: #fff;
      font-size: 14px;
      font-family: inherit;
      outline: none;
      transition: all .2s;
    }
    .search-input::placeholder { color: rgba(255,255,255,0.4); }
    .search-input:focus {
      border-color: var(--red);
      background: rgba(255,255,255,0.1);
    }
    .search-icon {
      position: absolute;
      top: 50%; left: 16px;
      transform: translateY(-50%);
      color: rgba(255,255,255,0.5);
      font-size: 16px;
    }
    .search-stats {
      display: flex; gap: 32px;
      font-size: 13px;
      color: rgba(255,255,255,0.6);
      letter-spacing: 1px;
    }
    .search-stats strong {
      font-family: 'Noto Serif SC', serif;
      color: var(--red);
      font-weight: 500;
      font-size: 15px;
      margin-right: 4px;
    }

    /* ═══ Featured Article - 头条 ═══ */
    .featured-article { background: var(--bg); padding: 100px 0; }
    .featured-article-card {
      display: grid; grid-template-columns: 1.4fr 1fr;
      gap: 0;
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      transition: all .3s;
    }
    .featured-article-card:hover {
      box-shadow: 0 40px 100px rgba(20,33,61,0.15);
    }
    .featured-article-cover {
      position: relative;
      overflow: hidden;
      background: var(--navy);
      min-height: 480px;
    }
    .featured-article-cover img {
      width: 100%; height: 100%;
      object-fit: cover;
      position: absolute;
      inset: 0;
      transition: transform .8s;
    }
    .featured-article-card:hover .featured-article-cover img { transform: scale(1.05); }
    .featured-article-cover::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.3) 0%, transparent 60%);
    }
    .featured-article-tag {
      position: absolute;
      top: 24px; left: 24px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 8px 18px;
      font-size: 11px;
      letter-spacing: 3px;
      text-transform: uppercase;
      font-weight: 500;
      display: inline-flex; align-items: center; gap: 8px;
    }
    .featured-article-tag::before { content: '★'; }
    .featured-article-cat-tag {
      position: absolute;
      bottom: 24px; left: 24px;
      z-index: 2;
      background: rgba(20,33,61,0.9);
      backdrop-filter: blur(8px);
      color: #fff;
      padding: 6px 14px;
      font-size: 11px;
      letter-spacing: 1.5px;
      text-transform: uppercase;
    }

    .featured-article-content {
      padding: 56px 48px;
      display: flex; flex-direction: column; justify-content: center;
    }
    .featured-article-meta {
      display: flex; gap: 16px; align-items: center;
      margin-bottom: 20px;
      font-size: 12px;
      color: var(--muted);
      letter-spacing: 1px;
    }
    .featured-article-meta strong { color: var(--red); font-weight: 500; letter-spacing: 2px; }
    .featured-article-title {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(26px, 3vw, 38px);
      font-weight: 500;
      color: var(--navy);
      line-height: 1.35;
      letter-spacing: 1px;
      margin-bottom: 20px;
    }
    .featured-article-title:hover { color: var(--red); }
    .featured-article-excerpt {
      font-size: 15px;
      color: var(--muted);
      line-height: 2;
      margin-bottom: 32px;
    }
    .featured-article-tags {
      display: flex; flex-wrap: wrap; gap: 8px;
      margin-bottom: 32px;
    }
    .featured-article-t-tag {
      padding: 4px 12px;
      background: var(--bg-soft);
      color: var(--navy);
      font-size: 12px;
      letter-spacing: .5px;
      border: 1px solid var(--divider);
    }
    .featured-article-author {
      display: flex; align-items: center; gap: 16px;
      padding-top: 24px;
      border-top: 1px solid var(--divider);
      margin-bottom: 32px;
    }
    .featured-author-avatar {
      width: 48px; height: 48px;
      overflow: hidden;
      background: var(--navy);
      flex-shrink: 0;
      border-radius: 50%;
    }
    .featured-author-avatar img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .featured-author-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 14px;
      font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
    }
    .featured-author-role {
      font-size: 12px;
      color: var(--muted);
      margin-top: 2px;
    }

    /* ═══ Filter Tabs ═══ */
    .blog-filter {
      background: var(--bg);
      padding-bottom: 60px;
    }
    .filter-wrap {
      display: flex; justify-content: space-between; align-items: center;
      gap: 20px; flex-wrap: wrap;
    }
    .filter-tabs {
      display: flex; gap: 8px; flex-wrap: wrap;
    }
    .filter-tab {
      padding: 10px 22px;
      background: transparent;
      border: 1px solid var(--border);
      color: var(--muted);
      font-size: 13px;
      letter-spacing: 1px;
      cursor: pointer;
      transition: all .2s;
      font-family: inherit;
    }
    .filter-tab:hover { border-color: var(--navy); color: var(--navy); }
    .filter-tab.active {
      background: var(--navy);
      color: #fff;
      border-color: var(--navy);
    }
    .filter-info { font-size: 13px; color: var(--muted); }
    .filter-info strong { color: var(--navy); font-weight: 500; }

    /* ═══ Blog Grid ═══ */
    .blog-grid-section { background: var(--bg); padding: 40px 0 100px; }
    .blog-layout {
      display: grid;
      grid-template-columns: 1fr 320px;
      gap: 60px;
    }
    .blog-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 32px;
    }
    .blog-card {
      background: #fff;
      border: 1px solid var(--border);
      overflow: hidden;
      transition: all .3s;
      display: flex; flex-direction: column;
      cursor: pointer;
    }
    .blog-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 30px 70px rgba(20,33,61,0.15);
      border-color: var(--red);
    }
    .blog-cover {
      position: relative;
      aspect-ratio: 16/10;
      overflow: hidden;
      background: var(--navy);
    }
    .blog-cover img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .blog-card:hover .blog-cover img { transform: scale(1.08); }
    .blog-cat-tag {
      position: absolute;
      top: 16px; left: 16px;
      z-index: 2;
      padding: 5px 12px;
      background: var(--red);
      color: #fff;
      font-size: 10px;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      font-weight: 500;
    }
    .blog-read-time {
      position: absolute;
      top: 16px; right: 16px;
      z-index: 2;
      padding: 4px 10px;
      background: rgba(20,33,61,0.9);
      backdrop-filter: blur(8px);
      color: #fff;
      font-size: 11px;
      letter-spacing: 1px;
    }
    .blog-body {
      padding: 28px;
      display: flex; flex-direction: column;
      flex: 1;
    }
    .blog-date {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 12px;
      font-family: 'Inter', sans-serif;
    }
    .blog-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 20px; font-weight: 500;
      color: var(--navy);
      line-height: 1.5;
      letter-spacing: .5px;
      margin-bottom: 14px;
      min-height: 60px;
      transition: color .2s;
    }
    .blog-card:hover .blog-title { color: var(--red); }
    .blog-excerpt {
      font-size: 13px;
      color: var(--muted);
      line-height: 1.9;
      margin-bottom: 24px;
      flex: 1;
    }
    .blog-footer {
      padding-top: 20px;
      border-top: 1px solid var(--divider);
      display: flex; align-items: center; justify-content: space-between;
    }
    .blog-author-mini {
      display: flex; align-items: center; gap: 10px;
    }
    .blog-author-avatar {
      width: 32px; height: 32px;
      overflow: hidden;
      background: var(--navy);
      border-radius: 50%;
      flex-shrink: 0;
    }
    .blog-author-avatar img { width: 100%; height: 100%; object-fit: cover; }
    .blog-author-name {
      font-size: 12px;
      color: var(--navy);
      font-weight: 500;
      letter-spacing: .5px;
    }
    .blog-stats {
      display: flex; gap: 12px;
      font-size: 11px;
      color: var(--muted);
      letter-spacing: .5px;
    }
    .blog-stats span::before {
      content: attr(data-icon);
      margin-right: 4px;
      color: var(--red);
    }

    /* ═══ Sidebar ═══ */
    .sidebar {
      display: flex; flex-direction: column;
      gap: 40px;
    }
    .side-widget {
      background: #fff;
      border: 1px solid var(--border);
      padding: 32px 28px;
    }
    .side-widget-head {
      display: flex; align-items: center; gap: 12px;
      margin-bottom: 24px;
      padding-bottom: 20px;
      border-bottom: 1px solid var(--divider);
    }
    .side-widget-head::before {
      content: '';
      width: 4px; height: 20px;
      background: var(--red);
    }
    .side-widget-head h3 {
      font-family: 'Noto Serif SC', serif;
      font-size: 17px;
      font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
    }

    /* Popular articles */
    .popular-list {
      list-style: none;
      display: flex; flex-direction: column;
      gap: 20px;
    }
    .popular-item {
      display: flex; gap: 16px;
      cursor: pointer;
      transition: all .2s;
    }
    .popular-item:hover { transform: translateX(4px); }
    .popular-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 26px;
      color: var(--red);
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1;
      min-width: 32px;
      opacity: 0.85;
    }
    .popular-info {
      flex: 1;
    }
    .popular-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 13px;
      font-weight: 500;
      color: var(--navy);
      line-height: 1.6;
      letter-spacing: .5px;
      margin-bottom: 6px;
      transition: color .2s;
    }
    .popular-item:hover .popular-title { color: var(--red); }
    .popular-meta {
      font-size: 11px;
      color: var(--muted);
      letter-spacing: .5px;
    }

    /* Tags cloud */
    .tags-cloud {
      display: flex; flex-wrap: wrap; gap: 8px;
    }
    .tag-chip {
      padding: 6px 14px;
      background: var(--bg-soft);
      color: var(--navy);
      font-size: 12px;
      letter-spacing: .5px;
      border: 1px solid var(--divider);
      cursor: pointer;
      transition: all .2s;
      text-decoration: none;
    }
    .tag-chip:hover {
      background: var(--navy);
      color: #fff;
      border-color: var(--navy);
    }
    .tag-chip.hot {
      background: rgba(200,50,46,0.08);
      color: var(--red);
      border-color: rgba(200,50,46,0.25);
    }
    .tag-chip.hot::after {
      content: '🔥';
      margin-left: 4px;
      font-size: 10px;
    }

    /* Newsletter widget */
    .newsletter-widget {
      background: var(--navy);
      color: #fff;
      border: none;
      position: relative;
      overflow: hidden;
    }
    .newsletter-widget::before {
      content: '';
      position: absolute;
      top: -50px; right: -50px;
      width: 150px; height: 150px;
      border-radius: 50%;
      background: rgba(200,50,46,0.15);
    }
    .newsletter-widget .side-widget-head h3 { color: #fff; }
    .newsletter-desc {
      font-size: 13px;
      color: rgba(255,255,255,0.7);
      line-height: 1.9;
      margin-bottom: 20px;
      position: relative;
    }
    .newsletter-input {
      width: 100%;
      padding: 12px 16px;
      background: rgba(255,255,255,0.06);
      border: 1px solid rgba(255,255,255,0.12);
      color: #fff;
      font-size: 13px;
      margin-bottom: 12px;
      outline: none;
      transition: all .2s;
    }
    .newsletter-input::placeholder { color: rgba(255,255,255,0.4); }
    .newsletter-input:focus {
      border-color: var(--red);
    }
    .newsletter-submit {
      width: 100%;
      padding: 12px 20px;
      background: var(--red);
      color: #fff;
      border: none;
      font-size: 12px;
      font-weight: 500;
      letter-spacing: 2px;
      cursor: pointer;
      transition: background .2s;
      font-family: inherit;
    }
    .newsletter-submit:hover { background: var(--red-dark); }

    /* Author widget */
    .author-widget {
      text-align: center;
    }
    .author-widget-photo {
      width: 80px; height: 80px;
      overflow: hidden;
      background: var(--navy);
      margin: 0 auto 16px;
      border-radius: 50%;
      border: 2px solid var(--red);
    }
    .author-widget-photo img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .author-widget-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 16px;
      font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 4px;
    }
    .author-widget-role {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 16px;
    }
    .author-widget-bio {
      font-size: 12px;
      color: var(--muted);
      line-height: 1.9;
      margin-bottom: 20px;
    }
    .author-widget-stats {
      display: flex; justify-content: center; gap: 20px;
      padding-top: 20px;
      border-top: 1px solid var(--divider);
    }
    .aw-stat-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px;
      color: var(--red);
      font-weight: 500;
      letter-spacing: .5px;
    }
    .aw-stat-lbl {
      font-size: 10px;
      color: var(--muted);
      letter-spacing: 1px;
      margin-top: 2px;
    }

    /* Pagination */
    .pagination {
      display: flex; justify-content: center; gap: 8px;
      margin-top: 60px;
    }
    .page-btn {
      width: 40px; height: 40px;
      display: flex; align-items: center; justify-content: center;
      background: #fff;
      border: 1px solid var(--border);
      color: var(--navy);
      font-size: 13px;
      cursor: pointer;
      transition: all .2s;
      font-family: inherit;
      font-weight: 500;
    }
    .page-btn:hover {
      border-color: var(--red);
      color: var(--red);
    }
    .page-btn.active {
      background: var(--navy);
      color: #fff;
      border-color: var(--navy);
    }
    .page-btn.arrow {
      width: 80px;
    }

    /* ═══ Newsletter Full Section ═══ */
    .newsletter-full {
      background: var(--navy);
      color: #fff;
      position: relative;
      overflow: hidden;
    }
    .newsletter-full-bg {
      position: absolute; inset: 0;
      z-index: 0;
      opacity: 0.1;
    }
    .newsletter-full-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .newsletter-full .container { position: relative; z-index: 1; }
    .newsletter-full-content {
      max-width: 720px; margin: 0 auto;
      text-align: center;
    }
    .newsletter-full-eyebrow {
      display: inline-flex; align-items: center; gap: 12px;
      font-size: 12px;
      color: var(--red);
      letter-spacing: 3px;
      text-transform: uppercase;
      margin-bottom: 24px;
    }
    .newsletter-full-eyebrow::before,
    .newsletter-full-eyebrow::after {
      content: ''; width: 32px; height: 1px;
      background: var(--red);
    }
    .newsletter-full h2 {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(28px, 3.5vw, 44px);
      font-weight: 500;
      color: #fff;
      line-height: 1.4;
      letter-spacing: 1px;
      margin-bottom: 24px;
    }
    .newsletter-full h2 em { color: var(--red); font-style: normal; }
    .newsletter-full p {
      font-size: 15px;
      color: rgba(255,255,255,0.7);
      line-height: 2;
      margin-bottom: 40px;
    }
    .newsletter-form-full {
      display: flex; gap: 12px;
      max-width: 520px;
      margin: 0 auto;
    }
    .newsletter-form-full input {
      flex: 1;
      padding: 16px 20px;
      background: rgba(255,255,255,0.06);
      border: 1px solid rgba(255,255,255,0.15);
      color: #fff;
      font-size: 14px;
      font-family: inherit;
      outline: none;
      transition: all .2s;
    }
    .newsletter-form-full input::placeholder { color: rgba(255,255,255,0.5); }
    .newsletter-form-full input:focus {
      border-color: var(--red);
      background: rgba(255,255,255,0.1);
    }
    .newsletter-form-full button {
      padding: 16px 40px;
      background: var(--red);
      color: #fff;
      border: none;
      font-size: 13px;
      font-weight: 500;
      letter-spacing: 2px;
      cursor: pointer;
      transition: background .2s;
      font-family: inherit;
      white-space: nowrap;
    }
    .newsletter-form-full button:hover { background: var(--red-dark); }
    .newsletter-full-note {
      margin-top: 20px;
      font-size: 12px;
      color: rgba(255,255,255,0.4);
      letter-spacing: .5px;
    }

    /* Responsive */
    @media (max-width: 1100px) {
      .blog-layout { grid-template-columns: 1fr; }
      .sidebar {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
      }
    }
    @media (max-width: 960px) {
      .page-header-inner-c { grid-template-columns: 1fr; gap: 40px; }
      .search-wrap { flex-direction: column; align-items: stretch; }
      .search-stats { justify-content: center; }
      .featured-article-card { grid-template-columns: 1fr; }
      .featured-article-cover { min-height: 320px; }
      .featured-article-content { padding: 40px 28px; }
      .blog-grid { grid-template-columns: 1fr; }
      .sidebar { grid-template-columns: 1fr; }
      .newsletter-form-full { flex-direction: column; }
    }

/* ═══ CONTACT ═══ */
    /* ─── CONTACT PAGE ─── */

    /* Page Header with 背景大图 */
    .page-header {
      padding: 160px 0 100px;
      position: relative;
      overflow: hidden;
      color: #fff;
    }
    .page-header-bg {
      position: absolute; inset: 0;
      z-index: 0;
    }
    .page-header-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
      filter: brightness(0.35) saturate(0.85);
    }
    .page-header-bg::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.9) 0%, rgba(20,33,61,0.65) 100%);
    }
    .page-header-inner-c {
      position: relative; z-index: 1;
      display: grid; grid-template-columns: 1.4fr 1fr;
      gap: 60px; align-items: center;
    }
    .header-visual-img {
      position: relative;
      aspect-ratio: 1/1;
      max-height: 380px;
      overflow: hidden;
    }
    .header-visual-img img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .header-visual-img::before {
      content: '';
      position: absolute; top: -1px; left: -1px;
      width: 40px; height: 40px;
      border-top: 2px solid var(--red);
      border-left: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-img::after {
      content: '';
      position: absolute; bottom: -1px; right: -1px;
      width: 40px; height: 40px;
      border-bottom: 2px solid var(--red);
      border-right: 2px solid var(--red);
      z-index: 2;
    }
    .header-visual-badge {
      position: absolute;
      bottom: -20px; left: -20px;
      background: var(--red);
      color: #fff;
      padding: 20px 28px;
      z-index: 3;
    }
    .header-visual-badge-num {
      font-family: 'Noto Serif SC', serif;
      font-size: 32px;
      font-weight: 500;
      letter-spacing: 1px;
      line-height: 1;
      margin-bottom: 6px;
    }
    .header-visual-badge-txt {
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    /* ═══ Main Contact ═══ */
    .contact-main { background: var(--bg); padding: 100px 0; }
    .contact-grid {
      display: grid; grid-template-columns: 1.3fr 1fr;
      gap: 60px; align-items: start;
    }

    /* ── FORM ── */
    .form-wrap {
      background: #fff;
      padding: 56px 48px;
      border: 1px solid var(--border);
      position: relative;
      box-shadow: 0 30px 80px rgba(20,33,61,0.08);
    }
    .form-wrap::before {
      content: '';
      position: absolute; top: 0; left: 0;
      width: 60px; height: 4px;
      background: var(--red);
    }
    .form-header {
      margin-bottom: 40px;
      padding-bottom: 32px;
      border-bottom: 1px solid var(--border);
    }
    .form-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 28px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 12px;
    }
    .form-title em { font-style: normal; color: var(--red); }
    .form-subtitle {
      font-size: 14px;
      color: var(--muted);
      line-height: 1.9;
    }
    .form-row {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 24px;
      margin-bottom: 28px;
    }
    .form-row.single { grid-template-columns: 1fr; }
    .form-group { display: flex; flex-direction: column; }
    .form-label {
      font-size: 12px;
      color: var(--navy);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 10px;
      font-weight: 500;
      display: flex; align-items: center; gap: 6px;
    }
    .form-label .req { color: var(--red); }
    .form-input,
    .form-select,
    .form-textarea {
      padding: 14px 16px;
      background: var(--bg-soft);
      border: 1px solid var(--border);
      color: var(--text);
      font-size: 14px;
      font-family: inherit;
      transition: all .2s;
      border-radius: 0;
      outline: none;
    }
    .form-input:focus,
    .form-select:focus,
    .form-textarea:focus {
      border-color: var(--red);
      background: #fff;
    }
    .form-textarea {
      resize: vertical;
      min-height: 140px;
      line-height: 1.7;
    }
    .form-select {
      appearance: none;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%2314213D' stroke-width='1.5' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: right 16px center;
      padding-right: 40px;
      cursor: pointer;
    }
    .form-checkbox {
      display: flex; align-items: center; gap: 10px;
      font-size: 13px;
      color: var(--muted);
      cursor: pointer;
      margin-bottom: 32px;
    }
    .form-checkbox input {
      width: 16px; height: 16px;
      accent-color: var(--red);
    }
    .form-checkbox a { color: var(--navy); text-decoration: underline; }
    .form-submit {
      width: 100%;
      padding: 18px 40px;
      background: var(--red);
      color: #fff;
      border: none;
      font-size: 14px;
      font-weight: 500;
      letter-spacing: 3px;
      cursor: pointer;
      transition: background .2s;
      font-family: inherit;
      display: flex; align-items: center; justify-content: center;
      gap: 12px;
    }
    .form-submit:hover { background: var(--red-dark); }
    .form-submit::after { content: '→'; font-size: 18px; }

    /* ── Contact Form 7 适配 ── */
    .wpcf7 {
      max-width: 860px;
      margin: 0 auto;
    }
    .wpcf7-form p {
      margin: 0;
    }
    .wpcf7-form br {
      display: none;
    }
    .wpcf7 .hidden-fields-container {
      display: none;
    }
    .wpcf7-form-control-wrap {
      display: block;
      margin-top: 8px;
    }
    /* checkbox/acceptance 保持行内，文字跟在后面 */
    .wpcf7-form p:has(.wpcf7-acceptance) {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 13px;
      color: var(--muted);
    }
    .wpcf7-form p:has(.wpcf7-acceptance) .wpcf7-form-control-wrap {
      display: inline;
      margin-top: 0;
    }
    .wpcf7-form-control {
      width: 100%;
      padding: 14px 16px;
      background: var(--bg-soft);
      border: 1px solid var(--border);
      color: var(--text);
      font-size: 14px;
      font-family: inherit;
      transition: all .2s;
      border-radius: 0;
      outline: none;
      box-sizing: border-box;
    }
    .wpcf7-form-control:focus {
      border-color: var(--red);
      background: #fff;
    }
    textarea.wpcf7-form-control {
      resize: vertical;
      min-height: 140px;
      line-height: 1.7;
    }
    select.wpcf7-form-control {
      appearance: none;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%2314213D' stroke-width='1.5' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: right 16px center;
      padding-right: 40px;
      cursor: pointer;
    }
    .wpcf7-submit {
      width: 100%;
      padding: 18px 40px;
      background: var(--red);
      color: #fff;
      border: none;
      font-size: 14px;
      font-weight: 500;
      letter-spacing: 3px;
      cursor: pointer;
      transition: background .2s;
      font-family: inherit;
    }
    .wpcf7-submit:hover { background: var(--red-dark); }
    .wpcf7-submit:disabled {
      background: var(--red);
      opacity: 1;
      cursor: pointer;
    }
    .wpcf7-spinner {
      display: none;
    }
    .wpcf7-list-item {
      display: inline-block;
      margin: 0;
    }
    .wpcf7-list-item input[type="checkbox"] {
      width: 16px; height: 16px;
      accent-color: var(--red);
      margin-right: 6px;
      vertical-align: middle;
    }
    .wpcf7-not-valid-tip {
      font-size: 12px;
      color: var(--red);
      margin-top: 6px;
    }
    .wpcf7-response-output {
      font-size: 14px;
      padding: 16px 20px;
      margin: 24px 0 0;
      border: 1px solid var(--border);
      text-align: center;
    }
    .wpcf7 form.sent .wpcf7-response-output {
      border-color: #4caf50;
      color: #2e7d32;
      background: #f1f8e9;
    }
    @media (max-width: 768px) {
      .wpcf7-form { padding: 40px 28px; }
    }

    /* ── CONTACT INFO with photos ── */
    .info-wrap { display: flex; flex-direction: column; gap: 24px; }

    /* 顾问团队卡片 */
    .consultant-card {
      background: var(--navy);
      color: #fff;
      overflow: hidden;
      position: relative;
    }
    .consultant-photo {
      aspect-ratio: 16/9;
      overflow: hidden;
      position: relative;
    }
    .consultant-photo img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .consultant-photo::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.9) 0%, rgba(20,33,61,0.2) 60%, transparent 100%);
    }
    .consultant-tag {
      position: absolute;
      top: 16px; left: 16px;
      z-index: 2;
      background: var(--red);
      color: #fff;
      padding: 6px 14px;
      font-size: 11px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }
    .consultant-title-overlay {
      position: absolute;
      bottom: 16px; left: 20px; right: 20px;
      z-index: 2;
      color: #fff;
    }
    .consultant-title-overlay-lbl {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 4px;
    }
    .consultant-title-overlay-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 18px;
      font-weight: 500;
      letter-spacing: 1px;
    }
    .consultant-body {
      padding: 24px 28px 28px;
    }
    .consultant-body p {
      font-size: 13px;
      color: rgba(255,255,255,0.75);
      line-height: 1.9;
      margin-bottom: 20px;
    }
    .consultant-line {
      display: flex; align-items: center; gap: 16px;
      padding: 16px 0;
      border-top: 1px solid rgba(255,255,255,0.1);
    }
    .consultant-line-icon {
      width: 40px; height: 40px;
      background: rgba(255,255,255,0.08);
      color: var(--red);
      display: flex; align-items: center; justify-content: center;
    }
    .consultant-line-info {
      flex: 1;
    }
    .consultant-line-label {
      font-size: 11px;
      color: rgba(255,255,255,0.5);
      letter-spacing: 2px;
      text-transform: uppercase;
    }
    .consultant-line-value {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px;
      color: #fff;
      letter-spacing: 1px;
      margin-top: 2px;
    }

    /* 联系方式简卡 */
    .info-card {
      background: #fff;
      border: 1px solid var(--border);
      padding: 24px 28px;
      display: flex; align-items: center; gap: 20px;
      transition: all .2s;
    }
    .info-card:hover {
      border-color: var(--red);
      transform: translateX(4px);
    }
    .info-icon {
      width: 48px; height: 48px;
      background: var(--bg-soft);
      border: 1px solid var(--border);
      color: var(--red);
      display: flex; align-items: center; justify-content: center;
      flex-shrink: 0;
    }
    .info-label {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 4px;
    }
    .info-value {
      font-family: 'Noto Serif SC', serif;
      font-size: 16px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
    }

    /* QR Codes */
    .qr-card {
      background: #fff;
      border: 1px solid var(--border);
      padding: 28px;
    }
    .qr-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 16px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 8px;
      text-align: center;
    }
    .qr-title em { color: var(--red); font-style: normal; }
    .qr-subtitle {
      font-size: 11px;
      color: var(--muted);
      margin-bottom: 20px;
      text-align: center;
    }
    .qr-images {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 16px;
    }
    .qr-item { text-align: center; }
    .qr-placeholder {
      width: 100%; aspect-ratio: 1/1;
      background: var(--bg-soft);
      border: 1px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      margin-bottom: 10px;
      position: relative;
      overflow: hidden;
    }
    .qr-placeholder img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .qr-label {
      font-size: 11px;
      color: var(--navy);
      letter-spacing: 1px;
      font-weight: 500;
    }

    /* ═══ RESPONSE PROMISE ═══ */
    .response {
      background: var(--navy);
      color: #fff;
      padding: 80px 0;
      position: relative;
      overflow: hidden;
    }
    .response-bg {
      position: absolute; inset: 0;
      z-index: 0;
      opacity: 0.1;
    }
    .response-bg img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .response .container { position: relative; z-index: 1; }
    .response-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 0;
    }
    .response-item {
      text-align: center;
      padding: 20px 24px;
      border-right: 1px solid rgba(255,255,255,0.1);
    }
    .response-item:last-child { border-right: none; }
    .response-icon {
      width: 56px; height: 56px;
      margin: 0 auto 20px;
      border: 1px solid rgba(255,255,255,0.25);
      color: var(--red);
      display: flex; align-items: center; justify-content: center;
      font-size: 22px;
    }
    .response-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 20px; font-weight: 500;
      color: #fff;
      letter-spacing: 1px;
      margin-bottom: 10px;
    }
    .response-desc {
      font-size: 13px;
      color: rgba(255,255,255,0.65);
      line-height: 1.9;
    }

    /* ═══ LOCATION with 大图 ═══ */
    .location { background: var(--bg-soft); padding: 100px 0; }
    .location-grid {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 60px; align-items: center;
    }
    .location-info {
      padding-right: 40px;
    }
    .location-info h2 {
      font-family: 'Noto Serif SC', serif;
      font-size: clamp(28px, 3vw, 40px);
      font-weight: 500;
      color: var(--navy);
      line-height: 1.4;
      letter-spacing: 1px;
      margin-bottom: 32px;
    }
    .location-info h2 em { font-style: normal; color: var(--red); }
    .location-address {
      padding: 32px;
      background: #fff;
      border: 1px solid var(--border);
      border-left: 3px solid var(--red);
      margin-bottom: 32px;
    }
    .location-address strong {
      display: block;
      font-family: 'Noto Serif SC', serif;
      font-size: 18px;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 12px;
      font-weight: 500;
    }
    .location-address p {
      font-size: 14px;
      color: var(--muted);
      line-height: 2;
    }
    .location-meta {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 24px;
      margin-bottom: 32px;
    }
    .meta-item {
      padding: 20px 24px;
      background: #fff;
      border: 1px solid var(--border);
    }
    .meta-label {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 8px;
    }
    .meta-value {
      font-family: 'Noto Serif SC', serif;
      font-size: 15px; font-weight: 500;
      color: var(--navy);
      letter-spacing: .5px;
    }

    /* 地图/办公室实景 */
    .location-visual {
      position: relative;
      aspect-ratio: 1/1;
      overflow: hidden;
    }
    .location-visual img {
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .location-visual::before {
      content: '';
      position: absolute; top: 20px; left: 20px;
      width: 40px; height: 40px;
      border-top: 3px solid var(--red);
      border-left: 3px solid var(--red);
      z-index: 3;
    }
    .location-visual::after {
      content: '';
      position: absolute; bottom: 20px; right: 20px;
      width: 40px; height: 40px;
      border-bottom: 3px solid var(--red);
      border-right: 3px solid var(--red);
      z-index: 3;
    }
    .location-pin {
      position: absolute;
      top: 50%; left: 50%;
      transform: translate(-50%, -50%);
      z-index: 4;
      width: 72px; height: 72px;
      border-radius: 50%;
      background: var(--red);
      color: #fff;
      display: flex; align-items: center; justify-content: center;
      font-size: 28px;
      box-shadow: 0 0 0 12px rgba(200,50,46,0.25), 0 0 0 24px rgba(200,50,46,0.12);
      animation: pulse 2s ease infinite;
    }
    @keyframes pulse {
      0%, 100% { box-shadow: 0 0 0 12px rgba(200,50,46,0.25), 0 0 0 24px rgba(200,50,46,0.12); }
      50% { box-shadow: 0 0 0 18px rgba(200,50,46,0.3), 0 0 0 36px rgba(200,50,46,0.08); }
    }
    .location-visual-caption {
      position: absolute;
      bottom: 32px; left: 50%;
      transform: translateX(-50%);
      z-index: 4;
      background: rgba(20,33,61,0.92);
      color: #fff;
      padding: 12px 24px;
      backdrop-filter: blur(10px);
      text-align: center;
    }
    .location-visual-caption strong {
      display: block;
      font-family: 'Noto Serif SC', serif;
      font-size: 14px;
      letter-spacing: 2px;
      margin-bottom: 2px;
    }
    .location-visual-caption span {
      font-size: 10px;
      color: rgba(255,255,255,0.6);
      letter-spacing: 2px;
    }

    /* Office Gallery */
    .office-gallery-section { background: var(--bg); padding: 100px 0; }
    .office-gallery {
      display: grid;
      grid-template-columns: 2fr 1fr 1fr;
      grid-template-rows: 240px 240px;
      gap: 16px;
    }
    .office-img {
      overflow: hidden;
      position: relative;
      background: var(--navy);
    }
    .office-img img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .office-img:hover img { transform: scale(1.08); }
    .office-img::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(20,33,61,0.6) 0%, transparent 60%);
      opacity: 0;
      transition: opacity .3s;
    }
    .office-img:hover::after { opacity: 1; }
    .office-img-1 { grid-row: 1 / 3; }
    .office-img-caption {
      position: absolute;
      bottom: 20px; left: 20px;
      z-index: 2;
      color: #fff;
      opacity: 0;
      transition: opacity .3s;
    }
    .office-img:hover .office-img-caption { opacity: 1; }
    .office-img-caption-label {
      font-size: 11px;
      color: var(--red);
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 4px;
    }
    .office-img-caption-title {
      font-family: 'Noto Serif SC', serif;
      font-size: 16px;
      letter-spacing: 1px;
    }

    /* ═══ SOCIAL Media 网格 ═══ */
    .social { background: var(--bg-soft); padding: 100px 0; }
    .social-grid {
      display: grid; grid-template-columns: repeat(4, 1fr);
      gap: 24px;
    }
    .social-card {
      background: #fff;
      overflow: hidden;
      border: 1px solid var(--border);
      transition: all .3s;
      cursor: pointer;
    }
    .social-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 20px 50px rgba(20,33,61,0.10);
    }
    .social-cover {
      position: relative;
      aspect-ratio: 4/3;
      overflow: hidden;
      background: var(--navy);
    }
    .social-cover img {
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform .6s;
    }
    .social-card:hover .social-cover img { transform: scale(1.08); }
    .social-cover::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(135deg, rgba(20,33,61,0.65) 0%, rgba(200,50,46,0.3) 100%);
    }
    .social-cover-icon {
      position: absolute;
      top: 50%; left: 50%;
      transform: translate(-50%, -50%);
      z-index: 2;
      color: #fff;
      font-size: 42px;
    }
    .social-body {
      padding: 24px 28px 28px;
      text-align: center;
    }
    .social-name {
      font-family: 'Noto Serif SC', serif;
      font-size: 16px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      margin-bottom: 6px;
    }
    .social-handle {
      font-size: 12px;
      color: var(--muted);
      letter-spacing: 1px;
      margin-bottom: 16px;
      font-family: 'Inter', sans-serif;
    }
    .social-link {
      font-size: 11px;
      color: var(--navy);
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 500;
      display: inline-flex; align-items: center; gap: 8px;
      padding-top: 16px;
      border-top: 1px solid var(--divider);
      width: 100%;
      justify-content: center;
    }
    .social-link::after {
      content: '→';
      transition: transform .2s;
    }
    .social-card:hover .social-link::after {
      transform: translateX(4px);
      color: var(--red);
    }

    /* ═══ FAQ ═══ */
    .contact-faq { background: var(--bg); }
    .faq-list {
      max-width: 900px; margin: 0 auto;
    }
    .faq-item {
      background: #fff;
      border: 1px solid var(--border);
      margin-bottom: 16px;
      cursor: pointer;
      transition: all .2s;
    }
    .faq-item.open { border-color: var(--red); }
    .faq-item:hover { border-color: var(--red); }
    .faq-question {
      padding: 24px 32px;
      font-family: 'Noto Serif SC', serif;
      font-size: 16px; font-weight: 500;
      color: var(--navy);
      letter-spacing: 1px;
      display: flex; align-items: center; justify-content: space-between;
      gap: 24px;
    }
    .faq-question::after {
      content: '+';
      font-size: 24px;
      color: var(--red);
      font-weight: 400;
      flex-shrink: 0;
    }
    .faq-item.open .faq-question::after { content: '−'; }
    .faq-answer {
      display: none;
      padding: 0 32px 24px;
      font-size: 14px;
      color: var(--muted);
      line-height: 2;
    }
    .faq-item.open .faq-answer { display: block; }

    /* Responsive */
    @media (max-width: 960px) {
      .page-header-inner-c { grid-template-columns: 1fr; gap: 40px; }
      .contact-grid { grid-template-columns: 1fr; gap: 40px; }
      .form-wrap { padding: 40px 28px; }
      .form-row { grid-template-columns: 1fr; gap: 20px; }
      .location-grid { grid-template-columns: 1fr; gap: 40px; }
      .location-info { padding-right: 0; }
      .social-grid { grid-template-columns: 1fr 1fr; }
      .response-grid { grid-template-columns: 1fr; gap: 24px; }
      .response-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 24px; }
      .response-item:last-child { border-bottom: none; }
      .office-gallery {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: repeat(3, 200px);
      }
      .office-img-1 { grid-row: 1; grid-column: 1 / 3; }
    }
    @media (max-width: 560px) {
      .social-grid { grid-template-columns: 1fr; }
      .location-meta { grid-template-columns: 1fr; }
      .office-gallery { grid-template-columns: 1fr; grid-template-rows: repeat(5, 200px); }
      .office-img-1 { grid-column: auto; }
    }


/* ═══════════════════════════════════════════════════════
   WORDPRESS ADAPTIONS
   ═══════════════════════════════════════════════════════ */

/* Nav menu WordPress classes */
.nav-links .current-menu-item > a,
.nav-links .current_page_item > a,
.nav-links .current-page-ancestor > a {
  color: var(--navy);
  font-weight: 500;
}
.nav-links .current-menu-item > a::after,
.nav-links .current_page_item > a::after,
.nav-links .current-page-ancestor > a::after {
  width: 100%;
}

/* Mobile nav toggle */
.nav-toggle {
  display: none;
  background: none; border: none;
  cursor: pointer; padding: 8px;
  flex-direction: column; gap: 5px;
  z-index: 101;
}
.nav-toggle span {
  display: block;
  width: 24px; height: 2px;
  background: var(--navy);
  transition: all .3s;
}
@media (max-width: 960px) {
  .nav-toggle { display: flex; }
  .nav-links.nav-open {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 72px; left: 0; right: 0;
    background: #fff;
    padding: 24px;
    gap: 20px;
    border-bottom: 1px solid var(--divider);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
  }
}

/* WordPress content alignment */
.aligncenter { display: block; margin: 0 auto; }
.alignleft { float: left; margin-right: 24px; }
.alignright { float: right; margin-left: 24px; }
.wp-caption { max-width: 100%; }
.wp-caption-text { font-size: 13px; color: var(--muted); }

/* Screen reader text */
.screen-reader-text {
  border: 0; clip: rect(1px,1px,1px,1px);
  clip-path: inset(50%); height: 1px; margin: -1px;
  overflow: hidden; padding: 0; position: absolute;
  width: 1px; word-wrap: normal !important;
}

/* Search form */
.search-form { position: relative; }
.search-form input[type="search"] {
  width: 100%; padding: 16px 56px 16px 24px;
  border: 1px solid var(--border);
  background: #fff; font-size: 15px;
  font-family: inherit; border-radius: 2px;
}
.search-form button {
  position: absolute; right: 8px; top: 50%;
  transform: translateY(-50%);
  background: var(--navy); color: #fff;
  border: none; padding: 10px 16px;
  border-radius: 2px; cursor: pointer;
  font-size: 13px;
}

/* Blog pagination */
.nav-links.paginate {
  display: flex; justify-content: center;
  gap: 8px; margin-top: 60px;
}
.nav-links.paginate .page-numbers {
  padding: 10px 16px;
  border: 1px solid var(--border);
  color: var(--text); text-decoration: none;
  font-size: 14px; transition: all .2s;
  font-family: inherit;
}
.nav-links.paginate .page-numbers.current {
  background: var(--navy); color: #fff;
  border-color: var(--navy);
}
.nav-links.paginate .page-numbers:hover {
  background: var(--navy); color: #fff;
  border-color: var(--navy);
}

/* WordPress widget defaults */
.widget { margin-bottom: 40px; }
.widget ul { list-style: none; padding: 0; }
.widget ul li { padding: 8px 0; border-bottom: 1px solid var(--divider); }
.widget ul li a { color: var(--text); text-decoration: none; }
.widget ul li a:hover { color: var(--red); }

/* Elementor compatibility */
.elementor-widget-container { font-family: inherit; }
.elementor .btn-primary,
.elementor .btn-ghost,
.elementor .btn-outline { display: inline-flex !important; }

/* Filter tabs spacing */
.filter-wrap { margin-bottom: 48px; }
.filter-tab { font-family: inherit; cursor: pointer; }
button.filter-tab { background: #fff; }

/* Blog & Popular links */
a.blog-card { display: flex; text-decoration: none; color: inherit; }
.blog-title { color: var(--navy); }
a.blog-card:hover .blog-title { color: var(--red); }
a.case-card { display: flex; text-decoration: none; color: inherit; }
.popular-title a {
  color: var(--navy); text-decoration: none;
  transition: color .2s;
}
.popular-title a:hover { color: var(--red); }
.blog-excerpt { color: var(--muted); }

/* Sidebar */
.sidebar { font-family: inherit; }
.side-widget { margin-bottom: 32px; }
.side-widget h3 { font-family: 'Noto Serif SC', serif; font-size: 16px; color: var(--navy); }
