@charset "utf-8";

/* ==========================================================================
   宁国市启辰橡塑制品有限公司 —— 响应式网站模板
   章节：
   1. 设计变量  2. 基础重置  3. 通用工具与容器  4. 头部导航
   5. 首页 Hero   6. 区块与标题   7. 关于我们   8. 产品分类卡片
   9. 产品图册/网格  10. 合作客户  11. 新闻  12. 内页横幅与正文
   13. 研发能力表  14. 联系我们  15. 页脚  16. 返回顶部  17. 响应式
   ========================================================================== */

/* 1. 设计变量 ------------------------------------------------------------ */
:root{
  --c-primary:#2097f3;      /* 主色：logo / 标题 / 高亮 */
  --c-primary-deep:#1575cf;  /* 深蓝：强调 */
  --c-sky:#00b0f0;          /* 能力表亮蓝底 */
  --c-sky-deep:#0070c0;     /* 能力表 OK 格 */
  --c-text:#333;            /* 标题文字 */
  --c-body:#666;            /* 正文 */
  --c-muted:#999;           /* 次要文字 */
  --c-border:#e5e5e5;       /* 边框 */
  --c-bg-soft:#f5f8fa;      /* 浅灰背景 */
  --c-footer:#1c1f23;       /* 页脚深色 */
  --c-footer-text:#9aa0a6;  /* 页脚文字 */
  --container:1200px;
  --header-h:80px;
  --radius:4px;
  --shadow:0 6px 24px rgba(0,0,0,.08);
  --font:"Microsoft YaHei","微软雅黑",Arial,Helvetica,sans-serif;
}

/* 2. 基础重置 ------------------------------------------------------------ */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
body{
  margin:0; font-family:var(--font); font-size:15px; line-height:1.8;
  color:var(--c-body); background:#fff;
}
body.has-fixed-header{ padding-top:var(--header-h); }
h1,h2,h3,h4,h5,h6,p,figure{ margin:0; }
ul,ol{ margin:0; padding:0; list-style:none; }
a{ color:inherit; text-decoration:none; transition:color .25s; }
img{ max-width:100%; border:0; vertical-align:middle; }
button{ font-family:inherit; cursor:pointer; border:none; background:none; }

/* 3. 通用工具与容器 ------------------------------------------------------- */
.container{ width:100%; max-width:var(--container); margin:0 auto; padding:0 20px; }
.section{ padding:80px 0; }
.section--soft{ background:var(--c-bg-soft); }
.text-center{ text-align:center; }
.grid{ display:grid; gap:24px; }

/* 区块标题：中文主标题 + 英文副标题 */
.section-head{ text-align:center; margin-bottom:56px; }
.section-head h2{
  position:relative; display:inline-block; font-size:34px; font-weight:700;
  color:var(--c-text); letter-spacing:2px;
}
.section-head h2::after{
  content:""; position:absolute; left:50%; bottom:-14px; width:56px; height:3px;
  background:var(--c-primary); transform:translateX(-50%);
}
.section-head .en{ margin-top:22px; font-size:14px; color:var(--c-muted);
  letter-spacing:3px; text-transform:lowercase; }
.section-head--left{ text-align:left; margin-bottom:30px; }
.section-head--left h2{ font-size:24px; letter-spacing:1px; }
.section-head--left h2::after{ left:0; transform:none; width:40px; height:2px; bottom:-10px; }
.product-cat + .product-cat{ margin-top:64px; }

