/* HONDVO pages.css — 各 page 区块样式 + 地图模块样式（P1 拆分）
   来源 index.html: style_pages / mold-center-redesign / 地图段 */
/* ===== style_pages：导航 v18 + 各 page 区块 ===== */

/* ===== 设计令牌 ===== */
.hnav{
  --bg:#F6F7F9;
  --surface:#FFFFFF;
  --text:#1A1F2A;
  --text-2:#5B6472;
  --text-3:#8A93A0;
  --border:#EAECEF;
  --brand:#D87830;
  --brand-blue:#304878;  /* logo 蓝（对应真实站点 --accent） */
  --brand-strong:#C5571A;
  --brand-soft:rgba(216,120,48,.10);
  --brand-15:rgba(216,120,48,.15);
  --shadow-card:0 18px 42px -18px rgba(20,30,50,.22), 0 4px 10px -4px rgba(20,30,50,.08);
  --shadow-soft:0 8px 24px -12px rgba(20,30,50,.18);
  --r-card:20px;
  --r-pill:999px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --t-fast:160ms;
  --t:220ms;
  --t-slow:340ms;
}

/* ===== 顶栏（全宽，菜单居中） ===== */
.hnav{
  position:fixed;top:0;left:0;right:0;
  width:100%;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(140%) blur(12px);
  border-bottom:1px solid var(--border);
  border-radius:0 0 16px 16px;
  box-shadow:0 8px 28px -10px rgba(20,30,50,.18), 0 2px 8px -4px rgba(20,30,50,.10);
  z-index:50;
  transform:translateY(-110%);
  animation:hnav-in .8s var(--ease-out) .15s forwards;
}
@keyframes hnav-in{to{transform:translateY(0)}}

/* ─────── C5：启动屏与导航入场的时序衔接 ───────
   问题：#launch 最短停留为 load+1.5s（兜底 3.4s），而 .hnav 的入场动画在
        .15s 延迟后仅需 .8s 即播完 —— 动画全程藏在启动屏背后，用户从未看到。
   做法：启动屏存在期间（html.launch-armed，由 <head> 内联脚本在首帧前添加）
        暂缓入场；待 launch.js 收幕时（html.launch-leave）再播放。
   兜底：若 launch.js 未执行，6s 后导航自动入场，避免永久隐藏。
   无 JS：head 脚本不执行 → 无 .launch-armed → 沿用上方原动画，行为不变。 */
html.launch-armed .hnav{
  animation:hnav-in .8s var(--ease-out) 6s forwards;
  transform:translateY(-110%);
}
html.launch-armed.launch-leave .hnav{
  animation:hnav-in .8s var(--ease-out) .05s forwards;
}
@media (prefers-reduced-motion: reduce){
  html.launch-armed .hnav,
  html.launch-armed.launch-leave .hnav{
    animation:none !important;
    transform:none !important;
  }
}

.hnav-inner{
  max-width:none;
  width:100%;
  padding:0 28px;
  height:68px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  grid-template-areas:"logo menu tools";
  align-items:center;
  gap:24px;
  transition:height var(--t) var(--ease-out), padding var(--t) var(--ease-out);
}
.hnav-logo{grid-area:logo;min-width:0}
.hnav-tools{grid-area:tools}

/* Logo */
.hnav-logo{
  display:flex;align-items:center;gap:10px;
  font-weight:700;font-size:18px;letter-spacing:.02em;
  color:var(--text);
}

/* Logo 图形（原橙色 H 方块 → 品牌图形） */
.hnav-logo .mark{
  width:auto;height:30px;
  display:block;object-fit:contain;
  /* 图形本身为橙蓝双色，无需背景与阴影 */
  background:none;border-radius:0;box-shadow:none;
}

/* 品牌文字：蓝 → 橙 渐变（background-clip 方案） */
.hnav-logo > span[data-lang-key="hnav_brand"]{
  background:linear-gradient(100deg,#2C4463 0%,#5B7599 38%,#E89050 78%,#D87830 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  /* 兼容：不支持 background-clip:text 时回退为实心品牌色 */
  font-weight:800;
  letter-spacing:.04em;
}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
  .hnav-logo > span[data-lang-key="hnav_brand"]{
    -webkit-text-fill-color:initial;
    color:var(--brand);
  }
}

