/* ==========================================================================
   Scam Recovery Support SG — 政府门户风格视觉规范
   设计原则：方正、克制、信息密度高、层级清晰，避免装饰性视觉
   ========================================================================== */

*{box-sizing:border-box;margin:0;padding:0}

:root{
  /* 主色：深政务蓝 */
  --navy:#0e3466;
  --navy-dark:#0a284c;
  --navy-light:#1b4d8f;
  /* 强调色：官方红（用于警示、必填、重点） */
  --red:#b71c1c;
  --red-light:#d32f2f;
  /* 功能色 */
  --gold:#8a6d1f;
  --green:#1b6b3a;
  --blue-link:#0b4f9c;
  --blue-link-hover:#073a75;
  /* 中性 */
  --text:#1a1a1a;
  --text-2:#3d3d3d;
  --text-3:#5c5c5c;
  --muted:#737373;
  --line:#d4d4d4;
  --line-light:#e8e8e8;
  --bg:#ffffff;
  --bg-alt:#f4f5f7;
  --bg-muted:#eceef1;
  /* 字体：Public Sans（SIL OFL 开源，政府站常用）优先，回退系统栈 */
  --font:"Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,
         "Noto Sans","PingFang TC","Microsoft JhengHei","Noto Sans TC",sans-serif;
  --font-serif:"Georgia","Songti TC","Noto Serif TC",serif;
  --radius:2px;
  --maxw:1200px;
}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--font);
  font-size:16px;
  line-height:1.6;
  color:var(--text);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{display:block;max-width:100%}
a{color:var(--blue-link);text-decoration:none}
a:hover{text-decoration:underline}
b,strong{font-weight:700}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}

/* 无障碍：跳转到主内容 */
.skip-link{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:var(--navy);color:#fff;padding:10px 18px;font-size:14px;
}
.skip-link:focus{left:0}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* ==========================================================================
   顶部工具条（政府站标准：语言切换、紧急电话）
   ========================================================================== */
