@import url('https://fonts.googleapis.cn/css2?family=Noto+Sans+SC:wght@400;500;700;900&family=Oswald:wght@400;500;600;700&display=swap');

/* ========== 品牌变量 ========== */
:root {
  --navy-950: #061d38;
  --navy-900: #0a2a4f;
  --navy-800: #0d3b66;
  --navy-700: #164d86;
  --brand-600: #1b5fa8;
  --brand-500: #2b6ca8;
  --brand-100: #d8e6f3;
  --brand-50: #eef4fa;
  --safety-400: #fb923c;
  --safety-500: #f97316;
  --safety-600: #ea580c;
  --ink: #1f2937;
  --paper: #f4f6fa;
  --rubber: #111827;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 96px;
}

body {
  font-family: 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  color: var(--ink);
  background: #fff;
}

.font-display { font-family: 'Oswald', 'Noto Sans SC', sans-serif; }
.bg-navy { background-color: var(--navy-900); }
.bg-paper { background-color: var(--paper); }
.section-pad { padding: 96px 0; }

/* ========== 顶部信息条 ========== */
.topbar {
  background: var(--navy-900);
  color: var(--brand-100);
  font-size: 12px;
  height: 36px;
  display: flex;
  align-items: center;
}

/* ========== 导航栏 ========== */
.shadow-sm-custom { box-shadow: 0 1px 3px rgba(6, 29, 56, 0.08); }
.logo-mark {
  width: 44px;
  height: 44px;
  background: var(--navy-800);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
}
.logo-img { height: 56px; width: auto; flex-shrink: 0; }
.logo-mark-light { background: #fff; border-radius: 50%; overflow: hidden; }
.logo-img-sm { height: 38px; width: auto; }
.logo-text { font-size: 21px; color: var(--navy-900); }
.logo-sub { font-size: 11px; letter-spacing: 0.1em; color: var(--brand-500); font-family: 'Oswald', sans-serif; }

#mainNav .nav-link {
  color: var(--ink);
  font-weight: 500;
  font-size: 15px;
  padding: 12px 16px;
  position: relative;
  transition: color 0.25s ease-out;
}
#mainNav .nav-link::after {
  content: '';
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 4px;
  height: 3px;
  background: var(--safety-500);
  transform: scaleX(0);
  transition: transform 0.25s ease-out;
}
#mainNav .nav-link:hover { color: var(--brand-600); }
#mainNav .nav-link.active { color: var(--navy-800); font-weight: 700; }
#mainNav .nav-link.active::after { transform: scaleX(1); }

.nav-phone { color: var(--navy-800); }
.nav-phone i { color: var(--safety-500); font-size: 22px; }
.nav-phone small { color: #9ca3af; font-size: 11px; }
.nav-phone strong { font-size: 18px; letter-spacing: 0.03em; }

/* 语言切换入口 */
#mainNav .nav-lang {
  border-left: 1px solid #e5e7eb;
  margin-left: 6px;
  color: #9ca3af;
}
#mainNav .nav-lang::after { display: none; }
#mainNav .nav-lang:hover { color: var(--brand-600); }

/* ========== Hero 轮播 ========== */
.hero-section { position: relative; }
#heroCarousel { height: 680px; }
#heroCarousel .carousel-inner,
#heroCarousel .carousel-item { height: 100%; }
#heroCarousel .carousel-item img {
  height: 100%;
  object-fit: cover;
}
.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(6, 29, 56, 0.92), rgba(10, 42, 79, 0.72), rgba(10, 42, 79, 0.35));
}
.carousel-fade .carousel-item { transition: opacity 0.7s ease-out; }

.hero-content {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  pointer-events: none;
  z-index: 5;
}
.hero-content .btn { pointer-events: auto; }
.hero-eyebrow {
  color: var(--safety-500);
  font-size: 14px;
  letter-spacing: 0.3em;
  font-weight: 500;
  margin-bottom: 16px;
}
.hero-title {
  color: #fff;
  font-weight: 900;
  font-size: 52px;
  line-height: 1.25;
}
.hero-desc {
  color: var(--brand-100);
  font-size: 16px;
  line-height: 1.9;
  max-width: 560px;
  margin-top: 20px;
}

.btn-accent {
  background: var(--safety-500);
  border-color: var(--safety-500);
  color: #fff;
  font-weight: 500;
  border-radius: 4px;
  padding: 12px 32px;
  transition: background 0.25s ease-out, transform 0.25s ease-out;
}
.btn-accent:hover, .btn-accent:focus {
  background: var(--safety-600);
  border-color: var(--safety-600);
  color: #fff;
  transform: translateY(-2px);
}
.btn-outline-light { border-radius: 4px; padding: 12px 32px; font-weight: 500; }
.btn-outline-light:hover { background: rgba(255, 255, 255, 0.12); }
.btn-outline-accent {
  border: 1px solid var(--safety-500);
  color: var(--safety-600);
  background: transparent;
  font-weight: 500;
  border-radius: 4px;
  padding: 12px 32px;
  transition: background 0.25s ease-out, color 0.25s ease-out, border-color 0.25s ease-out;
}
.btn-outline-accent:hover, .btn-outline-accent:focus {
  background: var(--safety-500);
  border-color: var(--safety-500);
  color: #fff;
}

.hero-indicators {
  position: absolute;
  bottom: 96px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 10px;
  z-index: 6;
}
.hero-indicators button {
  width: 40px;
  height: 4px;
  border: 0;
  background: rgba(255, 255, 255, 0.35);
  transition: background 0.25s ease-out;
}
.hero-indicators button.active { background: var(--safety-500); }