/* 菜单列：显式占满中间列，居中 — 毛玻璃大卡片容器（品牌橙阴影） */
.hnav-menu{
  justify-self:center;
  min-width:0;
  display:flex;align-items:center;gap:2px;
  flex-wrap:nowrap;
  list-style:none;margin:0;
  padding:6px 8px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(18px) saturate(160%);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
  border:1px solid rgba(255,255,255,.55);
  border-radius:16px;
  box-shadow:
    0 10px 28px -10px rgba(216,120,48,.32),
    0 4px 12px -4px rgba(216,120,48,.14),
    inset 0 1px 0 rgba(255,255,255,.7);
}
.hnav-item{position:relative}
/* ===== 菜单项：纯文字（去按钮、去蓝描边、去扫光）===== */
.hnav-link{
  position:relative;
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 14px;
  font-size:13.5px;font-weight:600;letter-spacing:.02em;
  color:var(--text);
  background:transparent;
  border:0;
  border-radius:10px;
  white-space:nowrap;
  cursor:pointer;
  transition:color .18s var(--ease), background .18s var(--ease);
}
.hnav-link:hover,
.hnav-item.open .hnav-link{
  color:var(--brand);
  background:rgba(216,120,48,.08);
}
.hnav-link .caret{
  width:9px;height:9px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translate(-1px,-1px);
  transition:transform var(--t) var(--ease);
  opacity:.55;
}
.hnav-item.open .caret{transform:rotate(-135deg) translate(-1px,-1px)}

/* 右侧工具 */
.hnav-tools{display:flex;align-items:center;gap:8px}

/* ===== 语言按钮：纯文字 + caret（轻量版 · 还原 v17 之前 · 无背景/无边框/无阴影）===== */
.hnav-lang{
  position:relative;
  display:inline-flex;align-items:center;gap:5px;
  height:38px;padding:0 4px;
  font-size:14px;font-weight:600;letter-spacing:.01em;
  color:var(--text);
  background:transparent;border:0;
  cursor:pointer;
  transition:color var(--t-fast) var(--ease);
}
.hnav-lang:hover{color:var(--brand)}
.hnav-lang.open{color:var(--brand)}

/* ===== 询价 CTA（Uiverse Creatlydev Payments 风 · 品牌橙 + 白底 · 图标+文字横卡 · hover 橙条滑入） ===== */
.hnav-cta-new{
  --clr:var(--brand);                      /* 左图标块：品牌橙 #D87830 */
  position:relative;
  display:inline-flex;align-items:stretch;flex-shrink:0;
  cursor:pointer;
  text-decoration:none;font-family:inherit;vertical-align:middle;
  background-color:#fff;                   /* 蓝底 → 白底 */
  border:0;padding:0;
  border-radius:1.5rem;overflow:hidden;
  box-shadow:10px 10px 20px rgba(0,0,0,.05);
  line-height:1;color:var(--accent-hover);
}
/* hover 滑入的橙条（原 --clr 装饰条） */
.hnav-cta-new .button-decor{
  position:absolute;inset:0;
  background-color:var(--clr);
  transform:translateX(-100%);
  transition:transform .3s;
  z-index:0;pointer-events:none;
}
.hnav-cta-new .button-content{
  display:flex;align-items:center;
  font-weight:600;position:relative;overflow:hidden;
}
/* 左侧图标橙块 48x40 */
.hnav-cta-new .button__icon{
  width:48px;height:40px;
  background-color:var(--clr);
  display:grid;place-items:center;
  flex-shrink:0;position:relative;z-index:1;
}
.hnav-cta-new .button__icon svg{display:block}
/* 右侧文字（白底默认深蓝 → hover 橙底转白，保证均可读） */
.hnav-cta-new .button__text{
  position:relative;z-index:1;
  display:inline-block;
  transition:color .2s;
  padding:2px 1.5rem 2px .75rem;
  overflow:hidden;white-space:nowrap;text-overflow:ellipsis;
  max-width:150px;
  font-size:14px;font-weight:700;letter-spacing:.04em;
  color:var(--accent-hover);               /* 白底上深蓝字 */
}
/* 2026-10-12：长/短两版标签。
   原实现 max-width:150px + text-overflow:ellipsis 直接加在容器上 ⇒
   德语「Angebot anfordern」在 ≤1380px 被截成「Angebot anfo…」（真机截图确认）。
   现改为：长标签自身限宽（保留极端情况的省略号兜底），窄屏切短标签。 */
