/* ===== 基础 ===== */
:root{
  --black:#111; --red:#c8102e; --red-d:#9e0c24; --gray:#222; --lgray:#666;
  --bg:#f6f7f9; --line:#e5e7eb; --maxw:1240px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:-apple-system,"PingFang SC","Microsoft YaHei",Segoe UI,Roboto,Arial,sans-serif;
  color:#222;background:var(--bg);line-height:1.6}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.btn{display:inline-block;background:var(--red);color:#fff;border:0;padding:10px 22px;border-radius:4px;cursor:pointer;font-size:15px}
.btn:hover{background:var(--red-d)}
.muted{color:var(--lgray)}
.container{max-width:var(--maxw);margin:0 auto;padding:0 16px}
.site-main{min-height:60vh;padding-top:60px;padding-bottom:40px}

/* ===== 顶部固定导航：透明背景+白色文字，悬浮在视频/轮播图上 ===== */
.topnav{position:fixed;top:0;left:0;right:0;z-index:1000;background:transparent !important}
/* 默认首页完全透明；其他页面由 header.php 内联样式覆盖为黑底 */
.nav-inner{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;height:60px;padding:0 16px}
.brand{color:#fff;font-weight:700;font-size:18px;white-space:nowrap;margin-right:18px}
.nav-links{display:flex;align-items:center;gap:4px;margin-left:auto}
.nav-links a{color:#fff;padding:8px 14px;border-radius:4px;font-size:15px;transition:.15s}
.nav-links a:hover{background:var(--red);color:#fff}
.nav-links a.active{background:var(--red)}
.lang-switch{
  margin-left:8px;
  appearance:none;
  -webkit-appearance:none;
  background:rgba(255,255,255,.12) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23fff' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat right 10px center;
  color:#fff;
  border:1px solid rgba(255,255,255,.5);
  border-radius:4px;
  padding:7px 30px 7px 12px;
  font-size:14px;
  cursor:pointer;
  line-height:1.4;
}
.lang-switch option,.lang-switch optgroup{background:#222;color:#fff}
.lang-switch:focus{outline:none;border-color:var(--red)}
.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:24px;margin-left:auto}

/* ===== 右侧悬浮 ===== */
.float-bar{position:fixed;right:16px;top:50%;transform:translateY(-50%);z-index:999;display:flex;flex-direction:column;gap:10px}
.fb{width:54px;height:54px;border:0;border-radius:50%;background:var(--black);color:#fff;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;box-shadow:0 4px 14px rgba(0,0,0,.25);transition:.15s}
.fb .fb-ico{font-size:20px;line-height:1}
.fb .fb-txt{font-size:11px}
.fb:hover{background:var(--red)}
.fb-tel{background:var(--red)}
.fb-tel:hover{background:var(--red-d)}

/* ===== 弹层 ===== */
.modal{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px}
.modal[hidden]{display:none}
.modal-box{background:#fff;border-radius:10px;max-width:420px;width:100%;padding:24px;position:relative}
.modal-box h3{margin:0 0 14px}
.modal-close{position:absolute;right:12px;top:8px;background:none;border:0;font-size:26px;cursor:pointer;color:#888}
.mail-form input,.mail-form textarea{width:100%;margin-bottom:10px;padding:10px;border:1px solid var(--line);border-radius:6px;font-size:14px}
.mail-form textarea{min-height:90px;resize:vertical}
.qr-grid{display:flex;flex-wrap:wrap;gap:14px}
.qr-grid img{width:96px;height:96px;object-fit:cover;border:1px solid var(--line)}
.qr-grid span{display:block;text-align:center;font-size:12px;margin-top:4px}

/* ===== Hero / 轮播 ===== */
.hero{margin-top:-60px;padding-top:60px;position:relative;overflow:hidden;background:#000;height:570px}
.hero video,.hero img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block}
.hero.video-fallback{background-size:cover;background-position:center}
.hero.video-fallback video{opacity:0}
.hero-caption{position:absolute;top:0;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:60px 16px 40px;color:#fff;
  background:linear-gradient(rgba(0,0,0,.25),rgba(0,0,0,.45))}
.hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#2a2a2a,#111)}
.hero-bg[style*="background-image"]{background-size:cover;background-position:center}
.hero-fallback{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;background-size:cover;background-position:center;background-color:#111}
.hero-play{position:absolute;right:16px;bottom:16px;z-index:5;width:48px;height:48px;border-radius:50%;border:0;background:#fff;color:#111;font-size:20px;display:none;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.hero-play:hover{background:#eee}
.hero-caption h1{margin:0 0 10px;font-size:36px;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.hero-caption p{margin:0;font-size:16px;opacity:.95;text-shadow:0 1px 4px rgba(0,0,0,.5)}

/* 普通轮播（产品中心等） */
.carousel{margin-top:0;padding-top:60px;position:relative;height:420px;overflow:hidden;background:#000}
.carousel .slide{position:absolute;inset:0;opacity:0;transition:opacity .6s;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center}
.carousel .slide.active{opacity:1}
.carousel .slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.carousel .slide .cap{position:relative;z-index:2;background:rgba(0,0,0,.45);padding:18px 26px;border-radius:8px}
.carousel .slide h2{margin:0 0 6px;font-size:30px}
.dots{position:absolute;bottom:14px;left:0;right:0;text-align:center;z-index:3}
.dots button{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.5);margin:0 4px;cursor:pointer}
.dots button.active{background:var(--red)}

/* ===== 区块通用 ===== */
.section{padding:46px 0}
.section h2.title{text-align:center;font-size:26px;margin:0 0 8px}
.section .sub{text-align:center;color:var(--lgray);margin:0 0 30px}
.section.dark{background:var(--gray);color:#fff}
.section.dark .sub{color:#bbb}

/* 产品分类入口 */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.cat-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px;text-align:center;transition:.15s;color:#222}
.cat-card:hover{border-color:var(--red);color:var(--red);transform:translateY(-2px)}

/* 搜索栏 */
.search-bar{display:flex;max-width:560px;margin:0 auto 10px}
.search-bar input{flex:1;padding:12px 14px;border:1px solid var(--line);border-right:0;border-radius:6px 0 0 6px;font-size:15px}
.search-bar button{background:var(--red);color:#fff;border:0;padding:0 22px;border-radius:0 6px 6px 0;cursor:pointer}

/* 产品中心分类树：一级/二级/三级用不同大小和颜色区分 */
.cat-tree{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px}
.cat-tree ul{list-style:none;padding:0;margin:0}
.cat-tree li{margin:6px 0;line-height:1.5}
.cat-tree a{display:block;padding:4px 0;color:#333;transition:.15s}
.cat-tree a:hover{color:var(--red)}
.cat-tree .cat-l1{font-size:16px;font-weight:700}
.cat-tree .cat-l1 a{color:#111}
.cat-tree .cat-l2{font-size:14px;font-weight:500}
.cat-tree .cat-l2 a{color:#444}
.cat-tree .cat-l3{font-size:13px;font-weight:400}
.cat-tree .cat-l3 a{color:#666}
.cat-tree li a.active,.cat-tree li.active>a{color:var(--red);font-weight:700}

/* 产品列表 每排4个 */
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:18px}
.product-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;transition:.15s}
.product-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.1);transform:translateY(-3px)}
.product-thumb{position:relative;aspect-ratio:1/1;background:#f0f0f0}
.product-thumb img{width:100%;height:100%;object-fit:cover}
.product-thumb .badge-video{position:absolute;left:8px;bottom:8px;background:rgba(0,0,0,.6);color:#fff;font-size:12px;padding:2px 8px;border-radius:4px}
.product-card .info{padding:12px}
.product-card .info h3{margin:0 0 4px;font-size:15px;line-height:1.4;height:42px;overflow:hidden}
.product-card .info .model{color:var(--lgray);font-size:13px}

/* 合作企业 */
.section.partners-section{padding-bottom:0}
.partner-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}
.partner-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px;text-align:center;color:#222}
.partner-card img{width:100%;height:110px;object-fit:contain;margin:0 auto}
.partner-card span{display:block;margin-top:8px;font-size:14px;color:#222}

/* 关于我们图文 */
.about-row{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;margin-bottom:30px}
.about-row img{border-radius:10px}
.about-row h3{color:var(--red);margin-top:0}
.prose{color:#444;line-height:1.8;font-size:15px}
.prose p{margin:0 0 12px}
.prose h2,.prose h3,.prose h4{color:var(--red);margin:18px 0 10px}
.prose ul,.prose ol{margin:0 0 12px;padding-left:22px}
.prose li{margin:4px 0}
.prose img{max-width:100%;height:auto;border-radius:8px}
.prose a{color:var(--red);text-decoration:underline}

/* 新闻列表 */
.news-list{display:grid;gap:18px}
.news-item{display:grid;grid-template-columns:200px 1fr;gap:18px;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.news-item img{width:100%;height:140px;object-fit:cover}
.news-item .meta{padding:16px}
.news-item .tag{display:inline-block;background:var(--red);color:#fff;font-size:12px;padding:2px 10px;border-radius:10px;margin-bottom:6px}
.news-item h3{margin:0 0 6px;font-size:18px}
.news-tabs{display:flex;gap:10px;justify-content:center;margin-bottom:22px;flex-wrap:wrap}
.news-tabs a{padding:8px 18px;border:1px solid var(--line);border-radius:20px;background:#fff}
.news-tabs a.active{background:var(--red);color:#fff;border-color:var(--red)}

/* 维修/联系 地图与列表 */
.map-list{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}
.repair-intro{max-width:900px;margin:0 auto 34px;color:#444;line-height:1.8;font-size:15px}
.repair-intro p{margin:0 0 12px}
.repair-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px}
.repair-card h3{margin:0 0 8px;color:var(--red)}
.gmap{width:100%;height:300px;border:0;border-radius:10px}
.contact-node{position:relative;height:300px;background:#000;overflow:hidden}
.contact-node canvas{width:100%;height:100%}

/* 资料中心 */
.res-video{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.res-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.res-card video,.res-card img{width:100%;height:180px;object-fit:cover;background:#000}
.res-card .info{padding:12px}
.res-card .info h3{margin:0 0 6px;font-size:16px}
.pdf-cat{margin-bottom:24px}
.pdf-cat h3{color:var(--red);border-left:4px solid var(--red);padding-left:10px}
.pdf-item{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin-bottom:10px;gap:12px}
.pdf-item form{display:flex;align-items:center;gap:8px}
.pdf-item input[type="password"]{padding:8px 10px;border:1px solid var(--line);border-radius:6px;font-size:14px;width:130px}
.pdf-item .dl{pointer-events:auto}

/* 面包屑 */
.crumb{padding:14px 0;font-size:14px;color:var(--lgray)}
.crumb a{color:var(--red)}

/* 分页 */
.pager{display:flex;gap:6px;justify-content:center;margin-top:26px;flex-wrap:wrap}
.pager a{padding:8px 14px;border:1px solid var(--line);border-radius:6px;background:#fff;color:#333}
.pager a.active{background:var(--red);color:#fff;border-color:var(--red)}

/* 邮件入口区块（首页第五位等） */
/* 首页 CTA / Online Booking */
.cta-section{
  position:relative;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  color:#fff;
}
.cta-section::before{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.55);
  z-index:1;
}
.cta-section .container{position:relative;z-index:2}
.cta-wrap{
  display:grid;
  grid-template-columns:1fr 420px;
  gap:40px;
  align-items:center;
}
.cta-text h2{
  margin:0 0 16px;
  font-size:34px;
  line-height:1.25;
}
.cta-text p{
  margin:0;
  font-size:16px;
  opacity:.9;
  max-width:420px;
}
.cta-card{
  background:#fff;
  border-radius:10px;
  padding:28px;
  color:#222;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.cta-form label{
  display:block;
  margin-bottom:6px;
  font-size:14px;
  font-weight:600;
  color:#333;
}
.cta-input{
  display:flex;
  align-items:flex-start;
  border-bottom:1px solid #ccc;
  margin-bottom:20px;
  padding-bottom:6px;
}
.cta-ico{
  width:24px;
  flex-shrink:0;
  color:#888;
  font-size:18px;
  line-height:1.4;
  margin-right:8px;
}
.cta-input input,
.cta-input textarea{
  flex:1;
  border:0;
  background:transparent;
  padding:0;
  font-size:15px;
  color:#222;
  outline:none;
  resize:none;
  line-height:1.4;
}
.cta-input textarea{min-height:60px}
.cta-submit{
  width:100%;
  background:var(--red);
  color:#fff;
  border:0;
  padding:12px;
  font-size:15px;
  border-radius:4px;
  cursor:pointer;
}
.cta-submit:hover{background:var(--red-d)}

@media (max-width:760px){
  .cta-wrap{grid-template-columns:1fr}
  .cta-text{text-align:center}
  .cta-text h2{font-size:26px}
  .cta-card{padding:22px}
}

/* 页内分割轮播 */
.divider-carousel{padding:0;margin:0}
.divider-carousel .carousel{border-radius:0}

/* 首页热门产品平铺展示（按一级分类） */
.hot-product-grid{grid-template-columns:repeat(6,1fr)}

/* 首页二级/三级分类筛选 */
.subcat-filter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:14px}
.subcat-btn{display:inline-block;padding:7px 16px;border-radius:20px;background:rgba(255,255,255,.12);color:#fff;font-size:14px;transition:.15s}
.subcat-btn:hover{background:rgba(255,255,255,.25)}
.subcat-btn.active{background:#fff;color:var(--red)}
.thirdcat-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;margin-bottom:10px;color:#ccc;font-size:13px}
.thirdcat-label{color:#fff;font-weight:500;white-space:nowrap}
.thirdcat-btn{display:inline-block;padding:5px 12px;border-radius:15px;background:rgba(255,255,255,.08);color:#ddd;font-size:13px;transition:.15s}
.thirdcat-btn:hover{background:rgba(255,255,255,.18)}
.thirdcat-btn.active{background:#fff;color:var(--red)}

/* ===== 底部通栏 ===== */
.site-footer{background:var(--gray);color:#ddd;padding:40px 0 18px}
.foot-inner{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px;padding:0 16px}
.site-footer h4{color:#fff;margin:0 0 14px;font-size:16px}
.foot-nav{display:flex;flex-wrap:wrap;gap:8px 16px}
.foot-nav a{color:#ccc;font-size:14px}
.foot-nav a:hover{color:var(--red)}
.foot-contact p{margin:6px 0;font-size:14px}
.foot-bottom{border-top:1px solid #333;margin-top:26px;padding:16px;text-align:center;font-size:13px;color:#999}
.foot-bottom a{color:#bbb}
.qr-grid img{background:#fff;padding:4px;border-radius:6px}

/* ===== 响应式 ===== */
@media (max-width:980px){
  .product-grid{grid-template-columns:repeat(3,1fr)}
  .hot-product-grid{grid-template-columns:repeat(4,1fr)}
  .about-row,.map-list{grid-template-columns:1fr}
  .foot-inner{grid-template-columns:1fr}
}
@media (max-width:760px){
  .nav-toggle{display:block}
  .nav-links{position:absolute;top:60px;left:0;right:0;background:var(--black);flex-direction:column;align-items:stretch;
    padding:10px 0;display:none}
  .nav-links.open{display:flex}
  .nav-links a{padding:12px 18px}
  .lang-switch{width:calc(100% - 36px);margin:8px 18px 4px;border-color:rgba(255,255,255,.35)}
  .hero{height:350px}
  .hero-play{display:flex;width:24px;height:24px;font-size:10px;background:#fff;color:#111;right:12px;bottom:12px}
  .carousel{height:260px}
  .product-grid{grid-template-columns:repeat(2,1fr)}
  .news-item{grid-template-columns:1fr}
  .news-item img{height:180px}
  .float-bar{right:10px;bottom:14px;top:auto;transform:none;flex-direction:row}
  .fb{width:46px;height:46px}
  .fb .fb-txt{display:none}
}
@media (max-width:460px){
  .product-grid{grid-template-columns:1fr 1fr;gap:10px}
  .hero-caption h1{font-size:22px}
}

/* 产品详情页 PDF 资料展示 */
.pdf-section{margin-top:30px}
.pdf-preview{width:100%;background:#f8f8f8;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.pdf-preview iframe{width:100%;height:520px;border:0;display:block}
.pdf-actions{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}

@media (max-width:760px){
  .pdf-preview iframe{height:360px}
}
