/* 半点科技官网样式 - 水行业深蓝青绿配色 */
* { box-sizing: border-box; }
body { margin: 0; font-family: "PingFang SC","Microsoft YaHei",sans-serif; color:#333; line-height:1.7; }
img { max-width:100%; }

nav { background:#032a6b; padding:14px 24px; position:sticky; top:0; z-index:10; }
nav strong { color:#fff; font-size:18px; margin-right:24px; }
nav a { color:#cfe8f5; text-decoration:none; margin-right:16px; font-size:15px; }
nav a:hover { color:#fff; }

header { background:linear-gradient(135deg,#032a6b,#0575e6); color:#fff; text-align:center; padding:90px 24px; }
header h1 { margin:0 0 14px; font-size:38px; }
header p { margin:0 0 8px; opacity:.92; font-size:18px; }
header .tel { font-size:22px; font-weight:bold; margin-top:20px; }
header .tel a { color:#ffd166; text-decoration:none; }

.stats { display:flex; justify-content:center; gap:60px; background:#f0f7fa; padding:28px 24px; flex-wrap:wrap; }
.stats div { text-align:center; }
.stats strong { display:block; font-size:28px; color:#032a6b; }
.stats span { color:#666; font-size:14px; }

section { max-width:1100px; margin:0 auto; padding:56px 24px; }
section.alt { background:#f7fbfc; max-width:none; }
section.alt > * { max-width:1100px; margin-left:auto; margin-right:auto; }
section h2 { color:#032a6b; border-left:4px solid #0575e6; padding-left:10px; font-size:28px; }
section .sub { color:#777; margin-top:-6px; }

.grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:22px; margin-top:24px; }
.card { background:#fff; border:1px solid #e2eef3; border-radius:10px; overflow:hidden; transition:box-shadow .2s; }
.card:hover { box-shadow:0 4px 16px rgba(3,42,107,.12); }
.card img { width:100%; height:150px; object-fit:cover; }
.card h3 { margin:12px 14px 6px; font-size:16px; }
.card h3 a { color:#032a6b; text-decoration:none; }
.card p { margin:0 14px 14px; font-size:13px; color:#666; }

.artlist { list-style:none; padding:0; }
.artlist li { border-bottom:1px dashed #d5e5ec; padding:10px 0; }
.artlist a { color:#333; text-decoration:none; }
.artlist a:hover { color:#0575e6; }

.aboutwrap { display:flex; gap:28px; align-items:flex-start; margin-top:10px; }
.aboutwrap img { width:320px; border-radius:10px; flex-shrink:0; }
.aboutwrap p { margin:0; text-align:justify; }

footer { background:#222; color:#ccc; text-align:center; padding:36px 24px; }
footer h2 { color:#fff; font-size:20px; }
footer a { color:#ffd166; text-decoration:none; }
footer .copyright { font-size:13px; color:#888; margin-top:14px; }

/* 详情页 */
main.detail { max-width:860px; margin:0 auto; padding:40px 24px; }
main.detail h1 { color:#032a6b; font-size:26px; border-bottom:2px solid #e2eef3; padding-bottom:12px; }
.content img { border-radius:8px; margin:10px 0; }
.content h2,.content h3 { color:#032a6b; }
.back a { color:#0575e6; text-decoration:none; }

@media (max-width:640px) {
    nav { text-align:center; }
    nav strong { display:block; margin-bottom:8px; }
    nav a { margin:0 8px; }
    header h1 { font-size:28px; }
    .aboutwrap { flex-direction:column; }
    .aboutwrap img { width:100%; }
}

/* 详情页主图 */
img.mainimg { display:block; max-width:420px; width:100%; margin:16px auto; border-radius:8px; box-shadow:0 2px 10px rgba(3,42,107,.12); }

/* ===== v3：轮播首屏 ===== */
header { padding:0; }
.slider { position:relative; height:420px; overflow:hidden; }
.slide { position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity 1.2s ease; }
.slide.active { opacity:1; }
.hero-text { position:absolute; left:0; right:0; bottom:0; padding:40px 24px 30px;
    background:linear-gradient(transparent, rgba(3,42,107,.85)); color:#fff; text-align:center; }
.hero-text h1 { margin:0 0 10px; font-size:34px; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.hero-text p { margin:0 0 6px; opacity:.95; font-size:17px; }
.hero-text .tel { font-size:21px; font-weight:bold; margin-top:12px; }
.hero-text .tel a { color:#ffd166; text-decoration:none; }
.dots { position:absolute; bottom:12px; left:0; right:0; text-align:center; z-index:2; }
.dots span { display:inline-block; width:10px; height:10px; border-radius:50%; background:rgba(255,255,255,.45); margin:0 5px; cursor:pointer; }
.dots span.on { background:#ffd166; }

/* ===== v3：联系板块 ===== */
.contact-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:22px; margin-top:24px; }
.contact-card { background:#fff; border:1px solid #e2eef3; border-radius:12px; padding:26px 20px; text-align:center; }
.contact-card .qr { width:170px; height:170px; object-fit:contain; border:1px solid #eee; border-radius:8px; }
.contact-card .cicon { font-size:40px; line-height:1.4; }
.contact-card h3 { color:#032a6b; margin:10px 0 6px; }
.contact-card p { margin:4px 0; color:#666; font-size:14px; }
.contact-card a { color:#0575e6; text-decoration:none; }
.contact-card a.big { font-size:22px; font-weight:bold; color:#032a6b; }

/* ===== v3：手机悬浮拨号 ===== */
.call-float { display:none; position:fixed; right:18px; bottom:18px; width:56px; height:56px; border-radius:50%;
    background:#e63946; color:#fff; font-size:26px; text-align:center; line-height:56px;
    box-shadow:0 4px 14px rgba(0,0,0,.3); z-index:99; text-decoration:none; }

@media (max-width:640px) {
    .slider { height:300px; }
    .hero-text h1 { font-size:24px; }
    .call-float { display:block; }
}

.aboutwrap.full p { max-width:860px; }

/* 详情页表格与标题统一 */
.content table { border-collapse:collapse; margin:14px 0; width:100%; max-width:680px; font-size:15px; }
.content td, .content th { border:1px solid #c9d8e0; padding:8px 12px; text-align:left; }
.content h2, .content h3 { font-size:20px; color:#032a6b; margin:26px 0 10px; }

/* 案例/产品页：简介引导段 */
.lead { background:#f0f7fa; border-left:4px solid #0575e6; padding:14px 18px; border-radius:0 8px 8px 0; color:#33505e; margin:14px 0 20px; }
/* 第二部分分隔标题 */
h2.part { border-top:2px solid #e2eef3; padding-top:28px; margin-top:40px; }

/* 无图文字卡片 */
.card.noimg { padding-top:20px; }
.card.noimg h3 { font-size:17px; }

/* 合作客户 logo 墙 */
.plogo { display:flex; flex-wrap:nowrap; justify-content:space-between; align-items:center; gap:14px; margin-top:24px; }
.plogo img { height:42px; width:auto; max-width:160px; object-fit:contain; filter:grayscale(1); opacity:.75; transition:all .25s; }
.plogo img:hover { filter:none; opacity:1; }
@media (max-width:640px) { .plogo { gap:18px; } .plogo img { height:38px; max-width:140px; } }

/* 导航 logo（白底圆角徽章，衬深蓝导航条） */
nav .logo { height:38px; width:auto; vertical-align:middle; margin-right:14px; }

/* 浮动在线咨询 */
.chat-btn { position:fixed; right:18px; bottom:18px; width:52px; height:52px; border-radius:50%;
    background:#07c160; color:#fff; font-size:24px; text-align:center; line-height:52px;
    cursor:pointer; box-shadow:0 4px 14px rgba(0,0,0,.3); z-index:99; }
.chat-tip { display:none; position:fixed; right:80px; bottom:26px; background:#fff; color:#333;
    padding:8px 12px; border-radius:8px; font-size:13px; box-shadow:0 2px 10px rgba(0,0,0,.15); z-index:99; }
.chat-tip span { color:#999; cursor:pointer; margin-left:6px; }
.chat-panel { display:none; position:fixed; right:18px; bottom:80px; width:230px; background:#fff;
    border-radius:12px; overflow:hidden; box-shadow:0 6px 24px rgba(0,0,0,.2); z-index:100; }
.chat-head { background:#032a6b; color:#fff; padding:10px 14px; font-weight:bold; font-size:14px; }
.chat-head span { float:right; cursor:pointer; opacity:.8; }
.chat-body { padding:8px 0; }
.chat-item { display:block; padding:9px 16px; color:#333; text-decoration:none; font-size:14px; border-bottom:1px solid #f0f4f6; }
.chat-item:last-child { border-bottom:none; }
.chat-item small { color:#888; }
.chat-item:hover { background:#f0f7fa; }
.chat-qr { text-align:center; }
.chat-qr img { width:110px; height:110px; object-fit:contain; border:1px solid #eee; border-radius:6px; }
@media (max-width:640px){ .call-float { bottom:82px; } }

/* 通用对话气泡（替代微信logo）+ 右中定位 */
.chat-btn { top:50%; bottom:auto; transform:translateY(-50%); right:14px; line-height:normal; }
.chat-btn .bub { display:inline-block; width:24px; height:19px; background:#fff; border-radius:12px; position:relative; vertical-align:middle; }
.chat-btn .bub::after { content:''; position:absolute; left:4px; bottom:-6px; border:6px solid transparent; border-top-color:#fff; border-right-width:0; }
.chat-panel { bottom:auto; top:50%; transform:translateY(-50%); right:76px; }
.chat-tip { bottom:auto; top:calc(50% + 42px); transform:translateX(calc((52px - 100%)/2)); right:14px; padding:6px 10px; font-size:12px; white-space:nowrap; }

/* 品牌区：蓝底白字徽章 + 公司名 */
.brand { display:inline-flex; align-items:center; }
.brand-text { color:#fff; font-size:17px; font-weight:bold; letter-spacing:1px; margin-right:18px; white-space:nowrap; }
nav { background:linear-gradient(90deg,#0575e6 0%,#021b79 100%); }
@media (max-width:640px){ .brand-text { display:none; } }

/* 底部公司名条 */
.site-foot { background:#021b79; color:rgba(255,255,255,.85); text-align:center; padding:20px 24px; font-size:14px; }
.site-foot p { margin:4px 0; }
.foot-addr { font-size:12px; color:rgba(255,255,255,.6); }
.foot-icp { font-size:12px; }
.foot-icp a { color:rgba(255,255,255,.6); text-decoration:none; }
.foot-icp a:hover { color:#fff; }

/* plogo 手机端折行 */
@media (max-width:640px) {
  .plogo { flex-wrap:wrap; justify-content:center; gap:14px; }
  .plogo img { height:34px; max-width:118px; }
}

/* 手机端导航重构：logo 一行、菜单一行、禁止词中断行 */
@media (max-width:640px) {
  nav { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; padding:10px 12px; }
  .brand { flex-basis:100%; justify-content:center; margin-bottom:6px; }
  nav a { white-space:nowrap; margin:5px 10px; font-size:14px; }
}
nav a { white-space:nowrap; }

/* 悬浮咨询：容器定位右侧留白正中，内部纵列居中 */
.chat-wrap { position:fixed; right:max(14px, calc((100vw - 1140px)/2 - 70px)); top:50%; transform:translateY(-50%); display:flex; flex-direction:column; align-items:center; gap:10px; z-index:99; }
.chat-wrap .chat-btn { position:static; top:auto; right:auto; transform:none; }
.chat-wrap .chat-tip { position:static; top:auto; bottom:auto; right:auto; transform:none; }