.hnav-cta-new .cta-long{display:inline-block;max-width:200px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}
.hnav-cta-new .cta-short{display:none}
@media (max-width:1380px){
  .hnav-cta-new .cta-long{display:none}
  .hnav-cta-new .cta-short{display:inline-block}
}
.hnav-cta-new:hover .button-decor{transform:translate(0)}
.hnav-cta-new:hover .button__text{color:#fff}   /* 橙底上白字 */

/* 顶栏语言文字切换：淡出-淡入 */
#lang-label{
  display:inline-block;
  min-width:1.6em;text-align:center;
  transition:opacity 200ms var(--ease), transform 200ms var(--ease);
}
/* 顶栏语言按钮本体（去掉浏览器默认 button 边框）*/
.hnav-lang-btn{
  border:0;background:transparent;padding:0;
  font:inherit;color:inherit;cursor:pointer;
  display:inline-flex;align-items:center;gap:5px;
  outline:none;
  transition:color var(--t-fast) var(--ease);
}
.hnav-lang-btn:hover{color:var(--brand)}
.hnav-lang-btn.is-switching #lang-label{opacity:0;transform:translateY(-3px)}
.hnav-lang svg{transition:transform var(--t) var(--ease)}
.hnav-lang.open svg{transform:rotate(180deg)}
.hnav-icon-btn{
  width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:var(--text-2);
  transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);
}
.hnav-icon-btn:hover{background:var(--brand-soft);color:var(--brand-strong)}
.hnav-icon-btn svg{width:16px;height:16px}