/* 通用按钮 */
.btn{
  display:inline-block; padding:12px 40px; border:1px solid var(--c-primary);
  color:var(--c-primary); border-radius:var(--radius); letter-spacing:2px;
  transition:all .25s; background:transparent;
}
.btn:hover{ background:var(--c-primary); color:#fff; }
.btn--solid{ background:var(--c-primary); color:#fff; }
.btn--solid:hover{ background:var(--c-primary-deep); border-color:var(--c-primary-deep); }

/* 4. 头部导航 ------------------------------------------------------------ */
.site-header{
  position:fixed; top:0; left:0; right:0; z-index:1000; height:var(--header-h);
  background:#fff; box-shadow:0 1px 0 rgba(0,0,0,.04);
}
.site-header .container{
  display:flex; align-items:center; justify-content:space-between;
  gap:48px; height:100%;
}
.brand{ display:flex; align-items:center; gap:12px; }
.brand img{ width:52px; height:auto; }
.brand .name{ font-size:22px; font-weight:700; color:var(--c-primary);
  white-space:nowrap; letter-spacing:1px; }

.main-nav > ul{ display:flex; align-items:center; }
.main-nav li{ position:relative; flex:none; }
.main-nav a{
  display:block; padding:0 22px; line-height:var(--header-h); font-size:16px;
  color:var(--c-text); position:relative; white-space:nowrap;
}
.main-nav a::after{
  content:""; position:absolute; left:50%; bottom:18px; width:0; height:2px;
  background:var(--c-primary); transform:translateX(-50%); transition:width .25s;
}
.main-nav a:hover,
.main-nav .active a{ color:var(--c-primary); }
.main-nav a:hover::after,
.main-nav .active a::after{ width:28px; }

/* 语言切换 */
.lang-switch{ display:flex; align-items:center; font-size:14px; color:var(--c-body);
  margin-left:18px; white-space:nowrap; }
.lang-switch:hover{ color:var(--c-primary); }

/* 主导航下拉菜单 */
.main-nav .has-sub > a{ padding-right:36px; }
.main-nav .has-sub > a::before{
  content:""; position:absolute; right:14px; top:50%; margin-top:-2px;
  border:5px solid transparent; border-top-color:var(--c-muted); transition:border-top-color .25s;
}
.main-nav .has-sub:hover > a::before{ border-top-color:var(--c-primary); }
.main-nav .sub-menu{
  display:block; position:absolute; top:100%; left:50%; transform:translate(-50%,10px);
  min-width:190px; background:#fff; border-radius:var(--radius);
  box-shadow:0 10px 34px rgba(0,0,0,.14); padding:8px 0;
  opacity:0; visibility:hidden; transition:.25s; z-index:100;
}
.main-nav .has-sub:hover .sub-menu,
.main-nav .has-sub:focus-within .sub-menu{ opacity:1; visibility:visible; transform:translate(-50%,0); }
.main-nav .sub-menu a{
  display:block; line-height:1.7; padding:10px 18px; font-size:14px;
  color:var(--c-text); text-align:center; white-space:nowrap;
}
.main-nav .sub-menu a:hover{ color:var(--c-primary); background:var(--c-bg-soft); }
.main-nav .sub-menu a::after{ display:none; }

/* 英文页品牌名过长：允许两行显示，保证横排菜单放得下 */
html[lang="en"] .brand .name{ white-space:normal; line-height:1.3; font-size:15px; max-width:330px; }

/* 移动端汉堡按钮 */
.nav-toggle{ display:none; width:42px; height:42px; position:relative; }
.nav-toggle span{ position:absolute; left:9px; right:9px; height:2px;
  background:var(--c-text); transition:.3s; }
.nav-toggle span:nth-child(1){ top:13px; }
.nav-toggle span:nth-child(2){ top:20px; }
.nav-toggle span:nth-child(3){ top:27px; }
.nav-toggle.open span:nth-child(1){ top:20px; transform:rotate(45deg); }
.nav-toggle.open span:nth-child(2){ opacity:0; }
.nav-toggle.open span:nth-child(3){ top:20px; transform:rotate(-45deg); }

/* 5. 首页 Hero（视频横幅） ------------------------------------------------- */
.hero{
  position:relative; height:calc(100vh - var(--header-h)); min-height:520px;
  overflow:hidden; display:flex; align-items:center; justify-content:center;
  text-align:center; color:#fff;
}
.hero__video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.hero__overlay{ position:absolute; inset:0; z-index:1;
  background:linear-gradient(rgba(10,30,55,.30),rgba(10,30,55,.38)); }
.hero__content{ position:relative; z-index:2; padding:0 20px; max-width:1100px; }
.hero__title{ font-size:clamp(34px,5.6vw,88px); font-weight:800; line-height:1.25;
  letter-spacing:4px; text-shadow:0 4px 24px rgba(0,0,0,.25); }
.hero__sub{ margin-top:22px; font-size:clamp(13px,1.3vw,18px); letter-spacing:3px;
  font-weight:300; opacity:.92; }
.hero__tag{ display:inline-block; margin-top:38px; padding:12px 44px;
  background:#fff; color:var(--c-primary-deep); font-size:clamp(16px,1.6vw,22px);
  letter-spacing:3px; font-weight:700; }
.hero__scroll{ position:absolute; left:50%; bottom:34px; z-index:2;
  transform:translateX(-50%); color:#fff; opacity:.85; }
.hero__scroll svg{ width:30px; height:30px; animation:scrollHint 1.6s ease-in-out infinite; }
@keyframes scrollHint{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(8px);} }

/* 6. 区块与标题（补充：带 —— 的左对齐标题，用于关于区块） ------------------ */
.inline-title{ display:flex; align-items:center; gap:14px; color:var(--c-primary);
  font-size:30px; font-weight:700; letter-spacing:2px; margin-bottom:28px; }
.inline-title::after{ content:"——"; color:var(--c-primary); font-weight:400; }
.inline-title--center{ justify-content:center; }

/* 7. 关于我们（首页） ----------------------------------------------------- */
.about{ background:#fff; margin-top:20px; }
/* 通栏布局：左图全出血 + 右侧文字，与原站一致横向填满 */
.about__band{ display:grid; grid-template-columns:1fr 1fr; align-items:stretch; }
.about__media{ position:relative; min-height:640px; overflow:hidden; }
.about__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:22% center; }
.about__vertical{
  position:absolute; left:0; top:0; bottom:0; width:72px; z-index:2;
  display:flex; align-items:flex-start; justify-content:center; padding-top:28px;
  background:rgba(13,94,170,.88); color:#fff;
  writing-mode:vertical-rl; font-size:30px; font-weight:700; letter-spacing:6px;
}
.about__text{ padding:64px 9% 64px 64px; align-self:center; }
.about__text p{ margin-bottom:18px; color:var(--c-body); }
.about__text .btn{ margin-top:14px; }

/* 8. 产品分类卡片（5 卡，hover 展开） ------------------------------------- */
.categories{ padding:0; margin:20px 0; }
.categories .section-head{ margin-top:64px; }
.categories__strip{ display:flex; height:460px; overflow:hidden; }
.category-card{
  position:relative; flex:1 1 0; min-width:0; cursor:pointer; overflow:hidden;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  transition:flex-grow .5s ease; color:#fff; text-align:center;
  border-right:1px solid rgba(255,255,255,.22);
}
.category-card:last-child{ border-right:none; }
.category-card__bg{
  position:absolute; inset:0; z-index:0;
  background-repeat:no-repeat; background-position:center; background-size:cover;
  transition:transform .6s ease;
}
.category-card:hover .category-card__bg{ transform:scale(1.06); }
.category-card__shade{
  position:absolute; inset:0; z-index:1; background:rgba(13,94,170,.78);
  opacity:0; transition:opacity .4s;
}
.category-card:hover .category-card__shade{ opacity:1; }
.category-card__content{
  position:relative; z-index:2;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  opacity:0; transition:opacity .4s; padding:30px 18px;
}
.category-card:hover .category-card__content{ opacity:1; }
.category-card__icon{ width:62px; height:62px; margin-bottom:26px; fill:rgba(255,255,255,.92); }
.category-card:hover .category-card__icon{ fill:#fff; }
.category-card__name{ font-size:21px; font-weight:700; letter-spacing:1px; line-height:1.45; }
.category-card__en{ margin-top:10px; font-size:12px; letter-spacing:2px; text-transform:uppercase;
  opacity:.85; }
.category-card__more{ margin-top:14px; font-size:13px; letter-spacing:1px; }
.category-card__more::after{ content:"→"; margin-left:6px; }
.category-card__bottom{
  position:absolute; bottom:0; left:0; right:0; z-index:3;
  background:linear-gradient(0deg, rgba(0,0,0,.55) 0%, transparent 100%);
  padding:28px 18px 18px; font-size:18px; font-weight:700;
  transition:opacity .3s;
}
.category-card:hover .category-card__bottom{ opacity:0; }
.category-card:hover{ flex-grow:1.7; }

/* 9. 产品图册 / 网格 ------------------------------------------------------ */
.product-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.product-item{ text-align:center; }
.product-item__media{ display:block; position:relative; border:1px solid var(--c-border);
  border-radius:var(--radius); overflow:hidden; aspect-ratio:1/1; background:#f7f9fb; }
.product-item__media img{ width:100%; height:100%; object-fit:contain; padding:14px;
  transition:transform .4s; }
.product-item__media:hover img{ transform:scale(1.07); }
.product-item__name{ display:block; margin-top:16px; font-size:16px; color:var(--c-text); }
.product-item__media:hover + .product-item__name,
.product-item__name:hover{ color:var(--c-primary); }

/* 灯箱 */
.lightbox{ position:fixed; inset:0; z-index:2000; display:none;
  align-items:center; justify-content:center; background:rgba(0,0,0,.86); padding:40px; }
.lightbox.open{ display:flex; }
.lightbox img{ max-width:90%; max-height:86%; object-fit:contain; }
.lightbox__close{ position:absolute; top:24px; right:34px; color:#fff; font-size:40px;
  line-height:1; }
.lightbox__nav{ position:absolute; top:50%; transform:translateY(-50%); color:#fff;
  font-size:46px; padding:0 18px; opacity:.7; }
.lightbox__nav:hover{ opacity:1; }
.lightbox__prev{ left:20px; }
.lightbox__next{ right:20px; }

/* 10. 合作客户 ----------------------------------------------------------- */
.clients{ background:#fff; }
.clients__row{ display:grid; grid-template-columns:repeat(6,1fr); gap:36px; align-items:center; }
.clients__row img{ width:100%; max-width:150px; margin:0 auto; filter:grayscale(.2);
  opacity:.9; transition:.3s; }
.clients__row img:hover{ filter:grayscale(0); opacity:1; }

/* 11. 新闻 --------------------------------------------------------------- */
.news-grid{ display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.news-card{ display:flex; gap:22px; align-items:flex-start; }
.news-card__media{ flex:0 0 180px; aspect-ratio:1/1; overflow:hidden; border-radius:var(--radius); }
.news-card__media img{ width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.news-card:hover .news-card__media img{ transform:scale(1.06); }
.news-card__body h3{ font-size:18px; color:var(--c-text); font-weight:700; margin-bottom:10px; }
.news-card:hover h3{ color:var(--c-primary); }
.news-card__date{ font-size:13px; color:var(--c-muted); display:block; margin-bottom:10px; }
.news-card__excerpt{ font-size:14px; color:var(--c-body);
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

/* 新闻列表（内页） */
.news-list{ max-width:900px; margin:0 auto; }
.news-list__item{ display:flex; gap:28px; padding:32px 0; border-bottom:1px solid var(--c-border); }
.news-list__item:first-child{ padding-top:0; }
.news-list__thumb{ flex:0 0 220px; aspect-ratio:1/1; overflow:hidden; border-radius:var(--radius); }
.news-list__thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.news-list__item:hover .news-list__thumb img{ transform:scale(1.05); }
.news-list__body{ flex:1; }
.news-list__body h3{ font-size:20px; color:var(--c-text); margin-bottom:12px; }
.news-list__item:hover h3{ color:var(--c-primary); }
.news-list__meta{ font-size:13px; color:var(--c-muted); margin-bottom:12px; }
.news-list__excerpt{ color:var(--c-body); margin-bottom:14px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.news-list__more{ font-size:14px; color:var(--c-primary); }

/* 首页新闻（纯文字卡片，无缩略图） */
.news-text h3{ font-size:18px; color:var(--c-text); font-weight:700; margin-bottom:8px; }
.news-text h3 a:hover{ color:var(--c-primary); }
.news-text__date{ font-size:13px; color:var(--c-muted); display:block; margin-bottom:10px; }
.news-text p{ font-size:14px; color:var(--c-body);
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }

/* 12. 内页横幅与正文 ------------------------------------------------------ */
.page-banner{ position:relative; height:420px; display:flex; align-items:center;
  justify-content:center; text-align:center; color:#fff;
  background-size:cover; background-position:center; }
.page-banner::before{ content:""; position:absolute; inset:0;
  background:rgba(10,30,55,.32); }
.page-banner__content{ position:relative; z-index:1; }
.page-banner h1{ font-size:42px; font-weight:700; letter-spacing:4px; }
.page-banner p{ margin-top:14px; font-size:14px; letter-spacing:3px; opacity:.85; }

.breadcrumb{ padding:18px 0; font-size:14px; color:var(--c-muted);
  border-bottom:1px solid var(--c-border); }
.breadcrumb a:hover{ color:var(--c-primary); }
.breadcrumb span{ margin:0 8px; }

/* 通用正文（关于页等） */
.prose{ max-width:1000px; margin:0 auto; font-size:16px; color:var(--c-body); }
.prose p{ margin-bottom:24px; text-align:justify; }

/* 关于页宣传视频 */
.promo-video{ max-width:1000px; margin:56px auto 0; position:relative; border-radius:var(--radius);
  overflow:hidden; cursor:pointer; box-shadow:var(--shadow); }
.promo-video img{ width:100%; display:block; }
.promo-video__play{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:80px; height:80px; border-radius:50%; background:rgba(32,151,243,.9);
  display:flex; align-items:center; justify-content:center; }
.promo-video__play::before{ content:""; margin-left:6px; border-style:solid;
  border-width:14px 0 14px 24px; border-color:transparent transparent transparent #fff; }

/* 分组页：侧边导航 + 正文 */
.group-layout{ display:grid; grid-template-columns:240px 1fr; gap:48px; align-items:start; }
.group-side{ border:1px solid var(--c-border); border-radius:var(--radius); overflow:hidden; }
.group-side__title{ background:var(--c-primary); color:#fff; font-size:16px; font-weight:600;
  padding:16px 20px; }
.group-side ul{ padding:8px 0; }
.group-side li a{ display:block; padding:11px 20px; font-size:15px; color:var(--c-body);
  border-left:3px solid transparent; }
.group-side li a:hover{ color:var(--c-primary); background:#f5f9fd; }
.group-side li.active a{ color:var(--c-primary); border-left-color:var(--c-primary);
  background:#f5f9fd; font-weight:600; }
.group-main{ min-width:0; }
.group-main .prose, .group-main.prose{ max-width:none; margin:0; }
.group-main .promo-video{ max-width:none; }

/* 导入图库：证书/风采/设备图片网格 */
.import-gallery{ display:grid; grid-template-columns:repeat(3, 1fr);
  gap:20px; margin:28px 0; }

/* 质量体系小节标题（按原站视觉布局重组）：标题下短蓝横线 */
.qc-h{ color:var(--c-dark, #2b2b2b); font-size:26px; font-weight:700; line-height:1.4; margin:44px 0 18px; }
.qc-h::after{ content:""; display:block; width:44px; height:3px; border-radius:2px; background:var(--c-primary); margin-top:12px; }
.group-main .prose > .qc-h:first-child, .prose > .qc-h:first-child{ margin-top:0; }
.qc-h + .import-gallery{ margin-top:0; }

/* 国外市场：上图下文；蓝色色块与地图等大、向左上偏移垫底（左/上露出，右/下收短） */
.market-stack{ max-width:880px; }
.market-figure{ position:relative; margin:36px 0 0 48px; }
/* 国外市场：蓝色色块垫底（左露48/上露34），右侧收短100px、底部收短72px（缺口需大于地图PNG白边约45px才可见） */
.market-figure__ghost{ position:absolute; top:-34px; left:-48px; width:calc(100% - 52px); height:calc(100% - 38px); background:#00a0e9; }
.market-figure img{ position:relative; width:100%; height:auto; display:block; border:1px solid #e6e8eb; }
.market-body{ margin-top:44px; }
.market-body .qc-h{ margin-top:36px; }
.market-body p{ color:#666; line-height:2; max-width:820px; }

/* 开发能力：单列纵向布局（因侧边栏占宽，双栏会使表格图过小）：标题/段落/两图在上，一览表通栏在下 */
.devcap{ display:grid; grid-template-columns:1fr; gap:40px; align-items:start; }
.devcap__h{ color:var(--c-primary); font-size:24px; font-weight:700; margin:0 0 22px; }
.devcap__p{ color:#666; line-height:2; margin-bottom:48px; }
.devcap__shots{ display:flex; align-items:center; gap:16px; }
.devcap__shot{ flex:1; margin:0; text-align:center; min-width:0; }
.devcap__shot img{ width:100%; height:auto; display:block; }
.devcap__shot figcaption{ margin-top:12px; color:#666; }
.devcap__arrow{ flex:none; width:42px; }
.devcap__arrow img{ width:100%; height:auto; display:block; }
.devcap__table{ text-align:center; }
.devcap__table img{ display:inline-block; width:auto; max-width:100%; height:auto; }

/* 独立图（如开发流程图）：按原始尺寸居中，窄屏不溢出 */
.natural-figure{ text-align:center; }
.natural-figure img{ display:inline-block; width:auto; max-width:100%; height:auto; }
.import-gallery figure{ border:1px solid var(--c-border); border-radius:var(--radius);
  overflow:hidden; background:#fff; display:flex; align-items:center; }
.import-gallery img{ width:100%; display:block; }
.group-main > .import-gallery:first-child{ margin-top:0; }
.prose img{ max-width:100%; height:auto; border-radius:var(--radius); }

/* 13. 研发能力表 --------------------------------------------------------- */
.rnd__grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; }
.rnd__heading{ color:var(--c-primary); font-size:24px; font-weight:700; margin-bottom:26px; line-height:1.5; }
.rnd__text p{ margin-bottom:20px; }
.rnd__gallery{ display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:26px; }
.rnd__gallery figure{ text-align:center; }
.rnd__gallery img, .rnd__gallery svg{ width:100%; border:1px solid var(--c-border);
  border-radius:var(--radius); display:block; background:#fff; }
.rnd__gallery figcaption{ margin-top:10px; color:var(--c-muted); font-size:14px; }
.rnd__tags{ margin-top:26px; display:flex; gap:14px; flex-wrap:wrap; }
.rnd__tags span{ padding:6px 22px; border:1px solid var(--c-primary); color:var(--c-primary);
  border-radius:30px; font-size:14px; }

.cap-table{ width:100%; max-width:560px; border-collapse:collapse; text-align:center;
  color:#fff; margin:0 auto; }
.cap-table caption{ background:var(--c-sky); font-size:26px; font-weight:700; padding:18px;
  letter-spacing:3px; caption-side:top; }
.cap-table th,.cap-table td{ padding:13px 10px; border:1px solid rgba(0,0,0,.25);
  font-size:15px; font-weight:400; }
.cap-table thead th{ background:var(--c-sky); font-weight:700; font-size:17px; }
.cap-table tbody th{ background:var(--c-sky); font-weight:400; }
.cap-table td{ background:var(--c-sky); }
.cap-table td.ok{ background:var(--c-sky-deep); font-weight:700; }

/* 14. 联系我们 ----------------------------------------------------------- */
.contact-info{ display:grid; grid-template-columns:repeat(4,1fr); gap:30px; margin-bottom:64px; }
.contact-info__item{ text-align:center; padding:36px 18px; border:1px solid var(--c-border);
  border-radius:var(--radius); transition:.3s; }
.contact-info__item:hover{ box-shadow:var(--shadow); transform:translateY(-4px);
  border-color:var(--c-primary); }
.contact-info__icon{ width:46px; height:46px; margin:0 auto 18px; border-radius:50%;
  background:rgba(32,151,243,.1); display:flex; align-items:center; justify-content:center;
  color:var(--c-primary); }
.contact-info__icon svg{ width:24px; height:24px; fill:currentColor; }
.contact-info__item h3{ font-size:16px; color:var(--c-text); margin-bottom:10px; }
.contact-info__item p{ font-size:14px; color:var(--c-body); word-break:break-word; }

.map-embed{ width:100%; height:420px; border:0; border-radius:var(--radius); overflow:hidden; }
.map-embed iframe{ width:100%; height:100%; border:0; display:block; }
.map-embed--static{ position:relative; display:block; background:#e8eef4;
  box-shadow:0 2px 12px rgba(15,42,67,.08); }
.map-embed--static .map-embed__bg{ position:absolute; inset:0; width:100%; height:100%; }
.map-embed__pin{ position:absolute; left:50%; top:44%; transform:translate(-50%,-100%);
  width:52px; height:52px; color:#e64533;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.25)); }
.map-embed__pin svg{ width:100%; height:100%; fill:currentColor; }
.map-embed__label{ position:absolute; left:50%; top:52%; transform:translateX(-50%);
  background:#fff; border-radius:var(--radius); padding:14px 22px; text-align:center;
  box-shadow:0 4px 16px rgba(15,42,67,.15); white-space:nowrap; }
.map-embed__label strong{ display:block; font-size:16px; color:var(--c-text); margin-bottom:4px; }
.map-embed__label span{ display:block; font-size:13px; color:var(--c-body); margin-bottom:6px; }
.map-embed__label em{ font-style:normal; font-size:13px; color:var(--c-primary); }
.map-embed--static:hover .map-embed__label em{ text-decoration:underline; }
@media (max-width:640px){
  .map-embed{ height:340px; }
  .map-embed__label{ white-space:normal; width:82%; }
}

/* 15. 页脚 --------------------------------------------------------------- */
.site-footer{ background:var(--c-footer); color:var(--c-footer-text); padding:64px 0 0; }
.site-footer__cols{ display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:52px; padding-bottom:52px; }
.site-footer__col h3{ color:#fff; font-size:18px; letter-spacing:1px; margin-bottom:22px; font-weight:700; }
.site-footer__col ul li, .site-footer__col p{ font-size:14px; line-height:2.2; }
.site-footer__col a:hover{ color:#fff; }
.site-footer__brand{ display:flex; align-items:center; gap:12px; color:#fff; font-size:16px;
  font-weight:700; margin-bottom:20px; }
.site-footer__brand img{ width:42px; }
.site-footer__qr{ width:140px; height:140px; border-radius:2px; }
.site-footer__bottom{ border-top:1px solid rgba(255,255,255,.08); padding:24px 0;
  text-align:center; font-size:13px; line-height:2; }
.site-footer__bottom a:hover{ color:#fff; }

/* 16. 返回顶部 ----------------------------------------------------------- */
.back-top{ position:fixed; right:28px; bottom:40px; z-index:900; width:56px; height:56px;
  background:var(--c-primary); color:#fff; border-radius:var(--radius);
  display:flex; align-items:center; justify-content:center; opacity:0; visibility:hidden;
  transition:.3s; box-shadow:0 6px 18px rgba(32,151,243,.4); }
.back-top.show{ opacity:1; visibility:visible; }
.back-top:hover{ background:var(--c-primary-deep); }
.back-top svg{ width:26px; height:26px; }

/* 新闻详情分享 */
.article{ max-width:860px; margin:0 auto; }
.article__head{ text-align:center; border-bottom:1px solid var(--c-border); padding-bottom:28px;
  margin-bottom:36px; }
.article__head h1{ font-size:30px; color:var(--c-text); margin-bottom:16px; }
.article__meta{ font-size:14px; color:var(--c-muted); }
.article__body{ color:var(--c-body); line-height:1.9; }
.article__body p{ margin-bottom:22px; font-size:16px; line-height:1.9; }
.article__body h3{ font-size:18px; color:var(--c-text); font-weight:700; margin:28px 0 14px; }
.article__body strong{ color:var(--c-text); font-weight:700; }
.article__share{ margin-top:40px; padding-top:24px; border-top:1px solid var(--c-border);
  font-size:14px; color:var(--c-muted); }
.article__share a{ margin:0 8px; color:var(--c-primary); }

/* 17. 响应式 ------------------------------------------------------------- */
@media (max-width:1280px){
  .site-header .container{ gap:20px; }
  .brand .name{ font-size:18px; }
  .main-nav a{ padding:0 14px; font-size:15px; }
  .lang-switch{ margin-left:8px; }
}

@media (max-width:1024px){
  /* 导航：汉堡 + 抽屉（1024px 起收起，避免品牌名+菜单挤压换行） */
  .nav-toggle{ display:block; }
  .site-header .container{ position:static; }
  .main-nav{ position:fixed; top:var(--header-h); left:0; right:0; bottom:0;
    background:#fff; overflow-y:auto; transform:translateX(100%); transition:transform .3s; }
  .main-nav.open{ transform:translateX(0); }
  .main-nav > ul{ flex-direction:column; align-items:stretch; padding:10px 0; }
  .main-nav a{ line-height:1.4; padding:16px 28px; border-bottom:1px solid var(--c-border); }
  .main-nav a::after{ display:none; }
  .lang-switch{ margin:0; padding:16px 28px; }

  /* 抽屉内子菜单：静态展开、缩进显示 */
  .main-nav .has-sub > a{ padding-right:36px; }
  .main-nav .has-sub > a::before{ right:24px; }
  .main-nav .sub-menu{
    position:static; transform:none; opacity:1; visibility:visible;
    box-shadow:none; border-radius:0; padding:0; background:var(--c-bg-soft);
  }
  /* 盖过桌面 :hover/:focus-within 的 translate(-50%,0)，防止抽屉内悬停时子菜单左移 */
  .main-nav .has-sub:hover .sub-menu,
  .main-nav .has-sub:focus-within .sub-menu{ transform:none; }
  .main-nav .sub-menu a{ padding:12px 28px 12px 48px; text-align:left; font-size:14px; }
  .main-nav .sub-menu li:last-child a{ border-bottom:none; }

  .section{ padding:64px 0; }
  .about__text{ padding:48px 5% 48px 40px; }
  .about__vertical{ width:56px; font-size:24px; }
  .product-grid{ grid-template-columns:repeat(3,1fr); gap:20px; }
  .clients__row{ grid-template-columns:repeat(3,1fr); gap:28px; }
  .contact-info{ grid-template-columns:repeat(2,1fr); }
  .categories__strip{ height:380px; }
  .category-card__name{ font-size:17px; }
}

@media (max-width:860px){
  :root{ --header-h:64px; }
  body.has-fixed-header{ padding-top:var(--header-h); }
  .brand img{ width:40px; }
  .brand .name{ font-size:17px; }

  .hero{ height:calc(100vh - var(--header-h)); }
  .hero__tag{ padding:10px 30px; }

  .section-head h2{ font-size:28px; }
  .about__band,
  .rnd__grid{ grid-template-columns:1fr; gap:36px; }
  .about__media{ min-height:300px; }
  .about__text{ padding:36px 24px 48px; }
  .about__vertical{ width:48px; font-size:20px; padding-top:20px; }
  .product-grid{ grid-template-columns:repeat(2,1fr); }
  .news-grid{ grid-template-columns:1fr; gap:28px; }
  .clients__row{ grid-template-columns:repeat(3,1fr); }

  /* 分类卡片在窄屏改为纵向横条，避免文字挤压 */
  .categories__strip{ height:auto; flex-direction:column; }
  .category-card{ min-height:200px; flex:none; border-right:none;
    border-bottom:1px solid rgba(255,255,255,.25); }
  .category-card__icon{ width:46px; height:46px; margin:0; }
  .category-card__more{ display:none; }
  .category-card:hover{ flex-grow:0; }
  .category-card__shade{ display:none; }
  .category-card__content{ display:none; }
  .category-card__bottom{ padding:36px 26px 18px; font-size:17px; text-align:left; }

  .news-list__item{ flex-direction:column; gap:16px; }
  .news-list__thumb{ flex:none; width:100%; aspect-ratio:16/9; }
  .news-card__media{ flex-basis:140px; }
  .group-layout{ grid-template-columns:1fr; gap:28px; }
  .import-gallery{ grid-template-columns:repeat(2, 1fr); gap:14px; }
  .market-figure{ margin:22px 0 0 24px; }
  .market-figure__ghost{ top:-18px; left:-24px; width:calc(100% - 28px); height:calc(100% - 20px); }
  .devcap{ gap:32px; }
  .devcap__p{ margin-bottom:32px; }
  .page-banner{ height:320px; }
  .page-banner h1{ font-size:32px; }
  .site-footer__cols{ grid-template-columns:1fr; gap:38px; }
  .contact-info{ grid-template-columns:1fr; }
  .back-top{ width:48px; height:48px; right:18px; bottom:24px; }
}

@media (max-width:480px){
  body{ font-size:14px; }
  .section{ padding:52px 0; }
  .brand .name{ font-size:15px; letter-spacing:0; }
  .hero__title{ letter-spacing:2px; }
  .product-grid{ grid-template-columns:repeat(2,1fr); gap:14px; }
  .clients__row{ grid-template-columns:repeat(2,1fr); gap:20px; }
  .news-card{ flex-direction:column; }
  .news-card__media{ flex:none; width:100%; aspect-ratio:16/9; }
  .cap-table{ font-size:13px; }
  .cap-table th,.cap-table td{ padding:9px 5px; font-size:13px; }
  .cap-table caption{ font-size:21px; }
}