.topbar{
  background:var(--navy-dark);
  color:#cfd8e3;
  font-size:13px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.topbar .wrap{
  display:flex;align-items:center;justify-content:space-between;
  min-height:38px;gap:16px;flex-wrap:wrap;
}
.topbar-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.topbar-emergency{display:flex;align-items:center;gap:7px}
.topbar-emergency .dot{
  width:7px;height:7px;border-radius:50%;background:#ff5252;
  box-shadow:0 0 0 3px rgba(255,82,82,.22);
}
.topbar a{color:#e8eef6}
.topbar-sep{color:#4a6484}

/* 语言切换器 */
.lang-switch{display:flex;align-items:center;gap:0;border:1px solid rgba(255,255,255,.28);border-radius:var(--radius);overflow:hidden}
.lang-switch button{
  background:transparent;border:none;color:#cfd8e3;
  font-family:inherit;font-size:12.5px;font-weight:600;letter-spacing:.3px;
  padding:5px 13px;cursor:pointer;transition:background .15s,color .15s;
  white-space:nowrap;
}
.lang-switch button+button{border-left:1px solid rgba(255,255,255,.28)}
.lang-switch button:hover{background:rgba(255,255,255,.1);color:#fff}
.lang-switch button[aria-pressed="true"]{background:#fff;color:var(--navy-dark)}
.lang-switch button:focus-visible{outline:2px solid #fff;outline-offset:-2px}

/* ==========================================================================
   主导航
   ========================================================================== */
.masthead{background:#fff;border-bottom:3px solid var(--navy)}
.masthead .wrap{
  display:flex;align-items:center;justify-content:space-between;
  min-height:84px;gap:20px;
}
.brand{display:flex;align-items:center;gap:13px;flex:0 0 auto}
.brand-mark{width:52px;height:52px;flex:0 0 auto}
.brand-text{display:flex;flex-direction:column;line-height:1.25}
.brand-text .org{font-size:17px;font-weight:700;color:var(--navy);letter-spacing:-.2px}
.brand-text .sub{font-size:12px;color:var(--muted);letter-spacing:.4px;text-transform:uppercase;margin-top:2px}

.mainnav{display:flex;align-items:center;gap:0}
.mainnav a{
  font-size:14.5px;font-weight:600;color:var(--text-2);
  padding:10px 16px;border-bottom:3px solid transparent;margin-bottom:-3px;
  transition:color .15s,border-color .15s;
}
.mainnav a:hover{color:var(--navy);text-decoration:none;border-bottom-color:var(--navy)}
.mainnav .nav-cta{
  margin-left:16px;background:var(--red);color:#fff;
  padding:11px 22px;border-radius:var(--radius);border-bottom:none;
  margin-bottom:0;font-size:14px;
}
.mainnav .nav-cta:hover{background:#9c1616;color:#fff;border-bottom:none;text-decoration:none}

.nav-toggle{
  display:none;background:#fff;border:1px solid var(--line);
  padding:8px 12px;border-radius:var(--radius);font-family:inherit;
  font-size:14px;cursor:pointer;color:var(--text-2);
}

/* ==========================================================================
   Hero（政府通报风格：左文右图，无花哨渐变）
   ========================================================================== */
.hero{
  background:linear-gradient(180deg,#0e3466 0%,#123b70 100%);
  color:#fff;padding:0;
  border-bottom:1px solid var(--navy-dark);
}
.hero-inner{
  display:grid;grid-template-columns:1.1fr .9fr;
  gap:56px;align-items:center;padding:56px 0 60px;
}
.hero-breadcrumb{
  font-size:12.5px;color:#a9c0dd;margin-bottom:20px;
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
}
.hero-breadcrumb a{color:#cfdff5}
.hero-breadcrumb .sep{color:#5d7ea6}
.hero-badge{
  display:inline-block;background:rgba(183,28,28,.9);color:#fff;
  font-size:11.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;
  padding:5px 12px;border-radius:var(--radius);margin-bottom:20px;
}
.hero h1{
  font-size:40px;line-height:1.24;font-weight:800;
  letter-spacing:-.8px;margin-bottom:18px;
}
.hero h1 em{font-style:normal;color:#ffcf80}
.hero-lead{font-size:16.5px;color:#c7d5e8;max-width:540px;line-height:1.7}
.hero-actions{margin-top:30px;display:flex;gap:12px;flex-wrap:wrap}
.hero-meta{
  margin-top:32px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);
  display:flex;gap:36px;flex-wrap:wrap;
}
.hero-meta div{display:flex;flex-direction:column;gap:2px}
.hero-meta .k{font-size:11.5px;letter-spacing:1px;text-transform:uppercase;color:#8fa9c9}
.hero-meta .v{font-size:15px;font-weight:700;color:#fff}

/* Hero 视频卡 */
.hero-media{position:relative}
.video-frame{
  position:relative;display:block;width:100%;padding:0;border:none;cursor:pointer;
  background:#071c33;border-radius:var(--radius);overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
}
.video-frame img{width:100%;aspect-ratio:16/9;object-fit:cover;opacity:.94;transition:opacity .2s}
.video-frame:hover img{opacity:1}
.video-frame::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to top,rgba(4,16,30,.78) 0%,rgba(4,16,30,.08) 50%,transparent 72%);
  pointer-events:none;
}
.play-btn{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:64px;height:64px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.95);color:var(--navy);z-index:2;
  transition:transform .18s,background .18s;
}
.video-frame:hover .play-btn{transform:translate(-50%,-50%) scale(1.06);background:#fff}
.video-caption{
  position:absolute;left:0;right:0;bottom:0;padding:14px 18px;z-index:2;
  font-size:13px;font-weight:600;color:#fff;
}
.video-note{margin-top:10px;font-size:12px;color:#93aac7;text-align:center}

/* ==========================================================================
   按钮
   ========================================================================== */
.btn{
  display:inline-block;padding:13px 26px;border-radius:var(--radius);
  font-family:inherit;font-size:15px;font-weight:700;
  border:1px solid transparent;cursor:pointer;text-align:center;
  transition:background .15s,border-color .15s,color .15s;
  line-height:1.3;
}
.btn:hover{text-decoration:none}
.btn-primary{background:var(--red);color:#fff;border-color:var(--red)}
.btn-primary:hover{background:#9c1616;border-color:#9c1616}
.btn-secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.btn-secondary:hover{background:rgba(255,255,255,.12);border-color:#fff}
.btn-outline{background:#fff;color:var(--navy);border-color:var(--navy)}
.btn-outline:hover{background:var(--navy);color:#fff}
.btn-block{display:block;width:100%}
.btn-lg{padding:15px 30px;font-size:16px}

/* ==========================================================================
   通用区块
   ========================================================================== */
.section{padding:64px 0}
.section-alt{background:var(--bg-alt)}
.section-navy{background:var(--navy);color:#fff}
.section-hairline{border-top:1px solid var(--line)}

.sec-head{margin-bottom:36px;max-width:820px}
.sec-head h2{
  font-size:30px;line-height:1.3;font-weight:800;letter-spacing:-.4px;
  color:var(--navy);margin-bottom:12px;
}
.section-navy .sec-head h2{color:#fff}
.sec-head .lead{font-size:16px;color:var(--text-3);line-height:1.7}
.section-navy .sec-head .lead{color:#c7d5e8}

.kicker{
  display:inline-block;font-size:11.5px;font-weight:800;-webkit-letter-spacing:1.4px;
  letter-spacing:1.4px;text-transform:uppercase;color:var(--red);
  border-left:3px solid var(--red);padding-left:9px;margin-bottom:14px;
}
.section-navy .kicker{color:#ffcf80;border-left-color:#ffcf80}

/* ==========================================================================
   官方公告引用条（重要）
   ========================================================================== */
.advisory{
  background:#fff8e1;border:1px solid #e8d69a;border-left:5px solid var(--gold);
  border-radius:var(--radius);padding:20px 24px;margin-bottom:0;
}
.advisory-head{
  display:flex;align-items:center;gap:9px;margin-bottom:9px;
  font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:#6b5410;
}
.advisory h3{font-size:16.5px;line-height:1.45;color:#3d3010;margin-bottom:9px;font-weight:700}
.advisory p{font-size:14.5px;color:#5a4a1c;line-height:1.68}
.advisory a{color:#6b5410;text-decoration:underline;font-weight:700}
.advisory-src{display:block;margin-top:11px;font-size:12.5px;color:#8a7530;font-style:normal}

/* ==========================================================================
   痛点 / 情形清单
   ========================================================================== */
.pain{padding:44px 0;background:#0a284c;color:#fff}
.pain .wrap{display:grid;grid-template-columns:auto 1fr;gap:36px;align-items:start}
.pain-label{
  font-size:12px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;
  color:#8fa9c9;padding-top:4px;white-space:nowrap;
}
.pain-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none}
.pain-list li{
  font-size:14px;color:#e3ebf5;padding:9px 15px;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);
  border-radius:var(--radius);
}
.pain-foot{margin-top:18px;font-size:14.5px;color:#c7d5e8;grid-column:2}
.pain-foot b{color:#fff}

/* ==========================================================================
   视频区
   ========================================================================== */
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.vcard{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;cursor:pointer;display:flex;flex-direction:column;
  transition:border-color .18s,box-shadow .18s;
}
.vcard:hover{border-color:var(--navy);box-shadow:0 4px 14px rgba(14,52,102,.13)}
.vthumb{position:relative;background:#071c33;border-bottom:1px solid var(--line)}
.vthumb img{width:100%;aspect-ratio:16/9;object-fit:cover}
.play-btn-sm{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:52px;height:52px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.95);color:var(--navy);z-index:2;
}
.vindex{
  position:absolute;left:12px;top:12px;z-index:2;
  background:var(--navy);color:#fff;font-size:11.5px;font-weight:800;
  padding:3px 9px;border-radius:var(--radius);letter-spacing:.5px;
}
.vbody{padding:18px 20px 20px;flex:1;display:flex;flex-direction:column}
.vtag{
  display:inline-block;font-size:11px;font-weight:800;letter-spacing:.8px;
  text-transform:uppercase;color:var(--navy);background:var(--bg-muted);
  padding:3px 9px;border-radius:var(--radius);margin-bottom:10px;align-self:flex-start;
}
.vbody h3{font-size:16.5px;line-height:1.45;margin-bottom:8px;color:var(--text)}
.vbody p{font-size:14px;color:var(--text-3);line-height:1.6}

.video-side{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:26px;display:flex;flex-direction:column;justify-content:center;
}
.video-side h3{font-size:18px;line-height:1.4;margin-bottom:10px;color:var(--navy)}
.video-side p{font-size:14.5px;color:var(--text-3);margin-bottom:20px;line-height:1.65}
.video-side .fine{margin-top:12px;font-size:12px;color:var(--muted);text-align:center}

/* ==========================================================================
   步骤（编号列表式，官方文档感）
   ========================================================================== */
.steps{list-style:none;display:grid;gap:0;border-top:1px solid var(--line)}
.step{
  display:grid;grid-template-columns:88px 1fr auto;gap:24px;
  padding:26px 0;border-bottom:1px solid var(--line);align-items:start;
}
.step-num{
  font-size:13px;font-weight:800;color:#fff;background:var(--navy);
  width:44px;height:44px;border-radius:var(--radius);
  display:grid;place-items:center;letter-spacing:.5px;
}
.step-body h3{font-size:18px;margin-bottom:7px;color:var(--text)}
.step-body p{font-size:14.5px;color:var(--text-3);line-height:1.68;max-width:720px}
.step-when{
  font-size:11.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;
  color:var(--red);background:#fdecea;border:1px solid #f5c6c2;
  padding:5px 11px;border-radius:var(--radius);white-space:nowrap;
}

.steps-cta{
  margin-top:32px;background:#fff;border:1px solid var(--line);
  border-left:4px solid var(--navy);border-radius:var(--radius);
  padding:22px 26px;display:flex;align-items:center;
  justify-content:space-between;gap:24px;flex-wrap:wrap;
}
.steps-cta p{font-size:15px;color:var(--text-2)}
.steps-cta p b{color:var(--text)}

/* ==========================================================================
   案例（表格卡片，信息密度高）
   ========================================================================== */
.case-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.case{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;display:flex;flex-direction:column;
}
.case-head{
  display:flex;align-items:center;gap:12px;
  padding:16px 20px;background:var(--bg-alt);border-bottom:1px solid var(--line);
}
.case-avatar{
  flex:0 0 auto;width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;background:var(--navy);color:#fff;
  font-weight:700;font-size:14px;
}
.case-who b{display:block;font-size:14px;color:var(--text);line-height:1.35}
.case-who span{font-size:12px;color:var(--muted)}
.case-amount{
  margin-left:auto;font-size:16px;font-weight:800;color:var(--red);
  font-variant-numeric:tabular-nums;white-space:nowrap;
}
.case-body{padding:18px 20px;flex:1;display:flex;flex-direction:column;gap:12px}
.case-body p{font-size:14px;color:var(--text-3);line-height:1.65}
.case-outcome{
  background:#f1f6fb;border-left:3px solid var(--navy);
  padding:11px 14px;font-size:13.5px;color:#23466e;line-height:1.6;
}
.case-fine{margin-top:22px;font-size:12.5px;color:var(--muted);text-align:center}

/* ==========================================================================
   服务 + 警示
   ========================================================================== */
.two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:start}
.service-list{list-style:none;display:grid;gap:0;margin-top:22px;border-top:1px solid var(--line)}
.service-list li{
  padding:16px 0 16px 26px;border-bottom:1px solid var(--line);
  font-size:15px;color:var(--text-3);position:relative;line-height:1.65;
}
.service-list li::before{
  content:"";position:absolute;left:2px;top:24px;
  width:8px;height:8px;background:var(--navy);border-radius:1px;
}
.service-list li b{color:var(--text);display:block;margin-bottom:2px}

.warning-box{
  background:#fdecea;border:1px solid #f0b9b4;border-left:5px solid var(--red);
  border-radius:var(--radius);padding:24px;
}
.warning-box h3{
  font-size:16.5px;color:var(--red);margin-bottom:12px;
  display:flex;align-items:center;gap:9px;font-weight:800;
}
.warning-box p{font-size:14.5px;color:#5e2320;line-height:1.68;margin-bottom:12px}
.warning-box p:last-of-type{margin-bottom:16px}
.warning-box b{color:#3d1410}
.warning-link{font-size:14px;font-weight:700;color:var(--red);text-decoration:underline}

/* ==========================================================================
   表单区
   ========================================================================== */
.form-section{background:var(--navy);color:#fff;padding:64px 0}
.form-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.form-aside h2{font-size:28px;line-height:1.3;color:#fff;margin-bottom:14px;font-weight:800}
.form-aside .lead{font-size:15.5px;color:#c7d5e8;line-height:1.7;margin-bottom:26px}

.commitments{list-style:none;display:grid;gap:0;border-top:1px solid rgba(255,255,255,.16)}
.commitments li{
  display:flex;gap:11px;padding:13px 0;font-size:14.5px;color:#dbe6f3;
  border-bottom:1px solid rgba(255,255,255,.1);line-height:1.55;
}
.commitments li svg{flex:0 0 auto;margin-top:3px;color:#7ec89a}

.form-emergency{
  margin-top:26px;padding:16px 18px;background:rgba(183,28,28,.18);
  border:1px solid rgba(255,82,82,.4);border-radius:var(--radius);
}
.form-emergency p{font-size:13.5px;color:#ffcdc9;line-height:1.7}
.form-emergency b{color:#fff}
.form-emergency a{color:#fff;font-weight:700;text-decoration:underline}

.form-card{
  background:#fff;border-radius:var(--radius);padding:32px;
  border-top:5px solid var(--red);
  box-shadow:0 10px 30px rgba(3,18,38,.28);
}
.form-card h3{
  font-size:18px;color:var(--text);margin-bottom:6px;font-weight:800;
}
.form-card .form-sub{font-size:13.5px;color:var(--muted);margin-bottom:24px}

.field{margin-bottom:20px;position:relative}
.field label{
  display:block;font-size:13.5px;font-weight:700;color:var(--text-2);
  margin-bottom:7px;
}
.field label .req{color:var(--red);margin-left:2px}
.field .hint{font-size:12px;color:var(--muted);font-weight:400;margin-left:6px}
.field input,.field textarea,.field select{
  width:100%;padding:12px 14px;border:1px solid #b9b9b9;
  border-radius:var(--radius);background:#fff;color:var(--text);
  font-family:inherit;font-size:15.5px;line-height:1.4;
  transition:border-color .15s,box-shadow .15s;
}
.field input:focus,.field textarea:focus,.field select:focus{
  outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(14,52,102,.15);
}
.field input::placeholder,.field textarea::placeholder{color:#9e9e9e}
.field textarea{resize:vertical;min-height:100px}
.field .err{display:block;color:var(--red);font-size:12.5px;margin-top:6px;font-weight:600}
.field .err:empty{display:none}
.field .counter{
  position:absolute;right:2px;bottom:-19px;font-size:11.5px;color:var(--muted);
}
.field.invalid input,.field.invalid textarea{border-color:var(--red);border-width:2px}

.hp-wrap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}

.consent{
  display:flex;gap:10px;font-size:13px;color:var(--text-3);
  margin:24px 0 20px;align-items:flex-start;line-height:1.6;
}
.consent input{
  margin-top:3px;flex:0 0 auto;width:17px;height:17px;
  accent-color:var(--navy);cursor:pointer;
}
.consent a{color:var(--blue-link);text-decoration:underline}

.msg{margin-top:16px;font-size:14px;min-height:22px;font-weight:600}
.msg.ok{color:var(--green)}
.msg.err{color:var(--red)}
.form-fine{margin-top:12px;font-size:11.5px;color:var(--muted);text-align:center;line-height:1.6}
#submitBtn:disabled{opacity:.6;cursor:not-allowed}

/* ==========================================================================
   FAQ（官方文档折叠式）
   ========================================================================== */
.faq{display:grid;gap:0;border-top:1px solid var(--line);max-width:900px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{
  cursor:pointer;padding:18px 44px 18px 0;font-weight:700;font-size:15.5px;
  color:var(--text);list-style:none;position:relative;line-height:1.5;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"";position:absolute;right:8px;top:23px;
  width:10px;height:10px;border-right:2px solid var(--navy);border-bottom:2px solid var(--navy);
  transform:rotate(45deg);transition:transform .2s;
}
.faq details[open] summary::after{transform:rotate(-135deg);top:26px}
.faq summary:hover{color:var(--navy)}
.faq .faq-body{padding:0 0 20px;font-size:14.5px;color:var(--text-3);line-height:1.75;max-width:780px}
.faq .faq-body a{color:var(--blue-link);text-decoration:underline}

/* ==========================================================================
   页脚（政府站标准三段式）
   ========================================================================== */
.footer{background:#0a284c;color:#b9c9dd;padding:48px 0 0;font-size:14px}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:36px}
.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.footer-brand .brand-mark{width:44px;height:44px}
.footer-brand .org{font-size:15.5px;font-weight:700;color:#fff;line-height:1.3}
.footer-brand .sub{font-size:11.5px;color:#8fa9c9;letter-spacing:.5px;text-transform:uppercase}
.footer-about{font-size:13.5px;line-height:1.75;color:#a8bdd4;max-width:340px}
.footer h4{
  font-size:11.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;
  color:#8fa9c9;margin-bottom:14px;
}
.footer ul{list-style:none;display:grid;gap:9px}
.footer ul a{color:#c9d8e8;font-size:13.5px}
.footer ul a:hover{color:#fff}
.footer-contact{font-size:13.5px;line-height:1.9;color:#a8bdd4}
.footer-contact b{color:#fff}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.14);padding:18px 0;
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  font-size:12.5px;color:#8fa9c9;
}

/* ==========================================================================
   移动端粘性 CTA
   ========================================================================== */
.sticky-cta{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:70;
  background:#0a284c;border-top:1px solid rgba(255,255,255,.16);
  padding:11px 16px calc(11px + env(safe-area-inset-bottom));
  align-items:center;justify-content:space-between;gap:14px;
  transform:translateY(110%);transition:transform .25s ease;
}
.sticky-cta.show{transform:translateY(0)}
.sticky-cta-text b{display:block;font-size:13.5px;color:#fff;line-height:1.35}
.sticky-cta-text span{font-size:11.5px;color:#8fa9c9}
.sticky-cta .btn{padding:10px 18px;font-size:13.5px;white-space:nowrap}

/* ==========================================================================
   视频模态框
   ========================================================================== */
.vmodal{
  position:fixed;inset:0;z-index:100;display:none;
  align-items:center;justify-content:center;padding:24px;
}
.vmodal.open{display:flex}
.vmodal-backdrop{position:absolute;inset:0;background:rgba(4,14,28,.92)}
.vmodal-body{position:relative;z-index:2;width:100%;max-width:920px}
.vmodal-body video{
  width:100%;max-height:74vh;border-radius:var(--radius);background:#000;
  display:block;border:1px solid rgba(255,255,255,.18);
}
.vmodal-close{
  position:absolute;top:-44px;right:0;width:36px;height:36px;
  border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.1);
  color:#fff;font-size:15px;cursor:pointer;border-radius:var(--radius);
  display:grid;place-items:center;
}
.vmodal-close:hover{background:rgba(255,255,255,.24)}
.vmodal-caption{color:#c7d5e8;font-size:13.5px;margin-top:14px;text-align:center}
.vmodal-cta{margin-top:16px;text-align:center}
body.modal-open{overflow:hidden}

/* ==========================================================================
   语言可见性：由 html[lang] 控制
   ========================================================================== */
html[lang="en"] [data-lang="zh"]{display:none !important}
html[lang="zh-Hant"] [data-lang="en"]{display:none !important}

/* ==========================================================================
   响应式
   ========================================================================== */
@media(max-width:1080px){
  .hero-inner{grid-template-columns:1fr;gap:36px;padding:44px 0 48px}
  .hero h1{font-size:34px}
  .hero-lead{max-width:none}
  .two-col{grid-template-columns:1fr;gap:32px}
  .form-layout{grid-template-columns:1fr;gap:36px}
  .footer-top{grid-template-columns:1fr 1fr;gap:32px}
  .pain .wrap{grid-template-columns:1fr;gap:16px}
  .pain-foot{grid-column:1}
  .mainnav a{padding:10px 12px;font-size:14px}
}

@media(max-width:860px){
  .nav-toggle{display:block}
  .mainnav{
    display:none;position:absolute;left:0;right:0;top:100%;
    background:#fff;border-bottom:3px solid var(--navy);
    flex-direction:column;align-items:stretch;
    box-shadow:0 8px 20px rgba(3,18,38,.14);z-index:50;
  }
  .mainnav.open{display:flex}
  .mainnav a{border-bottom:1px solid var(--line);margin-bottom:0;padding:14px 24px}
  .mainnav a:hover{border-bottom-color:var(--line);background:var(--bg-alt)}
  .mainnav .nav-cta{
    margin:14px 24px;text-align:center;border-bottom:none;
  }
  .masthead{position:relative}
  .video-grid{grid-template-columns:1fr}
  .step{grid-template-columns:60px 1fr;gap:16px}
  .step-when{grid-column:2;justify-self:start;margin-top:4px}
  .steps-cta{flex-direction:column;align-items:flex-start;gap:16px}
  .case-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
  .wrap{padding:0 18px}
  .section{padding:44px 0}
  .sec-head h2{font-size:23px}
  .hero h1{font-size:27px;letter-spacing:-.3px}
  .hero-badge{font-size:10.5px}
  .hero-meta{gap:24px;margin-top:26px;padding-top:18px}
  .hero-meta .v{font-size:14px}
  .topbar .wrap{min-height:auto;padding-top:8px;padding-bottom:8px;gap:10px}
  .topbar-left{font-size:12px;gap:10px}
  .brand-mark{width:42px;height:42px}
  .brand-text .org{font-size:15px}
  .brand-text .sub{font-size:10.5px}
  .footer-top{grid-template-columns:1fr;gap:28px}
  .form-card{padding:24px 20px}
  .form-aside h2{font-size:22px}
  .sticky-cta{display:flex}
  body{padding-bottom:70px}
  .play-btn{width:54px;height:54px}
  .vmodal{padding:12px}
  .vmodal-close{top:-40px}
  .step{padding:22px 0}
  .step-num{width:38px;height:38px;font-size:12px}
  .step-body h3{font-size:16.5px}
  .case-head{padding:14px 16px}
  .case-body{padding:14px 16px}
  .footer-bottom{flex-direction:column;gap:8px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .sticky-cta{transition:none}
  .video-frame:hover .play-btn{transform:translate(-50%,-50%)}
}

@media print{
  .topbar,.mainnav,.sticky-cta,.vmodal,.footer-top{display:none}
  .hero{background:#fff;color:#000}
  .hero h1,.hero-lead{color:#000}
}