/* ===== 询价 CTA：Uiverse learn-more 圆形箭头，品牌橙版（还原 v12） ===== */
.hnav-cta{
  position:relative;
  display:inline-flex;align-items:center;
  cursor:pointer;
  width:11rem;height:auto;
  background:transparent;border:0;padding:0;
  border-radius:999px;
  font-family:inherit;text-decoration:none;vertical-align:middle;
  white-space:nowrap;
  color:var(--brand-strong);
  font-size:14px;font-weight:600;letter-spacing:.01em;
  transition:color 0.45s cubic-bezier(.65,0,.076,1);
}
.hnav-cta .circle{
  position:relative;display:block;margin:0;
  width:44px;height:44px;
  background:var(--brand);
  border-radius:999px;
  transition:all 0.45s cubic-bezier(.65,0,.076,1);
  flex-shrink:0;
}
.hnav-cta .circle .icon{
  position:absolute;top:0;bottom:0;margin:auto;
  left:15px;width:18px;height:2px;background:#fff;
  transition:all 0.45s cubic-bezier(.65,0,.076,1);
}
.hnav-cta .circle .icon::before{
  content:"";position:absolute;top:-4px;right:0;
  width:10px;height:10px;
  border-top:2px solid #fff;border-right:2px solid #fff;
  transform:rotate(45deg);
}
.hnav-cta .button-text{
  position:absolute;top:0;left:0;right:0;bottom:0;
  display:flex;align-items:center;
  padding:0 14px 0 56px;
  color:var(--brand-strong);font-weight:600;
  text-align:left;
  transition:color 0.45s cubic-bezier(.65,0,.076,1);
}
.hnav-cta:hover .circle{width:100%}
.hnav-cta:hover .button-text{color:#fff}
.hnav-cta:hover .circle .icon{transform:translateX(3px)}

.hnav-burger{display:none;width:36px;height:36px;border-radius:10px;align-items:center;justify-content:center;color:var(--text)}
.hnav-burger span{display:block;width:18px;height:1.6px;background:currentColor;position:relative;transition:transform var(--t) var(--ease), opacity var(--t) var(--ease)}
.hnav-burger span::before,.hnav-burger span::after{content:"";position:absolute;left:0;width:18px;height:1.6px;background:currentColor;transition:transform var(--t) var(--ease)}
.hnav-burger span::before{top:-6px}
.hnav-burger span::after{top:6px}
.hnav-burger.open span{background:transparent}
.hnav-burger.open span::before{transform:translateY(6px) rotate(45deg)}
.hnav-burger.open span::after{transform:translateY(-6px) rotate(-45deg)}

/* ===== 搜索框（方案 A：橙实底圆钮+白图标 · 点击展开全宽 search-panel 全文搜索） ===== */
.hnav-search{
  position:relative;
  display:flex;align-items:center;justify-content:flex-end;
  height:46px;
  margin-left:auto;            /* 推到 .hnav-tools 最右（与 CTA/lang 之间留空隙） */
}
/* 橙实底圆形搜索按钮（方案 A） */
.hnav-search-toggle{
  display:flex;align-items:center;justify-content:center;
  width:44px;height:44px;
  border-style:none;
  border-radius:50%;
  cursor:pointer;
  background-color:var(--brand,#D87830);
  color:#fff;
  box-shadow:0 6px 18px -6px rgba(216,120,48,.55);
  transition:background-color var(--t) var(--ease-out), transform var(--t) var(--ease-out), box-shadow var(--t) var(--ease-out);
}
.hnav-search-toggle svg{display:block}
.hnav-search-toggle:hover{background-color:var(--brand-strong,#C5571A);box-shadow:0 8px 22px -6px rgba(197,87,26,.6)}
.hnav-search-toggle:focus-visible{outline:3px solid var(--brand-15,rgba(216,120,48,.3));outline-offset:2px}

/* ===== 卡片型下拉 ===== */
.hnav-panel{
  position:absolute;
  top:calc(100% + 14px);
  left:50%;transform-origin:top center;
  transform:translate(-50%,-6px) scaleY(.96);
  opacity:0;pointer-events:none;
  width:min(calc(100vw - 48px), 760px);
  background:var(--surface);
  border-radius:var(--r-card);
  border:1px solid var(--border);
  box-shadow:var(--shadow-card);
  padding:22px 22px 18px;
  transition:transform var(--t) var(--ease-out), opacity var(--t) var(--ease-out);
}
.hnav-item.align-left .hnav-panel{left:0;transform:translate(0,-6px) scaleY(.96)}
.hnav-item.align-right .hnav-panel{left:auto;right:0;transform:translate(0,-6px) scaleY(.96)}
.hnav-item.open .hnav-panel{
  transform:translate(-50%,0) scaleY(1);
  opacity:1;pointer-events:auto;
}
.hnav-item.align-left.open .hnav-panel{transform:translate(0,0) scaleY(1)}
.hnav-item.align-right.open .hnav-panel{transform:translate(0,0) scaleY(1)}
.hnav-panel::before{
  content:"";position:absolute;top:-6px;left:50%;transform:translateX(-50%) rotate(45deg);
  width:12px;height:12px;background:var(--surface);border-left:1px solid var(--border);border-top:1px solid var(--border);
}
.hnav-item.align-left .hnav-panel::before{left:36px;transform:rotate(45deg)}
.hnav-item.align-right .hnav-panel::before{left:auto;right:36px;transform:rotate(45deg)}

.hnav-panel-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  text-align:center;
}
/* 联系我们下拉：4 列（销售联络 / 支持与资源 / 地点 / 加入我们）— 2026-09-29 新增「加入我们」列 */
.hnav-panel-grid--4{grid-template-columns:repeat(4,1fr);gap:14px}
.hnav-panel.hnav-panel--wide{width:min(calc(100vw - 48px), 900px)}
.hnav-col h4{
  margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.14em;
  color:var(--text-3);text-transform:uppercase;
  text-align:center;
}
.hnav-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;align-items:center}
.hnav-col li a{
  display:block;width:100%;font-size:13.5px;font-weight:500;color:var(--text);
  padding:6px 8px;border-radius:8px;
  text-align:center;
  transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);
}
.hnav-col li a:hover{background:var(--brand-soft);color:var(--brand-strong);transform:translateY(-1px)}

.hnav-cta-card{
  grid-column:1/-1;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  text-align:center;
  margin-top:6px;
  padding:18px 16px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--brand-soft) 0%, rgba(216,120,48,.04) 100%);
  border:1px dashed rgba(216,120,48,.4);
  position:relative;overflow:hidden;
}
.hnav-cta-card::after{
  content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;
  background:radial-gradient(closest-side, rgba(216,120,48,.35), transparent 70%);
}
.hnav-cta-card .t{font-size:13.5px;font-weight:600;color:var(--text);text-align:center}
.hnav-cta-card .s{font-size:12px;color:var(--text-2);margin-top:2px;text-align:center}
.hnav-cta-card .go{
  flex-shrink:0;display:inline-flex;align-items:center;gap:6px;
  height:34px;padding:0 14px;border-radius:var(--r-pill);
  background:var(--brand);color:#fff;font-size:12.5px;font-weight:600;
  transition:transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);
  position:relative;z-index:1;
}
.hnav-cta-card .go:hover{transform:translateY(-1px);box-shadow:0 10px 20px -8px rgba(216,120,48,.5)}