.hero-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  border: 1px solid rgba(255, 255, 255, 0.4);
  background: rgba(6, 29, 56, 0.25);
  color: #fff;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 6;
  opacity: 0;
  transition: opacity 0.25s ease-out, background 0.25s ease-out;
}
#heroCarousel:hover .hero-arrow { opacity: 1; }
.hero-arrow:hover { background: var(--safety-500); border-color: var(--safety-500); color: #fff; }
.hero-arrow-prev { left: 24px; }
.hero-arrow-next { right: 24px; }

/* 数据条 */
.stats-wrap { position: relative; z-index: 10; margin-top: -64px; }
.stats-bar { background: #fff; }
.stats-item { padding: 28px 24px; border-right: 1px solid var(--brand-50); }
.stats-item:last-child { border-right: 0; }
.stats-num { font-size: 44px; font-weight: 600; color: var(--navy-800); line-height: 1; margin-bottom: 8px; }
.stats-num small { font-size: 18px; color: var(--safety-500); margin-left: 2px; }
.stats-label { font-size: 13px; color: #6b7280; margin-bottom: 0; }

/* ========== 版块标题 ========== */
.section-head { text-align: center; margin-bottom: 40px; }
.eyebrow { color: var(--safety-500); font-size: 14px; font-weight: 600; letter-spacing: 0.3em; margin-bottom: 12px; }
.section-title { font-size: 36px; font-weight: 900; color: var(--navy-900); }
.title-bar { width: 56px; height: 4px; background: var(--safety-500); margin-top: 16px; }
.section-desc { color: #6b7280; max-width: 640px; margin: 16px auto 0; line-height: 1.8; }
.bg-navy .section-desc { color: rgba(216, 230, 243, 0.75); }

.watermark {
  position: absolute;
  top: -10px;
  right: 0;
  font-size: 150px;
  font-weight: 700;
  line-height: 1;
  color: rgba(255, 255, 255, 0.05);
  user-select: none;
  pointer-events: none;
}

/* ========== 公司简介 ========== */
.text-body-custom { color: #4b5563; line-height: 1.9; margin-bottom: 14px; }
.text-body-custom strong { color: var(--navy-800); }

/* 公司简介「了解更多」 */
.about-more-row { margin-top: 2px; }
.about-more-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--brand-600);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-decoration: none;
  padding-bottom: 2px;
  border-bottom: 1px solid transparent;
  transition: color 0.2s ease-out, border-color 0.2s ease-out;
}
.about-more-link:hover { color: var(--safety-600); border-bottom-color: var(--safety-600); }
.about-more-link i { font-size: 14px; transition: transform 0.25s ease-out; }
.about-more-link[aria-expanded="true"] i { transform: rotate(180deg); }
#aboutMore .text-body-custom:last-child { margin-bottom: 4px; }

.video-frame { position: relative; }
.video-stage { position: relative; }
/* 视频容器比例：16:9 基础上高度增加 20%（56.25% → 67.5%） */
.ratio-video { --bs-aspect-ratio: 67.5%; }
.video-box {
  position: relative;
  overflow: hidden;
  background: var(--navy-950);
  box-shadow: 0 12px 32px rgba(6, 29, 56, 0.18);
}
.video-box video { width: 100%; height: 100%; object-fit: cover; display: block; }
.video-poster {
  position: absolute;
  inset: 0;
  border: 0;
  width: 100%;
  background: transparent;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.3s ease-out;
}
.video-poster:hover { background: rgba(6, 29, 56, 0.25); }
.video-play-icon {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: var(--safety-500);
  color: #fff;
  font-size: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.25s ease-out, background 0.25s ease-out;
}
.video-poster:hover .video-play-icon { transform: scale(1.08); background: var(--safety-600); }
.video-play-text { color: #fff; font-size: 14px; letter-spacing: 0.2em; margin-top: 14px; text-shadow: 0 1px 4px rgba(0,0,0,0.5); }
.video-badge {
  /* 由压边浮层改为画面下方的常规块，不再遮挡视频内容 */
  position: relative;
  width: max-content;
  margin: 20px -12px 0 auto;
  background: var(--navy-800);
  color: #fff;
  padding: 20px 32px;
  text-align: center;
  border-top: 3px solid var(--safety-500);
  box-shadow: 0 8px 20px rgba(6, 29, 56, 0.14);
}
.video-badge-year { font-size: 36px; font-weight: 600; line-height: 1; margin-bottom: 6px; }
.video-badge-text { font-size: 12px; color: var(--brand-100); margin-bottom: 0; }
.video-side {
  position: absolute;
  left: -14px;
  top: 24px;
  bottom: 52px;
  width: 6px;
  background: var(--safety-500);
}
.video-fallback {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--brand-100);
  font-size: 14px;
  letter-spacing: 0.1em;
  background: linear-gradient(135deg, var(--navy-900), var(--navy-800));
}

.strength-item {
  display: flex;
  gap: 14px;
  padding: 18px;
  background: var(--paper);
  height: 100%;
  transition: transform 0.25s ease-out;
}
.strength-item:hover { transform: translateY(-3px); }
.strength-item i { color: var(--safety-500); font-size: 24px; margin-top: 2px; }
.strength-title { font-size: 15px; font-weight: 700; color: var(--navy-900); margin-bottom: 4px; }
.strength-desc { font-size: 13px; color: #6b7280; margin-bottom: 0; }

/* ========== 产品介绍（浅灰底白卡风格） ========== */
.watermark-dark { color: rgba(10, 42, 79, 0.05); }
.product-card {
  background: #fff;
  border: 1px solid var(--brand-100);
  height: 100%;
  transition: transform 0.3s ease-out, border-color 0.3s ease-out, box-shadow 0.3s ease-out;
}
.product-card:hover {
  transform: translateY(-6px);
  border-color: rgba(249, 115, 22, 0.5);
  box-shadow: 0 16px 40px rgba(10, 42, 79, 0.12);
}
.product-img { aspect-ratio: 4 / 3; overflow: hidden; }
.product-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease-out; }
.product-card:hover .product-img img { transform: scale(1.05); }
.product-body { padding: 28px; }
.product-en { color: var(--safety-600); font-size: 11px; letter-spacing: 0.25em; margin-bottom: 8px; }
.product-name { color: var(--navy-900); font-size: 20px; font-weight: 700; margin-bottom: 12px; transition: color 0.25s ease-out; }
.product-card:hover .product-name { color: var(--brand-600, #1b5fa8); }
.product-desc { color: #6b7280; font-size: 14px; line-height: 1.8; }
.product-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.product-tags span {
  border: 1px solid var(--brand-100);
  background: var(--paper);
  color: #1b5fa8;
  font-size: 12px;
  padding: 4px 12px;
}

/* ========== 产品应用 ========== */
.bg-mist { background: var(--brand-100); }
.app-card {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--navy-950);
  box-shadow: 0 2px 14px rgba(10, 42, 79, 0.10);
  /* 横幅领域跳转落在卡片上时，避免被 sticky 导航条遮挡 */
  scroll-margin-top: 110px;
}
.app-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease-out; }
.app-card:hover img { transform: scale(1.06); }
.app-num {
  position: absolute;
  top: 16px;
  left: 16px;
  color: rgba(255, 255, 255, 0.55);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 0.05em;
}
.app-mask {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(6, 29, 56, 0.75) 0%, rgba(6, 29, 56, 0.18) 55%, transparent 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 24px;
}
.app-en { color: var(--safety-400); font-size: 11px; letter-spacing: 0.25em; margin-bottom: 4px; }
.app-name { color: #fff; font-size: 20px; font-weight: 700; margin-bottom: 6px; }
.app-desc {
  color: rgba(216, 230, 243, 0.85);
  font-size: 13px;
  margin-bottom: 0;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.35s ease-out, opacity 0.35s ease-out;
}
.app-card:hover .app-desc { max-height: 60px; opacity: 1; }

/* ========== 新闻动态 ========== */
.news-card {
  border: 1px solid #e5eaf1;
  height: 100%;
  background: #fff;
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
}
.news-card:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(6, 29, 56, 0.1); }
.news-img { aspect-ratio: 16 / 10; overflow: hidden; }
.news-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease-out; }
.news-card:hover .news-img img { transform: scale(1.05); }
.news-body { padding: 24px 24px 28px; }
.news-date { display: flex; align-items: baseline; gap: 10px; margin-bottom: 12px; }
.news-day { font-size: 32px; font-weight: 600; color: var(--navy-800); line-height: 1; }
.news-ym { font-size: 13px; color: #9ca3af; }
.news-title { font-size: 17px; font-weight: 700; color: var(--navy-900); line-height: 1.5; transition: color 0.25s ease-out; }
.news-card:hover .news-title { color: var(--brand-600); }
.news-summary {
  font-size: 14px;
  color: #6b7280;
  line-height: 1.8;
  margin-bottom: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ========== 联系我们 ========== */
.contact-desc { color: rgba(216, 230, 243, 0.8); line-height: 1.9; margin-bottom: 28px; }
.contact-list { list-style: none; padding: 0; margin: 0; }
.contact-list li { display: flex; gap: 16px; padding: 18px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.contact-list li:last-child { border-bottom: 0; }
.contact-icon {
  width: 46px;
  height: 46px;
  flex-shrink: 0;
  border: 1px solid rgba(249, 115, 22, 0.45);
  color: var(--safety-500);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
}
.contact-label { font-size: 13px; color: rgba(216, 230, 243, 0.6); margin-bottom: 4px; }
.contact-value { font-size: 17px; color: #fff; font-weight: 500; margin-bottom: 0; }

.form-card {
  background: #fff;
  border-radius: 16px;
  padding: 40px;
  box-shadow: 0 20px 48px rgba(6, 29, 56, 0.28);
}
.form-title { font-size: 24px; font-weight: 900; color: var(--navy-900); margin-bottom: 6px; }
.form-sub { font-size: 13px; color: #6b7280; margin-bottom: 24px; }
.form-card .form-label { font-size: 14px; font-weight: 500; color: var(--ink); }
.form-card .form-control {
  border-radius: 4px;
  border-color: #d7dee8;
  padding: 10px 14px;
  font-size: 14px;
}
.form-card .form-control:focus {
  border-color: var(--brand-600);
  box-shadow: 0 0 0 3px rgba(27, 95, 168, 0.15);
}
.form-card .form-control.is-invalid { border-color: #dc2626; }
.form-tip { font-size: 13px; margin: 10px 0 0; min-height: 20px; }
.form-tip.text-success-custom { color: #15803d; }
.form-tip.text-error-custom { color: #dc2626; }

/* 在线留言验证码 */
.captcha-img {
  display: inline-block;
  height: 40px;
  width: auto;
  max-width: 100%;
  border: 1px solid #d7dee8;
  border-radius: 4px;
  background: #f3fbfe;
  cursor: pointer;
  vertical-align: middle;
  transition: border-color 0.25s ease-out;
}
.captcha-img:hover { border-color: var(--brand-600); }

/* layui 弹窗（layer.msg）样式微调，z-index 由 JS 中 layer.config 统一设置 */
.layui-layer { font-family: inherit; }
.layui-layer .layui-layer-content { font-size: 14px; line-height: 1.7; }

/* ========== 留言提交结果 Bootstrap 模态框 ========== */
:root { --bs-backdrop-zindex: 1050; } /* 背景遮罩需高于 sticky 导航（z-index 1030） */
.message-result-content {
  border: 0;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 24px 60px rgba(6, 29, 56, 0.32);
}
.message-result-header {
  background: var(--navy-900);
  border-bottom: 0;
  padding: 20px 24px;
  gap: 12px;
}
.message-result-check {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #16a34a;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.message-result-title {
  color: #fff;
  font-size: 19px;
  font-weight: 700;
  margin: 0;
  flex: 1 1 auto;
}
.message-result-header .btn-close { filter: invert(1) grayscale(100) brightness(2); }
.message-result-body {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.9;
  padding: 24px;
}
.message-result-footer { border-top: 1px solid #eef1f5; padding: 16px 24px; }

/* ========== 页脚 ========== */
.footer { background: var(--rubber); color: #9ca3af; }
.footer-sub { font-size: 9px; letter-spacing: 0.12em; color: #6b7280; font-family: 'Oswald', sans-serif; }
.footer-text { font-size: 13px; line-height: 1.9; }
.footer-title { color: #fff; font-size: 15px; font-weight: 700; margin-bottom: 18px; position: relative; padding-bottom: 10px; }
.footer-title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 28px; height: 3px; background: var(--safety-500); }
.footer-links { list-style: none; padding: 0; margin: 0; }
.footer-links li { margin-bottom: 10px; }
.footer-links a { color: #9ca3af; text-decoration: none; font-size: 13px; transition: color 0.25s ease-out; }
.footer-links a:hover { color: var(--safety-400); }
.footer-contact { list-style: none; padding: 0; margin: 0; font-size: 13px; }
.footer-contact li { margin-bottom: 12px; line-height: 1.7; }
.footer-contact i { color: var(--safety-500); }
.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding: 20px 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 12px;
  color: #6b7280;
}

/* ========== 内页通用（about.html） ========== */
.page-hero {
  position: relative;
  padding: 88px 0 104px;
  background: var(--navy-950) url('/images/cfx.jpg') center / cover no-repeat;
  overflow: hidden;
}

.page-hero2 {
  position: relative;
  padding: 88px 0 104px;
  background: var(--navy-950) url('/images/cf2.jpg') center / cover no-repeat;
  overflow: hidden;
}
.page-hero3 {
  position: relative;
  /* 与 products.html 横幅（page-hero2 + .cat-jump 约 74px）等高：88+178 = 88+104+74 */
  padding: 88px 0 178px;
  background: var(--navy-950) url('/images/sales2.jpg') center / cover no-repeat;
  overflow: hidden;
}
.page-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(6, 29, 56, 0.94), rgba(10, 42, 79, 0.82) 55%, rgba(10, 42, 79, 0.55));
}
.page-hero .container { position: relative; z-index: 2; }

.page-hero2::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(6, 29, 56, 0.94), rgba(10, 42, 79, 0.82) 55%, rgba(10, 42, 79, 0.55));
}
.page-hero2 .container { position: relative; z-index: 2; }

.page-hero3::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(6, 29, 56, 0.94), rgba(10, 42, 79, 0.82) 55%, rgba(10, 42, 79, 0.55));
}
.page-hero3 .container { position: relative; z-index: 2; }
.page-hero-en { color: rgba(216, 230, 243, 0.6); font-size: 13px; letter-spacing: 0.3em; margin-bottom: 10px; }
.page-hero-title { color: #fff; font-size: 44px; font-weight: 900; line-height: 1.2; }
.page-hero-desc { color: var(--brand-100); font-size: 16px; line-height: 1.9; max-width: 620px; margin: 18px 0 0; }
.page-crumb { list-style: none; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 0; margin: 0 0 22px; font-size: 13px; }
.page-crumb a { color: rgba(216, 230, 243, 0.72); text-decoration: none; transition: color 0.25s ease-out; }
.page-crumb a:hover { color: var(--safety-400); }
.page-crumb li + li::before { content: '/'; margin-right: 10px; color: rgba(255, 255, 255, 0.3); }
.page-crumb .crumb-current { color: var(--safety-400); }

/* 公司概况配图与压角卡片 */
.profile-figure { position: relative; padding-bottom: 28px; }
.profile-figure img { width: 100%; display: block; box-shadow: 0 12px 32px rgba(6, 29, 56, 0.18); }
.profile-note {
  position: absolute;
  right: 0;                 /* 与图片右边缘齐平，不留空位 */
  bottom: 0;
  max-width: 320px;
  background: var(--navy-800);
  color: #fff;
  padding: 18px 22px;
  border-right: 4px solid var(--safety-500);
  text-align: right;
}
.profile-note-title { font-size: 12px; letter-spacing: 0.18em; color: var(--brand-100); margin-bottom: 6px; }
.profile-note-text { font-size: 17px; font-weight: 700; margin: 0; line-height: 1.6; }

/* 经营宗旨 / 服务原则 */
.motto-card {
  height: 100%;
  background: var(--brand-50);
  border-left: 4px solid var(--safety-500);
  padding: 22px 26px;
  transition: transform 0.25s ease-out, box-shadow 0.25s ease-out;
}
.motto-card:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(6, 29, 56, 0.08); }
.motto-label { font-size: 12px; letter-spacing: 0.2em; color: var(--brand-500); margin-bottom: 8px; }
.motto-text { font-size: 17px; font-weight: 700; color: var(--navy-900); margin-bottom: 6px; }
.motto-desc { font-size: 13px; color: #6b7280; margin: 0; line-height: 1.8; }

/* 内页底部行动条 */
.cta-band { background: linear-gradient(120deg, var(--navy-950), var(--navy-800)); }

/* ========== 新闻列表 ========== */
.news-row {
  display: flex;
  align-items: stretch;
  background: #fff;
  border: 1px solid #e5eaf1;
  scroll-margin-top: 120px;
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out, border-color 0.3s ease-out;
}
/* 条目间距：覆盖模版里的 Bootstrap mt-4（24px），加宽 50% 至 36px */
section#list .news-row + .news-row { margin-top: 36px; }
.news-row:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(6, 29, 56, 0.1); border-color: rgba(249, 115, 22, 0.45); }
/* 图片统一 360px 宽；源图 2848×1600（1.78:1）对应高 202px，以此锁定卡片最小高度，保证各条图片尺寸一致 */
.news-row-img { flex: 0 0 360px; align-self: stretch; min-height: 202px; overflow: hidden; }
.news-row-img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease-out; }
.news-row:hover .news-row-img img { transform: scale(1.05); }
.news-row-body { flex: 1 1 auto; min-width: 0; padding: 24px 28px; }
.news-row-title { font-size: 19px; font-weight: 700; color: var(--navy-900); line-height: 1.5; margin-bottom: 10px; transition: color 0.25s ease-out; }
.news-row:hover .news-row-title { color: var(--brand-600); }
.news-row-featured .news-row-body { padding: 28px; }
.news-row-featured .news-row-title { font-size: 24px; }
.news-tag { display: inline-block; font-size: 12px; letter-spacing: 0.08em; color: var(--brand-600); background: var(--brand-50); border: 1px solid var(--brand-100); padding: 3px 12px; }
.news-row .news-date { align-items: center; }
.news-tip {
  font-size: 13px;
  color: #6b7280;
  background: #fff;
  border: 1px dashed #d7dee8;
  padding: 14px 18px;
  line-height: 1.8;
}
.news-tip i { color: var(--safety-500); }

@media (max-width: 767.98px) {
  .news-row, .news-row-featured { flex-direction: column; }
  .news-row-img, .news-row-featured .news-row-img { flex-basis: auto; width: 100%; min-height: 0; aspect-ratio: 16 / 9; }
  .news-row-body, .news-row-featured .news-row-body { padding: 18px; }
  .news-row-featured .news-row-title { font-size: 20px; }
}

/* ========== 产品介绍页（products.html） ========== */
/* 内页横幅下方的分类快捷入口 */
.cat-jump { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin-top: 28px; }
.cat-jump a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 24px;
  background: #fff;
  border: 1px solid transparent;
  color: var(--navy-900);
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.25s ease-out, border-color 0.25s ease-out, transform 0.25s ease-out, box-shadow 0.25s ease-out;
}
.cat-jump a:hover { color: var(--brand-600); border-color: var(--safety-500); transform: translateY(-2px); box-shadow: 0 10px 24px rgba(6, 29, 56, 0.18); }
.cat-jump a i { color: var(--safety-500); font-size: 18px; }
.cat-jump a small { font-size: 12px; font-weight: 400; color: #9ca3af; }

/* 分类标题条 */
.cat-head {
  display: flex;
  align-items: baseline;
  gap: 14px;
  padding-bottom: 14px;
  margin-bottom: 32px;
  border-bottom: 1px solid #e5eaf1;
}
.cat-head h2 { margin: 0; font-size: 26px; font-weight: 800; color: var(--navy-900); }
.cat-head .cat-count { font-size: 13px; color: #9ca3af; }
.cat-head .cat-en { margin-left: auto; font-size: 11px; letter-spacing: 0.22em; color: var(--safety-600); }

/* 护舷型号卡 */
.fender-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 24px 26px;
  background: #fff;
  border: 1px solid #e5eaf1;
  border-top: 3px solid var(--navy-800);
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out, border-color 0.3s ease-out;
}
.fender-card .card-more { margin-top: auto; padding-top: 18px; }
.fender-card:hover { transform: translateY(-6px); border-color: rgba(249, 115, 22, 0.45); border-top-color: var(--safety-500); box-shadow: 0 16px 40px rgba(10, 42, 79, 0.12); }
.fender-head { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
.fender-code {
  flex-shrink: 0;
  min-width: 74px;
  padding: 8px 14px;
  text-align: center;
  line-height: 1;
  font-size: 26px;
  font-weight: 700;
  color: var(--navy-800);
  background: var(--paper);
  border: 1px solid #e5eaf1;
  transition: color 0.25s ease-out, background 0.25s ease-out, border-color 0.25s ease-out;
}
.fender-card:hover .fender-code { color: var(--brand-600); background: var(--brand-50); border-color: var(--brand-100); }
.fender-name { margin: 0 0 4px; font-size: 18px; font-weight: 700; color: var(--navy-900); line-height: 1.4; }
.fender-en { margin: 0; font-size: 10px; letter-spacing: 0.18em; color: var(--safety-600); }
.fender-desc { margin: 0; font-size: 14px; color: #6b7280; line-height: 1.85; }

/* 产品总览卡（图 + 文左右分栏，适用于单一产品与系列概览） */
.cat-feature .product-img { aspect-ratio: auto; height: 100%; min-height: 260px; }

/* 锁定内页锚点跳转位置，避免被 sticky 导航条遮挡 */
#plug, #fender { scroll-margin-top: 110px; }

/* 卡片上的「查看详情」链接 */
.card-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 18px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--brand-600);
  text-decoration: none;
  transition: color 0.2s ease-out, gap 0.2s ease-out;
}
.card-more:hover { color: var(--safety-600); gap: 10px; }
/* 卡片内通向详情页的链接（标题、缩略图）：只扩展点击区域，颜色沿用卡片本身 */
a.card-link { color: inherit; text-decoration: none; }
.news-row-img a.card-link, .news-img a.card-link { display: block; height: 100%; }

/* ========== 产品详情页（shows.html） ========== */
/* 默认全部可见（无 JS 时退化为纵向堆叠），由 shows.js 给非当前项加 .is-hidden */
.detail-item + .detail-item { margin-top: 48px; padding-top: 40px; border-top: 1px solid #e5eaf1; }
.detail-item.is-hidden { display: none; }
.detail-bar { background: var(--navy-950); padding: 20px 0; }
.crumb-back { font-size: 13px; color: rgba(216, 230, 243, 0.8); text-decoration: none; transition: color 0.2s ease-out; }
.crumb-back:hover { color: var(--safety-500); }
.detail-visual { position: relative; overflow: hidden; border: 1px solid #e5eaf1; }
.detail-visual-img { aspect-ratio: 16 / 9; }
.detail-visual-img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.detail-visual-code {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 56px 24px;
  text-align: center;
  background: linear-gradient(135deg, var(--navy-900), var(--navy-800));
}
.detail-visual-code .code { margin: 0; font-size: 76px; font-weight: 700; line-height: 1; letter-spacing: 0.04em; color: #fff; }
.detail-visual-code .code-en { margin: 0; font-size: 12px; letter-spacing: 0.28em; color: var(--safety-500); }
.detail-visual-code .code-cat { margin: 6px 0 0; font-size: 13px; color: rgba(216, 230, 243, 0.7); }
.detail-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 26px; }
.detail-cat { font-size: 12px; letter-spacing: 0.08em; color: var(--brand-600); background: var(--brand-50); border: 1px solid var(--brand-100); padding: 4px 12px; }
.detail-code-tag { font-size: 12px; color: #6b7280; background: var(--paper); border: 1px solid #e5eaf1; padding: 4px 12px; }
/* 当前位置面包屑（每个产品条目顶部） */
.detail-path {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding-bottom: 14px;
  margin-bottom: 20px;
  border-bottom: 1px solid #e5eaf1;
  font-size: 13px;
  color: #9ca3af;
}
.detail-path a { color: #6b7280; text-decoration: none; transition: color 0.2s ease-out; }
.detail-path a:hover { color: var(--brand-600); }
.detail-path .sep { color: #d1d5db; }
.detail-path .here { color: var(--navy-900); font-weight: 600; }
.detail-h1 { margin: 0 0 6px; font-size: 30px; font-weight: 800; color: var(--navy-900); }
.detail-en { margin: 0 0 22px; font-size: 12px; letter-spacing: 0.22em; color: var(--safety-600); }
.detail-lead { margin: 18px 0 0; font-size: 15px; color: #4b5563; line-height: 1.95; }
.detail-block { margin-top: 28px; }
.detail-block h3 { position: relative; padding-bottom: 10px; margin-bottom: 16px; font-size: 17px; font-weight: 700; color: var(--navy-900); }
.detail-block h3::after { content: ''; position: absolute; left: 0; bottom: 0; width: 28px; height: 3px; background: var(--safety-500); }
.detail-list { list-style: none; margin: 0; padding: 0; }
.detail-list li { position: relative; padding-left: 22px; margin-bottom: 10px; font-size: 14px; color: #4b5563; line-height: 1.85; }
.detail-list li:last-child { margin-bottom: 0; }
.detail-list li::before { content: ''; position: absolute; left: 0; top: 10px; width: 8px; height: 8px; background: var(--safety-500); }
.detail-note { margin-top: 28px; padding: 18px 22px; background: var(--paper); border: 1px dashed #d7dee8; font-size: 13px; color: #6b7280; line-height: 1.85; }
.detail-note i { color: var(--safety-500); }
.detail-nav { display: flex; gap: 16px; margin-top: 36px; padding-top: 26px; border-top: 1px solid #e5eaf1; }
.detail-nav a {
  flex: 1 1 0;
  min-width: 0;
  display: block;
  padding: 14px 18px;
  background: #fff;
  border: 1px solid #e5eaf1;
  text-decoration: none;
  transition: transform 0.25s ease-out, box-shadow 0.25s ease-out, border-color 0.25s ease-out;
}
.detail-nav a:hover { transform: translateY(-2px); border-color: rgba(249, 115, 22, 0.5); box-shadow: 0 10px 24px rgba(6, 29, 56, 0.08); }
.detail-nav small { display: block; margin-bottom: 4px; font-size: 11px; letter-spacing: 0.12em; color: #9ca3af; }
.detail-nav span { display: block; font-size: 15px; font-weight: 600; color: var(--navy-900); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.detail-nav a.next { text-align: right; }

/* 侧边：产品目录 + 联系卡 */
.detail-menu-title { position: relative; padding-bottom: 10px; margin-bottom: 8px; font-size: 16px; font-weight: 700; color: var(--navy-900); }
.detail-menu-title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 28px; height: 3px; background: var(--safety-500); }
.detail-menu { background: #fff; border: 1px solid #e5eaf1; }
.detail-menu .m-group { margin: 0; padding: 9px 16px; font-size: 12px; letter-spacing: 0.14em; color: #9ca3af; background: var(--paper); border-bottom: 1px solid #e5eaf1; }
.detail-menu a { display: flex; align-items: center; gap: 10px; padding: 12px 16px; font-size: 14px; color: #4b5563; text-decoration: none; border-bottom: 1px dashed #e5eaf1; transition: color 0.25s ease-out, background 0.25s ease-out; }
.detail-menu a:last-child { border-bottom: 0; }
.detail-menu a:hover { color: var(--brand-600); background: var(--paper); }
.detail-menu a.is-active { color: var(--brand-600); background: var(--brand-50); font-weight: 600; box-shadow: inset 3px 0 0 var(--safety-500); }
.detail-menu .m-code { flex-shrink: 0; width: 42px; font-size: 12px; font-weight: 700; letter-spacing: 0.04em; color: var(--navy-800); }
/* 新闻详情侧边菜单的标题：占满剩余宽度，过长时单行省略 */
.detail-menu .m-title { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.detail-contact { margin-top: 24px; padding: 24px 26px; color: #fff; background: linear-gradient(135deg, var(--navy-900), var(--navy-800)); }
.detail-contact h3 { margin-bottom: 10px; font-size: 16px; font-weight: 700; color: #fff; }
.detail-contact > p { margin: 0 0 16px; font-size: 13px; line-height: 1.85; color: var(--brand-100); }
.detail-contact .c-line { display: flex; gap: 10px; margin-bottom: 10px; font-size: 14px; line-height: 1.7; color: var(--brand-100); }
.detail-contact .c-line i { flex-shrink: 0; margin-top: 3px; color: var(--safety-500); font-size: 15px; }

/* 后台编辑器输出的正文内容 */
.detail-content { margin-top: 26px; font-size: 15px; color: #4b5563; line-height: 1.95; }
.detail-content > *:first-child { margin-top: 0; }
.detail-content p { margin: 0 0 14px; }
.detail-content img { display: block; max-width: 100%; height: auto; margin: 18px 0; }
.detail-content h2, .detail-content h3, .detail-content h4 { margin: 26px 0 12px; font-size: 18px; font-weight: 700; color: var(--navy-900); }
.detail-content ul, .detail-content ol { margin: 14px 0; padding-left: 24px; }
.detail-content li { margin-bottom: 8px; }
.detail-content table { width: 100%; margin: 18px 0; border-collapse: collapse; font-size: 14px; }
.detail-content table td, .detail-content table th { border: 1px solid #e5eaf1; padding: 8px 12px; }
.detail-content table th { background: var(--paper); color: var(--navy-900); }
.detail-content a { color: var(--brand-600); }
.detail-content a:hover { color: var(--safety-600); }
.detail-content blockquote { margin: 18px 0; padding: 12px 18px; background: var(--paper); border-left: 3px solid var(--safety-500); color: #6b7280; }
.detail-menu p.m-group:first-child { margin-top: 0; }

/* ========== 产品应用页（sales.html） ========== */
/* 领域详情条目：左侧编号与领域名，右侧应用说明与常用产品 */
.app-item {
  padding: 26px 30px;
  background: #fff;
  border: 1px solid #e5eaf1;
  border-left: 3px solid var(--navy-800);
  scroll-margin-top: 110px;
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out, border-color 0.3s ease-out;
}
.app-item:hover { transform: translateY(-4px); border-left-color: var(--safety-500); box-shadow: 0 16px 40px rgba(10, 42, 79, 0.10); }
.app-item + .app-item { margin-top: 20px; }
.app-item-num { font-size: 40px; font-weight: 700; line-height: 1; color: #dfe6ee; }
.app-item-title { margin: 0; font-size: 20px; font-weight: 800; color: var(--navy-900); }
.app-item-en { margin: 4px 0 0; font-size: 11px; letter-spacing: 0.22em; color: var(--safety-600); }
.app-item-body { font-size: 14px; color: #4b5563; line-height: 1.9; }
.app-item-lead { margin: 0; }
.app-item-list { margin: 12px 0 0; padding: 0; list-style: none; }
.app-item-list li { position: relative; padding-left: 18px; margin-bottom: 6px; }
.app-item-list li:last-child { margin-bottom: 0; }
.app-item-list li::before { content: ''; position: absolute; left: 0; top: 9px; width: 7px; height: 7px; background: var(--safety-500); }
.app-item-products { margin: 14px 0 0; padding-top: 12px; border-top: 1px dashed #e5eaf1; font-size: 13px; color: #6b7280; }
.app-item-products a { color: var(--brand-600); text-decoration: none; font-weight: 600; }
.app-item-products a:hover { color: var(--safety-600); }
.app-note { margin-top: 28px; padding: 16px 20px; font-size: 13px; line-height: 1.85; color: #6b7280; background: var(--brand-50); border-left: 3px solid var(--safety-500); }

/* ========== 联系我们页（contact.html） ========== */
/* 横幅快捷入口落在本页面锚点上时，避免被 sticky 导航条遮挡 */
#info, #map, #message { scroll-margin-top: 110px; }

/* 联系方式卡片：图标 + 标题 + 主要内容 + 说明 + 操作链接 */
.contact-card {
  display: flex;
  flex-direction: column;
  padding: 28px 30px;
  background: #fff;
  border: 1px solid #e5eaf1;
  border-top: 3px solid transparent;
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out, border-top-color 0.3s ease-out;
}
.contact-card:hover { transform: translateY(-4px); border-top-color: var(--safety-500); box-shadow: 0 16px 40px rgba(10, 42, 79, 0.10); }
.contact-card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-bottom: 16px;
  font-size: 22px;
  color: #fff;
  background: linear-gradient(135deg, var(--brand-600), var(--navy-800));
}
.contact-card-label { font-size: 12px; letter-spacing: 0.18em; color: var(--brand-500); margin-bottom: 8px; }
.contact-card-value { font-size: 18px; font-weight: 700; color: var(--navy-900); line-height: 1.6; margin-bottom: 10px; overflow-wrap: break-word; }
.contact-card-value a { color: inherit; text-decoration: none; transition: color 0.25s ease-out; }
.contact-card-value a:hover { color: var(--brand-600); }
.contact-tel { font-size: 24px; letter-spacing: 0.02em; }
.contact-card-desc { font-size: 13px; color: #6b7280; line-height: 1.85; margin-bottom: 0; }
.contact-card-more {
  display: inline-flex;
  align-items: center;
  margin-top: auto;              /* 等高卡片中靠底部对齐 */
  padding-top: 16px;
  font-size: 13px;
  font-weight: 600;
  color: var(--brand-600);
  text-decoration: none;
  transition: color 0.25s ease-out;
}
.contact-card-more:hover { color: var(--safety-600); }

/* 厂区位置图：地图不裁切，按原比例完整展示 */
.map-figure { position: relative; }
.map-frame {
  padding: 12px;
  background: #fff;
  border: 1px solid #e5eaf1;
  box-shadow: 0 12px 32px rgba(6, 29, 56, 0.10);
}
.map-frame img { display: block; width: 100%; height: auto; }
.map-badge {
  position: absolute;
  left: 12px;
  bottom: 12px;
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: calc(100% - 24px);
  padding: 14px 18px;
  background: rgba(6, 29, 56, 0.92);
  border-left: 4px solid var(--safety-500);
  color: #fff;
}
.map-badge > i { flex-shrink: 0; font-size: 20px; color: var(--safety-400); }
.map-badge-text { display: block; }
.map-badge-label { display: block; font-size: 11px; letter-spacing: 0.18em; color: var(--brand-100); }
.map-badge-value { display: block; font-size: 15px; font-weight: 700; line-height: 1.6; }

/* 来访提示卡 */
.visit-card {
  padding: 26px 28px;
  background: #fff;
  border: 1px solid #e5eaf1;
  box-shadow: 0 12px 32px rgba(6, 29, 56, 0.06);
}
.visit-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px dashed #e5eaf1;
  font-size: 17px;
  font-weight: 800;
  color: var(--navy-900);
}
.visit-title i { flex-shrink: 0; color: var(--safety-500); font-size: 18px; }
.visit-list { margin: 0; padding: 0; list-style: none; }
.visit-list li { position: relative; padding-left: 18px; margin-bottom: 10px; font-size: 13px; line-height: 1.85; color: #4b5563; }
.visit-list li:last-child { margin-bottom: 0; }
.visit-list li::before { content: ''; position: absolute; left: 0; top: 10px; width: 7px; height: 7px; background: var(--safety-500); }
.visit-actions { display: grid; gap: 10px; margin-top: 22px; padding-top: 18px; border-top: 1px dashed #e5eaf1; }

/* ========== 滚动淡入 ========== */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity 0.7s ease-out, transform 0.7s ease-out; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

/* ========== 响应式 ========== */
@media (max-width: 991.98px) {
  #heroCarousel { height: 520px; }
  .hero-title { font-size: 38px; }
  .section-pad { padding: 72px 0; }
  .watermark { font-size: 90px; }
  .stats-wrap { margin-top: -48px; }

  /* 导航：Logo 与汉堡按钮同行显示，按钮固定靠右 */
  #mainNav .navbar-brand { margin-right: auto; min-width: 0; }
  #mainNav .navbar-brand .ms-2 { min-width: 0; }
  #mainNav .logo-img { height: 42px; }
  #mainNav .logo-text { font-size: 15px; }
  #mainNav .logo-sub { font-size: 9px; letter-spacing: 0.04em; }
  #mainNav .navbar-toggler { margin-left: auto; flex-shrink: 0; }

  /* 折叠菜单改为纵向列表 */
  #mainNav .navbar-nav { padding: 6px 0 4px; }
  #mainNav .nav-link { padding: 10px 4px; }
  #mainNav .nav-link::after { left: 4px; right: auto; width: 28px; bottom: 5px; }
  #mainNav .nav-lang { border-left: 0; margin-left: 0; }

  /* 内页 */
  .page-hero { padding: 60px 0 76px; }
  /* 移动端同步保持与 page-hero2（含 .cat-jump 约 52px）等高 */
  .page-hero3 { padding: 60px 0 128px; }
  .page-hero-title { font-size: 34px; }
  .cat-feature .product-img { aspect-ratio: 4 / 3; height: auto; min-height: 0; }

  /* 产品应用页：领域名与说明改为上下堆叠 */
  .app-item { padding: 22px 20px; }
  .app-item-head { margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px dashed #e5eaf1; }

  /* 联系我们页 */
  .contact-card { padding: 22px 22px; }
  .contact-card-value { font-size: 16px; }
  .contact-tel { font-size: 21px; }
  .visit-card { padding: 22px 20px; }
}
/* 手机端：页脚四栏内容（LOGO简介 / 快速导航 / 产品中心 / 联系方式）整块隐藏，只保留版权行 */
@media (max-width: 767.98px) {
  .footer-cols { display: none; }
  .footer-bottom { border-top: 0; padding: 22px 0; }
}
@media (max-width: 575.98px) {
  #heroCarousel { height: 420px; }
  .hero-title { font-size: 28px; }
  .hero-indicators { bottom: 72px; }
  .section-title { font-size: 28px; }
  .form-card { padding: 28px 20px; }
  /* 移动端：验证码图片与输入框上下堆叠 */
  .captcha-img { margin-top: 38px; }
  .stats-item { padding: 20px 16px; }
  .stats-num { font-size: 32px; }

  #mainNav .logo-img { height: 36px; }
  #mainNav .logo-text { font-size: 14px; }

  .page-hero-title { font-size: 28px; }
  .page-hero-desc { font-size: 15px; }
  .cat-head { flex-wrap: wrap; }
  .cat-head h2 { font-size: 22px; }
  .cat-head .cat-en { width: 100%; margin-left: 0; }
  .fender-card { padding: 20px; }
  .fender-code { min-width: 62px; font-size: 22px; }
  .cat-jump a { padding: 10px 18px; font-size: 14px; }
  .detail-h1 { font-size: 24px; }
  .detail-visual-code { padding: 40px 18px; }
  .detail-visual-code .code { font-size: 54px; }
  .detail-nav { flex-direction: column; }
  .detail-nav a.next { text-align: left; }
  .app-item-num { font-size: 32px; }
  .app-item-title { font-size: 18px; }
  .profile-figure { padding-bottom: 0; }
  .profile-note {
    position: static;
    max-width: none;
    margin-top: -12px;
    text-align: left;
    border-right: 0;
    border-left: 4px solid var(--safety-500);
  }

  /* 联系我们页：地址条改为图片下方，避免遮挡地图内容 */
  .map-badge { position: static; max-width: none; margin-top: -1px; }
  .map-badge-value { font-size: 14px; }
}