/* ===== 语言浮窗（纯文字单列，无左侧竖条，padding 收紧）===== */
.hnav-lang-pop{
  position:absolute;top:calc(100% + 12px);right:0;
  width:min(calc(100vw - 32px), 180px);
  padding:6px;
  background:var(--surface);border:1px solid var(--border);border-radius:12px;
  box-shadow:var(--shadow-card);
  display:flex;flex-direction:column;gap:1px;
  transform-origin:top right;
  transform:translateY(-6px) scale(.96);opacity:0;pointer-events:none;
  transition:transform var(--t) var(--ease-out), opacity var(--t) var(--ease-out);
  z-index:1100;
}
.hnav-lang.open .hnav-lang-pop{transform:translateY(0) scale(1);opacity:1;pointer-events:auto}

/* 单行：纯文字，左对齐，无左竖条，去掉浏览器默认 button 黑边框 */
.hnav-lang-pop button{
  display:block;width:100%;
  padding:7px 12px;
  border:0;          /* 去掉浏览器默认 button 黑边 */
  outline:none;
  border-radius:6px;
  font-size:13.5px;line-height:1.3;color:var(--text-2);text-align:left;
  background:transparent;
  transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);
  cursor:pointer;
}
/* hover：浅橙底 + 文字变橙（无左缩进、无竖条） */
.hnav-lang-pop button:hover{
  background:var(--brand-soft);color:var(--brand-strong);
}
/* 选中：浅橙底 + 加粗 + 橙字 */
.hnav-lang-pop button.on{
  background:var(--brand-soft);color:var(--brand-strong);font-weight:600;
}

/* ===== 抽屉 ===== */
.hnav-drawer{
  position:fixed;inset:0;background:rgba(15,20,30,.45);
  opacity:0;pointer-events:none;transition:opacity var(--t) var(--ease);
  z-index:60;
}
.hnav-drawer.open{opacity:1;pointer-events:auto}
.hnav-drawer .sheet{
  position:absolute;top:0;right:0;bottom:0;width:min(86vw,360px);
  background:var(--surface);padding:78px 22px 22px;
  transform:translateX(100%);transition:transform var(--t-slow) var(--ease-out);
  overflow-y:auto;
}
.hnav-drawer.open .sheet{transform:translateX(0)}
.hnav-drawer .group{margin-bottom:14px}
.hnav-drawer .group a{
  display:block;padding:12px 6px;border-bottom:1px solid var(--border);
  font-size:15px;color:var(--text);
}
.hnav-drawer .cta{
  display:block;margin-top:18px;text-align:center;height:42px;line-height:42px;border-radius:var(--r-pill);
  background:linear-gradient(135deg,var(--brand) 0%,#F18F50 100%);color:#fff;font-weight:600;
}


/* 中等屏（1024–1280）：两行布局·工具上 + 菜单下 */
/* 中等屏（1181–1380）：**压缩单行**。
   2026-10-12 重构：原 921–1280 两行布局在德语等长语言下菜单胶囊内容宽达 1221px
   > 视口宽 ⇒ 横向溢出、第二行胶囊错位破版（真机截图确认）。
   现在：≥1381 维持原单行；1181–1380 压缩字号/间距保住单行；≤1180 交给汉堡抽屉。
   ⚠️ 面板改为居中弹出：单行下若仍按各 item 锚定，靠右的面板会顶出视口。 */
@media (max-width:1380px) and (min-width:1181px){
  .hnav-inner{padding:0 18px;gap:14px}
  .hnav-logo{font-size:16px}
  .hnav-logo .mark{height:26px}
  .hnav-menu{padding:5px 6px;gap:0}
  .hnav-link{padding:8px 7px;font-size:12.5px}
  .hnav-search{display:none}
  .hnav-panel{
    left:50% !important;right:auto !important;
    transform:translate(-50%,-6px) scaleY(.96);
    width:min(calc(100vw - 40px),700px);
  }
  .hnav-item.align-left .hnav-panel,
  .hnav-item.align-right .hnav-panel{
    left:50% !important;right:auto !important;
  }
  .hnav-item.open .hnav-panel,
  .hnav-item.align-left.open .hnav-panel,
  .hnav-item.align-right.open .hnav-panel{transform:translate(-50%,0) scaleY(1)}
  .hnav-panel::before,
  .hnav-item.align-left .hnav-panel::before,
  .hnav-item.align-right .hnav-panel::before{left:50%;right:auto;transform:translateX(-50%) rotate(45deg)}
}
/* 中等屏缩字兜底（仅当 ≤1180 仍单行时） */

/* 极窄屏（≤920）：汉堡抽屉 */
@media (max-width:1180px){
  .hnav-inner{height:60px;padding:0 18px;grid-template-columns:auto 1fr auto;grid-template-areas:"logo . tools";gap:10px}
  .hnav-menu{display:none}
  .hnav-burger{display:flex}
  .hnav-cta{display:none}
  .hnav-search{display:none}
  .hero{margin-top:90px}
  .demo-cards{grid-template-columns:1fr}
}


/* ===== mold-center-redesign：模具中心 ===== */
/* ══ 模具中心 redesign (方案 C 卡片悬浮风 · 聚焦医疗器械模具) ══ */
.mold-sec{padding:54px 0;}
.cap-acc,.eq-acc{border:1px solid var(--neutral-200,#eef0f3);border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 12px 30px rgba(28,32,36,.08);}
.cap-item,.eq-item{border-bottom:1px solid var(--neutral-200,#eef0f3);}
.cap-item:last-child,.eq-item:last-child{border-bottom:none;}
.cap-head,.eq-head{display:flex;align-items:center;gap:16px;padding:20px 24px;cursor:pointer;background:#fff;transition:background .18s ease;}
.cap-head:hover,.eq-head:hover{background:var(--neutral-50,#f7f9fb);}
.cap-item.open .cap-head,.eq-item.open .eq-head{background:var(--brand-soft,#FFF4EC);}
.cap-ico{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--brand,#D87830),#f0903c);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;flex-shrink:0;box-shadow:0 10px 24px rgba(216,120,48,.18);}
.cap-t{flex:1;min-width:0;}
.cap-t .t-zh,.eq-head .t-zh{font-size:17px;font-weight:750;color:var(--ink,#22272e);}
.cap-t .t-en{font-size:12px;color:var(--brand,#D87830);font-weight:700;}
.eq-head .t-en{font-size:12px;color:var(--muted,#7a828c);font-weight:600;}
.cap-badge,.eq-badge{font-size:12px;font-weight:700;color:var(--brand-strong,#A34B10);background:#fff;border:1px solid var(--brand-soft,#FFF4EC);border-radius:20px;padding:4px 13px;margin-left:auto;}
.eq-badge{color:#fff;background:var(--brand,#D87830);border:none;}
.cap-chev,.eq-chev{color:var(--brand,#D87830);font-size:14px;transition:transform .25s cubic-bezier(.22,1,.36,1);}
.cap-item.open .cap-chev,.eq-item.open .eq-chev{transform:rotate(90deg);}
.cap-body{display:block;max-height:0;overflow:hidden;opacity:0;padding:0 24px;transition:max-height var(--t-slow) var(--ease),opacity var(--t) var(--ease),padding var(--t) var(--ease);}
.cap-item.open .cap-body{max-height:2400px;opacity:1;padding:4px 24px 26px;}
.prod-item.open .cap-body{max-height:2400px;opacity:1;padding:4px 24px 26px;}
.cap-body p{font-size:13.5px;color:#5a626b;margin:6px 0 14px;}
.cap-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px;}
.cap-tags span{font-size:11.5px;color:var(--brand-strong,#A34B10);background:var(--brand-soft,#FFF4EC);border-radius:20px;padding:4px 11px;font-weight:600;}
.cap-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;}
.photo-slot{position:relative;aspect-ratio:4/3;border:2px dashed #d7dbe0;border-radius:14px;overflow:hidden;cursor:pointer;background:linear-gradient(135deg,#f3f6f9,#e7edf2);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease,border-color .35s ease;}
.photo-slot::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:repeating-linear-gradient(45deg,#eef2f6,#eef2f6 10px,#e7edf2 10px,#e7edf2 20px);}.photo-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;display:block;}.photo-slot img + .lbl:empty{display:none;}
.photo-slot .lbl{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;height:100%;color:#9aa1a9;font-size:12px;text-align:center;padding:0 10px;}
.photo-slot:hover{transform:scale(1.04);box-shadow:0 14px 30px rgba(28,32,36,.14);border-color:var(--brand,#D87830);}
.mold-flow{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;}
.mflow-step{background:var(--neutral-50,#f7f9fb);border:1px solid var(--neutral-200,#eef0f3);border-radius:18px;padding:22px 14px;text-align:center;position:relative;}
.mflow-step .mflow-num{width:50px;height:50px;border-radius:16px;background:#fff;border:2px solid var(--brand,#D87830);color:var(--brand-strong,#A34B10);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;box-shadow:0 8px 20px rgba(28,32,36,.08);}
.mflow-step h4{font-size:14.5px;margin:0 0 4px;font-weight:750;}
.mflow-step .en{font-size:11.5px;color:var(--brand,#D87830);font-weight:700;}
.mflow-step p{font-size:12px;color:#6b7280;margin:8px 0 0;}
.eq-body{display:block;max-height:0;overflow:hidden;opacity:0;padding:0 24px;transition:max-height var(--t-slow) var(--ease),opacity var(--t) var(--ease),padding var(--t) var(--ease);}
.eq-item.open .eq-body{max-height:2400px;opacity:1;padding:8px 24px 24px;}
.eq-scroll{overflow-x:auto;}
.eq-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:8px;}
.eq-table th{text-align:left;color:var(--muted,#7a828c);font-weight:600;font-size:12px;padding:10px 12px;border-bottom:2px solid var(--neutral-200,#eef0f3);}
.eq-table td{padding:12px;border-bottom:1px solid var(--neutral-200,#eef0f3);vertical-align:middle;color:#3a4149;}
.eq-row:hover{background:var(--neutral-50,#f7f9fb);}
.eq-dev{font-weight:750;color:var(--ink,#22272e);}
.eq-model{color:var(--muted,#7a828c);font-size:12px;}
.eq-qty{font-weight:750;color:var(--brand-strong,#A34B10);}
.eq-img{width:120px;height:74px;border:2px dashed #d7dbe0;border-radius:12px;background:linear-gradient(135deg,#f3f6f9,#e9eef3);display:flex;align-items:center;justify-content:center;color:#aab0b8;font-size:11px;text-align:center;cursor:pointer;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,border-color .3s ease;}
.eq-img:hover{transform:scale(1.06);box-shadow:0 12px 26px rgba(28,32,36,.12);border-color:var(--brand,#D87830);}
.mcert-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:26px;}
.mcert{background:#fff;border:1px solid var(--neutral-200,#eef0f3);border-radius:20px;padding:22px;box-shadow:0 12px 30px rgba(28,32,36,.08);display:flex;gap:16px;align-items:center;transition:transform .2s ease,box-shadow .2s ease;}
.mcert:hover{transform:translateY(-4px);}
.mcert-seal{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,var(--accent,#304878),#6a8fb0);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;flex-shrink:0;}
.mcert h4{margin:0 0 3px;font-size:15.5px;font-weight:750;}
.mcert .en{font-size:12px;color:var(--muted,#7a828c);}
.mqc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.mqc{background:var(--neutral-50,#f7f9fb);border:1px solid var(--neutral-200,#eef0f3);border-radius:20px;padding:24px 20px;}
.mqc .mqc-k{font-size:12.5px;font-weight:800;color:var(--brand,#D87830);letter-spacing:.05em;}
.mqc h4{margin:9px 0 7px;font-size:15.5px;font-weight:750;}
.mqc p{margin:0;font-size:12.5px;color:#6b7280;}
.m-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1);}
.m-reveal.in{opacity:1;transform:none;}
.mlb{position:fixed;inset:0;background:rgba(20,24,28,.82);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s;z-index:9999;padding:24px;cursor:zoom-out;}
.mlb.show{opacity:1;visibility:visible;}
.mlb-box{background:#fff;border-radius:18px;max-width:900px;width:100%;padding:18px;transform:scale(.96);transition:transform .3s cubic-bezier(.22,1,.36,1);cursor:default;}
.mlb.show .mlb-box{transform:none;}
.mlb-img{position:relative;aspect-ratio:16/9;border-radius:12px;background:linear-gradient(135deg,#f3f6f9,#e7edf2);display:flex;align-items:center;justify-content:center;color:#9aa1a9;font-size:15px;overflow:hidden;}
.mlb-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .5s ease;padding:20px;text-align:center;}
.mlb-slide.active{opacity:1;}.mlb-slide img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;border-radius:8px;}
.mlb-cap{margin-top:12px;font-size:14px;font-weight:700;color:var(--ink,#22272e);text-align:center;}
.mlb-dots{display:flex;justify-content:center;gap:8px;margin-top:12px;}
.mlb-dot{width:8px;height:8px;border-radius:50%;background:#d7dbe0;cursor:pointer;transition:background .25s ease,transform .25s ease;}
.mlb-dot.active{background:var(--brand,#D87830);transform:scale(1.25);}
.mlb-close{position:absolute;top:18px;right:24px;color:#fff;font-size:28px;cursor:pointer;line-height:1;}
@media(max-width:980px){.mold-flow{grid-template-columns:repeat(3,1fr);}.mcert-row{grid-template-columns:1fr;}.mqc-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.mqc-grid,.mold-flow{grid-template-columns:1fr;}}

/* ===== 全球合作伙伴地图（随 map.js 封存迁移） ===== */
  /* ═══════════ 全球合作伙伴地图（数据驱动 + 飞线） ═══════════ */

  .partners-map { width: 100vw; max-width: none; margin: 30px 0 0; margin-left: calc(50% - 50vw); padding: 0; position: relative; }

  .partner-map-inner { position: relative; }

  #partner-map-svg { display: block; width: 100%; height: auto; }

  #map-continents path { fill: var(--map-base); stroke: var(--map-stroke); stroke-width: .5; }

  #map-continents path.partner-country { fill: var(--accent); stroke: var(--accent); stroke-width: .9; }

  #map-flights path.flight-line { fill: none; stroke: var(--hq); stroke-width: 1.1; stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: 100; filter: drop-shadow(0 0 3px var(--hq-glow)); animation: flightSend 8.5s ease-in-out infinite; }


/* P1-22：减少动效下地图动效静态化 —— 飞线直接落到终点（保持可见但不流动），
   城市脉冲与 HQ 脉冲停止扩散，避免持续动画对前庭敏感用户造成不适。 */
@media (prefers-reduced-motion: reduce) {
  #map-flights path.flight-line { animation: none !important; stroke-dashoffset: 0; }
  .map-marker-pulse, .map-marker-pulse-2, .map-hq-pulse { animation: none !important; }
}

  @keyframes flightSend {

    0%    { stroke-dashoffset: 100; }     /* 隐藏，准备从总部（东莞）发出 */

    17.6% { stroke-dashoffset: 0; }       /* 约 1.5s：线从总部发出，向各国延伸（发出终点=各国） */

    64.7% { stroke-dashoffset: 0; }       /* 停留 4s 全亮 */

    76.5% { stroke-dashoffset: -100; }    /* 约 1s：线收回至各国节点（总部端先离，终点留在各国） */

    100%  { stroke-dashoffset: -100; }    /* 约 2s 间隙后循环 */

  }

  .map-marker-hit { fill: transparent; cursor: pointer; }

  .map-marker-dot { fill: var(--brand); stroke: var(--white); stroke-width: 1; transition: transform .2s; transform-box: fill-box; transform-origin: center; }

  .map-marker-pulse { fill: var(--brand); transform-box: fill-box; transform-origin: center; animation: markerPulse 2.2s ease-out infinite; }
  .map-marker-pulse-2 { animation-delay: 1.1s; }

  @keyframes markerPulse { 0% { transform: scale(1); opacity: .45; } 100% { transform: scale(4.8); opacity: 0; } }

  .map-marker-group:hover .map-marker-dot,

  .map-marker-group:focus .map-marker-dot { transform: scale(1.5); }

  .map-marker-label { font-size: 8.5px; font-weight: 700; fill: var(--text); paint-order: stroke; stroke: var(--white); stroke-width: 2px; stroke-linejoin: round; pointer-events: none; opacity: 1; }

  .map-leader { stroke: var(--accent-50); stroke-width: .8; stroke-dasharray: 2 2; pointer-events: none; }

  .map-marker-group:hover .map-marker-dot,

  .map-marker-group:focus .map-marker-dot { transform: scale(1.5); }

  /* HONDVO 总部标记 */

  .map-hq-hit { fill: transparent; cursor: pointer; }

  .map-hq-pulse { fill: var(--hq); transform-box: fill-box; transform-origin: center; animation: hqPulse 2.4s ease-out infinite; }

  .map-hq-pin { fill: var(--hq); stroke: var(--white); stroke-width: 1.4; filter: drop-shadow(0 0 5px var(--hq-soft)); }

  .map-hq-inner { fill: var(--white); }

  @keyframes hqPulse { 0% { transform: scale(1); opacity: .5; } 100% { transform: scale(3.4); opacity: 0; } }

  .map-hq-label { font-size: 10px; font-weight: 800; fill: var(--white); paint-order: stroke; stroke: var(--hq); stroke-width: 3px; stroke-linejoin: round; pointer-events: none; }

  @media (max-width: 768px){ .partners-map { padding: 0 14px; } }
@media (max-width: 768px){ .partners-map { padding: 0 20px; } }


