:root{
  /* ── 主色：红橙渐变 ── */
  --red:#E8392C;--red-dk:#C0281D;--red-lt:#F05545;
  --red-bg:rgba(232,57,44,0.06);--red-border:rgba(232,57,44,0.16);
  /* ── 辅色：琥珀金 ── */
  --gold:#F59E0B;--gold-lt:#FCD34D;--gold-dk:#D97706;
  /* ── 文字层级（4级） ── */
  --ink:#111827;--ink2:#374151;--ink3:#6B7280;--ink4:#9CA3AF;
  /* ── 背景层级 ── */
  --bg:#FFFFFF;--bg2:#F9FAFB;--bg3:#F3F4F6;
  /* ── 边框 ── */
  --bdr:#E5E7EB;--bdr2:#D1D5DB;
  /* ── 圆角系统 ── */
  --r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:18px;--r-xl:24px;
  /* ── 阴影系统 ── */
  --sh-sm:0 1px 2px rgba(0,0,0,0.05),0 2px 8px rgba(0,0,0,0.04);
  --sh-md:0 2px 4px rgba(0,0,0,0.04),0 6px 20px rgba(0,0,0,0.07);
  --sh-lg:0 4px 8px rgba(0,0,0,0.04),0 16px 40px rgba(0,0,0,0.09);
  --sh-red:0 4px 18px rgba(232,57,44,0.20);
  /* ── section 间距 ── */
  --sp:96px 40px;
  /* 兼容旧变量名 */
  --radius:14px;--radius-lg:20px;--radius-sm:10px;
  --card-shadow:var(--sh-sm);--card-shadow-hover:var(--sh-lg);
  --red-glow:var(--sh-red);
}
*{margin:0;padding:0;box-sizing:border-box}
::selection{background:rgba(229,57,53,0.15);color:#1a1a1a}
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(0,0,0,0.15);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,0.25)}
html{scroll-behavior:smooth}
body{font-family:'Noto Sans SC',sans-serif;background:var(--bg);color:var(--ink);overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:'kern' 1}
#nav{position:fixed;top:0;left:0;right:0;z-index:9000;height:62px;background:rgba(255,255,255,0.96);backdrop-filter:saturate(200%) blur(24px);-webkit-backdrop-filter:saturate(200%) blur(24px);border-bottom:1px solid rgba(0,0,0,0.05);display:flex;align-items:center;padding:0 40px;box-shadow:none;transition:box-shadow .25s}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0;margin-right:24px;cursor:pointer}
.nav-logo-box{width:36px;height:36px;background:linear-gradient(135deg,#E53935 0%,#FF7043 100%);border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:'Noto Serif SC',serif;font-weight:900;font-size:14px;color:#fff;box-shadow:0 2px 8px rgba(229,57,53,0.3)}
.nav-logo-t{font-family:'Noto Serif SC',serif;font-weight:700;font-size:16px;color:#1a1a1a}
.nav-logo-s{font-size:11px;color:rgba(0,0,0,0.4)}
#nav-ul{display:flex;align-items:center;list-style:none;flex:1;margin:0;padding:0}
#nav-ul>li{position:relative;height:64px;display:flex;align-items:center}
#nav-ul>li>.nav-link{display:flex;align-items:center;gap:3px;color:rgba(0,0,0,0.65);font-size:13px;padding:0 14px;height:64px;white-space:nowrap;cursor:pointer;text-decoration:none;transition:color .18s,background .18s;user-select:none;background:none;border:none;font-family:inherit;outline:none;}
#nav-ul>li>.nav-link:hover{color:#1a1a1a;background:rgba(0,0,0,0.04)}
.has-dd:hover>.nav-link{color:#1a1a1a;background:rgba(0,0,0,0.04)}
.nav-arr{font-size:9px;opacity:.55;display:inline-block;transition:transform .2s}
#nav-ul li[data-nav].nav-on>.nav-link{color:var(--red)!important;font-weight:600!important;position:relative}
#nav-ul li[data-nav].nav-on>.nav-link::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:20px;height:2.5px;background:var(--red);border-radius:2px}
.has-dd .nav-arr.arr-open{transform:rotate(180deg);opacity:1}
.nav-dd{position:absolute;top:64px;left:0;background:rgba(255,255,255,0.98);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,0.08);border-radius:12px;min-width:240px;padding:8px 0;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease;z-index:9999;box-shadow:0 8px 32px rgba(0,0,0,0.12);}
.has-dd .nav-dd.dd-open{opacity:1;pointer-events:all;transform:translateY(0)}
.nav-dd a{display:block;padding:10px 20px;font-size:13px;color:rgba(0,0,0,0.7);white-space:nowrap;border:none;transition:background .18s,color .18s;cursor:pointer;margin:2px 8px;border-radius:8px;text-decoration:none;}
.nav-dd a:hover{background:rgba(229,57,53,0.1);color:#E53935}
.nav-phone{color:#E53935;font-size:13px;font-weight:600;white-space:nowrap;margin-left:auto;padding-left:16px}
.page{display:none;min-height:100vh;flex-direction:column}
.page.show{display:flex}
.page-body{flex:1}
.hero{min-height:100vh;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:128px 40px 96px;position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(229,57,53,0.04) 0%,transparent 70%),radial-gradient(ellipse 50% 50% at 80% 20%,rgba(255,181,0,0.03) 0%,transparent 50%)}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,0.018) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,0.018) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,black 20%,transparent 100%)}
.hero-badge{display:inline-flex;align-items:center;gap:7px;background:var(--red-bg);border:1px solid var(--red-border);border-radius:30px;padding:6px 16px;font-size:11px;color:var(--red);letter-spacing:1px;margin-bottom:24px;animation:fup .6s both;font-weight:500}
.hero-dot{width:6px;height:6px;background:var(--red);border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}
.hero-h1{font-family:'Noto Serif SC',serif;font-size:clamp(40px,5.5vw,72px);font-weight:900;color:#1a1a1a;text-align:center;line-height:1.15;margin-bottom:24px;animation:fup .6s .1s both}
.hero-carousel{animation:none!important}
.hero-h1 span{background:linear-gradient(135deg,#E53935 0%,#FF7043 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* ── Hero carousel ── */
/* 容器：不参与文档流高度计算，由内容自然撑开，用padding撑出两行空间 */
.hero-carousel{
  position:relative;
  display:block;
  width:100%;
  /* 用 padding-bottom 撑出固定高度，两行大字约 2 * 1.15em */
  min-height:2.5em;
  margin-bottom:24px;
}
/* 所有 slide 绝对定位叠放 */
.hc-slide{
  position:absolute;
  left:0; right:0; top:0;
  display:block;
  width:100%;
  opacity:0;
  pointer-events:none;
  transform:translateY(14px);
  transition:opacity .28s ease, transform .28s ease;
  text-align:center;
  font-family:'Noto Serif SC',serif;
  font-size:clamp(32px,5.5vw,72px);
  font-weight:900;
  color:#1a1a1a;
  line-height:1.2;
  white-space:normal;
  word-break:keep-all;
}
.hc-slide span{
  background:linear-gradient(135deg,#E53935 0%,#FF7043 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.hc-slide.hc-active{opacity:1;pointer-events:auto;transform:translateY(0)}
.hc-slide.hc-out{opacity:0;transform:translateY(-14px)}
/* 占位 div：撑开容器高度，不可见，始终存在 */
.hc-placeholder{
  visibility:hidden;
  pointer-events:none;
  font-family:'Noto Serif SC',serif;
  font-size:clamp(32px,5.5vw,72px);
  font-weight:900;
  line-height:1.2;
  text-align:center;
  word-break:keep-all;
}
/* dots */
.hc-dots{display:flex;gap:7px;justify-content:center;margin-bottom:24px;margin-top:0}
.hc-dot{width:6px;height:6px;border-radius:50%;background:rgba(229,57,53,0.2);border:none;padding:0;cursor:pointer;transition:all .25s}
.hc-dot.hc-dot-active{width:22px;border-radius:3px;background:#E53935}

.hero-p{font-size:clamp(14px,1.5vw,16.5px);color:rgba(0,0,0,0.48);text-align:center;max-width:540px;line-height:1.95;margin-bottom:40px;animation:fup .6s .2s both}
.hero-stats{display:flex;gap:48px;margin-bottom:52px;animation:fup .6s .3s both}
.hs{text-align:center}
.hs-n{font-family:'Noto Serif SC',serif;font-size:32px;font-weight:900;color:var(--ink);line-height:1;letter-spacing:-.8px}
.hs-n span{background:linear-gradient(135deg,#FFB300 0%,#FFD54F 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hs-l{font-size:11px;color:rgba(0,0,0,0.35);margin-top:8px;letter-spacing:1px}
.hd{width:1px;background:rgba(0,0,0,0.08);align-self:stretch}
.hero-cta{display:flex;gap:12px;animation:fup .6s .4s both}
@keyframes fup{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.btn-r{background:linear-gradient(135deg,var(--red) 0%,#FF5722 100%);color:#fff;padding:12px 30px;border-radius:var(--r-sm);text-decoration:none;font-size:13.5px;font-weight:600;transition:transform .2s,box-shadow .2s;border:none;cursor:pointer;display:inline-block;box-shadow:var(--sh-red);letter-spacing:.3px}
.btn-r:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(229,57,53,0.32)}
.btn-g{background:#fff;color:var(--ink);padding:12px 30px;border-radius:var(--r-sm);text-decoration:none;font-size:13.5px;border:1px solid var(--bdr);transition:transform .2s,box-shadow .2s;cursor:pointer;display:inline-block}
.btn-g:hover{border-color:rgba(0,0,0,0.2);box-shadow:0 4px 16px rgba(0,0,0,0.08)}
.sl{text-align:center;font-size:10px;letter-spacing:4.5px;color:var(--red);text-transform:uppercase;margin-bottom:14px;font-weight:600;opacity:.85}
.st{font-family:'Noto Serif SC',serif;font-size:clamp(22px,2.6vw,36px);font-weight:700;text-align:center;color:var(--ink);margin-bottom:16px;letter-spacing:-.4px;line-height:1.25}
.sd{text-align:center;color:var(--ink3);font-size:14px;max-width:500px;margin:0 auto 48px;line-height:1.85}
.pain{background:var(--bg2);padding:var(--sp);position:relative;overflow:hidden}
.pain::before{display:none}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1100px;margin:0 auto}
.pc{background:#fff;border:1px solid var(--bdr);border-radius:var(--r-md);padding:30px 26px;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s;box-shadow:var(--sh-sm)}
.pc:hover{border-color:rgba(232,57,44,0.22);transform:translateY(-3px);box-shadow:var(--sh-lg)}
.pc::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#E53935,#FF7043);transform:scaleX(0);transition:transform .3s}
.pc:hover::before{transform:scaleX(1)}
.pi{width:46px;height:46px;background:var(--red-bg);border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:21px;margin-bottom:16px}
.pc h3{font-family:'Noto Serif SC',serif;font-size:16.5px;font-weight:700;margin-bottom:10px;color:var(--ink);letter-spacing:-.2px}
.pc p{font-size:13.5px;color:var(--ink3);line-height:1.85}
.why{background:linear-gradient(160deg,#0f0f10 0%,#1c1c1e 100%);padding:var(--sp);position:relative;overflow:hidden}
.why::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 60% at 100% 50%,rgba(229,57,53,0.06) 0%,transparent 70%)}
.why .sl{color:var(--gold-lt)}
.why .st{color:#fff}
.why .sd{color:rgba(255,255,255,0.45)}
.wg{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;max-width:1100px;margin:0 auto;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);border-radius:20px;overflow:hidden}
.wi{background:rgba(255,255,255,0.025);padding:40px 34px;transition:background .3s}
.wi:hover{background:rgba(229,57,53,0.08)}
.wn{font-family:'Noto Serif SC',serif;font-size:44px;font-weight:900;color:rgba(229,57,53,0.15);line-height:1;margin-bottom:14px}
.wt{display:inline-block;background:rgba(232,57,44,0.14);border:1px solid rgba(232,57,44,0.28);color:#f06760;font-size:10px;padding:3px 11px;border-radius:20px;margin-bottom:14px;letter-spacing:.8px;font-weight:500}
.wi h3{font-family:'Noto Serif SC',serif;font-size:19px;font-weight:700;color:#fff;margin-bottom:12px}
.wi h3 em{color:#EF5350;font-style:normal}
.wi p{font-size:13.5px;color:rgba(255,255,255,0.52);line-height:1.9}
.proc{padding:var(--sp);background:var(--bg2)}
/* ── Redesigned 7-step flow ── */
.psg{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;max-width:1100px;margin:0 auto;position:relative}
.psg::before{display:none}
.ps{display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border-radius:var(--radius-lg);border:1px solid var(--bdr);overflow:hidden;box-shadow:var(--card-shadow);transition:transform .25s,box-shadow .25s,border-color .25s}
.ps:hover{border-color:rgba(229,57,53,0.25);box-shadow:var(--card-shadow-hover);transform:translateY(-4px)}
.ps-img{width:100%;aspect-ratio:3/5;background:linear-gradient(135deg,#f8f9fa,#f0f0f0);display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--bdr)}
.ps-img img{width:100%;height:100%;object-fit:cover;display:block}
.ps-img-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%}
.ps-img-ph .ph-ico{font-size:28px;opacity:.35}
.ps-img-ph .ph-txt{font-size:11px;color:#bbb;letter-spacing:.5px}
.ps-body{padding:20px 18px 24px;display:flex;flex-direction:column;align-items:center;gap:0}
.psc{width:56px;height:56px;border-radius:50%;background:#fff;border:2.5px solid #E53935;display:flex;align-items:center;justify-content:center;margin-bottom:14px;position:relative;flex-shrink:0;transition:all .3s;box-shadow:0 4px 14px rgba(229,57,53,0.12)}
.ps:hover .psc{background:#E53935}
.psi{font-size:22px;transition:filter .3s}
.psn{position:absolute;top:-3px;right:-3px;background:var(--gold);color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}
.ps h4{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:700;margin-bottom:8px;color:#1a1a1a}
.ps p{font-size:13px;color:var(--ink3);line-height:1.75}
.adv{padding:var(--sp);background:#fff}
.ag{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1100px;margin:0 auto}
.ac{padding:28px 26px;border-radius:var(--r-md);border:1px solid var(--bdr);position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s;background:#fff;box-shadow:var(--sh-sm)}
.ac:hover{border-color:rgba(229,57,53,0.2);box-shadow:var(--card-shadow-hover);transform:translateY(-3px)}
.ac::after{content:attr(data-n);position:absolute;right:20px;top:20px;font-family:'Noto Serif SC',serif;font-size:60px;font-weight:900;color:rgba(229,57,53,0.06);line-height:1}
.ai{width:46px;height:46px;background:var(--red-bg);border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:21px;margin-bottom:16px}
.ac h3{font-family:'Noto Serif SC',serif;font-size:16.5px;font-weight:700;margin-bottom:9px;color:var(--ink);letter-spacing:-.2px}
.ac p{font-size:13.5px;color:var(--ink3);line-height:1.85}
.hl{color:#E53935;font-weight:600}
.disc{background:linear-gradient(160deg,#0f0f10 0%,#1c1c1e 100%);padding:var(--sp)}
.disc-in{max-width:800px;margin:0 auto;text-align:center}
.disc-p{color:rgba(255,255,255,0.6);font-size:14.5px;line-height:1.95;margin-bottom:32px}
.disc-p strong{color:var(--gold-lt)}
.dcg{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:36px;text-align:left}
.db{padding:24px;border-radius:14px;border:1px solid}
.db-bad{border-color:rgba(244,67,54,0.3);background:rgba(244,67,54,0.05)}
.db-good{border-color:rgba(76,175,80,0.3);background:rgba(76,175,80,0.05)}
.db-lbl{font-size:12px;letter-spacing:3px;margin-bottom:14px;font-weight:600}
.db-bad .db-lbl{color:#f44336}.db-good .db-lbl{color:#4caf50}
.di{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;font-size:13.5px;color:rgba(255,255,255,0.65)}
.db-bad .di::before{content:'✗';color:#f44336;flex-shrink:0}
.db-good .di::before{content:'✓';color:#4caf50;flex-shrink:0}
.test{padding:100px 40px;background:var(--bg2)}
.tg{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1100px;margin:0 auto}
.tc{background:#fff;border-radius:var(--radius);padding:26px;border:1px solid var(--bdr);transition:transform .25s,box-shadow .25s;box-shadow:var(--card-shadow)}
.tc:hover{border-color:rgba(229,57,53,0.2);box-shadow:var(--card-shadow-hover);transform:translateY(-4px)}
.tq{font-size:40px;color:#E53935;opacity:0.12;line-height:1;margin-bottom:12px;font-family:Georgia,serif}
.tb{font-size:14px;color:var(--ink2);line-height:1.85;margin-bottom:20px}
.tf{display:flex;align-items:center;gap:10px;border-top:1px solid var(--bdr);padding-top:16px}
.tav{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#E53935,#FF7043);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;flex-shrink:0}
.tn{font-size:13px;font-weight:600;color:#1a1a1a}.ti{font-size:12px;color:var(--ink3);margin-top:2px}
.ts{color:#FFB300;font-size:12px;margin-left:auto}
.cta{padding:var(--sp);background:linear-gradient(145deg,#E53935 0%,#F4503A 50%,#FF6B3D 100%);text-align:center;position:relative;overflow:hidden}
.cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 30% 50%,rgba(255,255,255,0.12) 0%,transparent 60%)}
.cta-h{font-family:'Noto Serif SC',serif;font-size:clamp(28px,4vw,48px);font-weight:900;color:#fff;margin-bottom:16px;position:relative}
.cta-p{font-size:16px;color:rgba(255,255,255,0.8);margin-bottom:44px;position:relative}
.cta-fs{display:flex;gap:28px;justify-content:center;flex-wrap:wrap;margin-bottom:44px;position:relative}
.cf{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,0.9);font-size:13.5px}
.cd{width:6px;height:6px;border-radius:50%;background:var(--gold-lt);flex-shrink:0}
.qr-w{display:flex;gap:48px;justify-content:center;align-items:center;max-width:900px;margin:0 auto;flex-wrap:wrap;position:relative}
.qr-b{background:rgba(255,255,255,0.14);border-radius:18px;padding:24px 30px;text-align:center;border:1px solid rgba(255,255,255,0.18);transition:background .2s;cursor:pointer}
.qr-b img{width:160px;height:160px;border-radius:10px;display:block;margin:0 auto 12px;object-fit:cover}
.qr-bl{font-size:15px;color:#fff;font-weight:600}
.qr-bs{font-size:12px;color:rgba(255,255,255,0.7);margin-top:4px}
.qr-i{display:flex;flex-direction:column;gap:16px;text-align:left}
.qr-num{font-family:'Noto Serif SC',serif;font-size:32px;font-weight:900;color:#fff;letter-spacing:-.5px}
.qr-nl{font-size:14px;color:rgba(255,255,255,0.7);margin-bottom:6px}
.qr-btns{display:flex;gap:14px;flex-wrap:wrap}
.btn-w{background:#fff;color:#E53935;padding:14px 32px;border-radius:10px;text-decoration:none;font-size:14px;font-weight:700;transition:all .25s;display:inline-block;box-shadow:0 4px 16px rgba(0,0,0,0.1)}
.btn-w:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(0,0,0,0.15)}
.btn-ow{background:rgba(255,255,255,0.15);color:#fff;padding:14px 32px;border-radius:10px;text-decoration:none;font-size:14px;font-weight:600;border:2px solid rgba(255,255,255,0.75);transition:all .25s;display:inline-block;cursor:pointer;backdrop-filter:blur(4px)}
.btn-ow:hover{border-color:#fff;background:rgba(255,255,255,0.28);transform:translateY(-2px)}
.qr-note{font-size:13px;color:rgba(255,255,255,0.6);line-height:1.85}
footer{background:#0d0d0d;padding:48px 40px 22px;color:rgba(255,255,255,0.45);border-top:1px solid rgba(255,255,255,0.05)}
.fg{display:grid;grid-template-columns:200px 1fr 1fr 1fr 1fr;gap:32px;max-width:1200px;margin:0 auto 32px}
.fb h3{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:700;color:#fff;margin-bottom:10px;letter-spacing:-.2px}
.fb p{font-size:12.5px;line-height:1.8;margin-bottom:12px;color:rgba(255,255,255,0.5)}
.fci{font-size:12px;margin-bottom:6px;color:rgba(255,255,255,0.45)}
.fcol h4{color:#fff;font-size:13px;font-weight:600;margin-bottom:10px}
.fl{list-style:none;display:flex;flex-direction:column;gap:8px}
.fl a{color:rgba(255,255,255,0.38);text-decoration:none;font-size:12px;transition:color .18s;cursor:pointer}
.fl a:hover{color:#fff}
.fbot{max-width:1100px;margin:0 auto;border-top:1px solid rgba(255,255,255,0.06);padding-top:20px;display:flex;justify-content:space-between;align-items:center;font-size:11.5px}
.fbot a{color:rgba(255,255,255,0.3);text-decoration:none}
.fbot a:hover{color:#fff}
.cp-hero{background:linear-gradient(160deg,#0f0f10 0%,#1c1c1e 100%);padding:68px 40px 52px;position:relative;overflow:hidden}
.cp-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 70% at 50% 50%,rgba(229,57,53,0.08) 0%,transparent 70%)}
.cp-hero-in{max-width:960px;margin:0 auto;position:relative;text-align:center}
.cp-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(229,57,53,0.12);border:1px solid rgba(229,57,53,0.25);border-radius:24px;padding:6px 16px;font-size:12px;color:#E53935;letter-spacing:0.5px;margin-bottom:20px}
.cp-h1{font-family:'Noto Serif SC',serif;font-size:clamp(28px,4vw,50px);font-weight:900;color:#fff;margin-bottom:14px;line-height:1.2}
.cp-desc{font-size:15px;color:rgba(255,255,255,.55);line-height:1.85;max-width:640px;margin:0 auto 28px}
.cp-tags{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.cptag{display:inline-flex;align-items:center;gap:5px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.8);font-size:12.5px;padding:5px 13px;border-radius:20px}
.bread{max-width:1100px;margin:0 auto;padding:14px 0 0;font-size:12.5px;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:6px}
.bread a{color:rgba(255,255,255,.55);cursor:pointer;text-decoration:none}
.bread a:hover{color:#fff}
.cp-cards{padding:60px 40px;background:#fff}
.cp-cards-in{max-width:1100px;margin:0 auto}
.cp-cards-ttl{font-family:'Noto Serif SC',serif;font-size:22px;font-weight:700;margin-bottom:8px;color:var(--ink)}
.cp-cards-sub{font-size:13.5px;color:var(--ink3);margin-bottom:32px}
.cc-grid{display:grid;gap:20px}
.ccard{border:1px solid var(--bdr);border-radius:var(--r-md);overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s;background:#fff;cursor:pointer;box-shadow:var(--sh-sm)}
.ccard:hover{border-color:rgba(229,57,53,0.3);box-shadow:var(--card-shadow-hover);transform:translateY(-4px)}
.ccard-hd{padding:20px 24px 18px}
.ccard-ico{font-size:28px;margin-bottom:12px}
.ccard-ttl{font-family:'Noto Serif SC',serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;line-height:1.3}
.ccard-sub{font-size:12px;color:rgba(255,255,255,0.8);line-height:1.4}
.ccard-bd{padding:16px 20px 0}
.ccard-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--bdr);font-size:13px}
.ccard-row:last-child{border-bottom:none}
.ccard-lbl{color:var(--ink3)}
.period{display:inline-block;background:rgba(229,57,53,0.08);color:#C62828;font-size:11px;padding:3px 10px;border-radius:6px}
.price{color:#E53935;font-weight:700;font-size:16px}
.ccard-btn{display:flex;align-items:center;justify-content:center;gap:5px;background:rgba(229,57,53,0.06);margin:14px 20px 16px;border-radius:8px;padding:10px;font-size:13px;color:#E53935;font-weight:600;transition:background .2s}
.ccard:hover .ccard-btn{background:rgba(229,57,53,0.12)}
#modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:99999;overflow-y:auto;padding:24px 16px}
#modal-bg.on{display:flex;align-items:flex-start;justify-content:center}
#modal-box{background:#fff;border-radius:22px;max-width:700px;width:100%;margin:auto;position:relative;overflow:hidden;box-shadow:0 24px 72px rgba(0,0,0,.22)}
.modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;background:rgba(0,0,0,.55);border:none;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;transition:background .2s}
.modal-close:hover{background:rgba(0,0,0,.75)}
.m-head{padding:36px 40px 24px;color:#fff;border-radius:0}
.m-head-cat{font-size:12px;letter-spacing:2px;color:rgba(255,255,255,0.75);margin-bottom:12px}
.m-head h2{font-family:'Noto Serif SC',serif;font-size:28px;font-weight:900;margin-bottom:8px}
.m-head p{font-size:15px;color:rgba(255,255,255,0.8);line-height:1.6}
.m-meta{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--bdr);border-bottom:1px solid var(--bdr)}
.mm{padding:18px 0;text-align:center;border-right:1px solid var(--bdr)}
.mm:last-child{border-right:none}
.mm-l{font-size:12px;color:var(--ink3);letter-spacing:1px;margin-bottom:6px}
.mm-v{font-family:'Noto Serif SC',serif;font-size:20px;font-weight:700;color:var(--ink)}
.mm-v.red{color:#E53935}
.m-sec{padding:24px 40px}
.m-sec+.m-sec{border-top:1px solid var(--bdr)}
.m-sec-ttl{font-family:'Noto Serif SC',serif;font-size:17px;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:10px;color:var(--ink)}
.m-sec-ttl::before{content:'';width:4px;height:20px;background:linear-gradient(180deg,#E53935,#FF7043);border-radius:2px;flex-shrink:0}
.m-sec p{font-size:14px;color:var(--ink3);line-height:1.85}
.m-hls{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.m-hls-3{grid-template-columns:repeat(3,1fr)}
.m-hl{display:flex;gap:12px;padding:14px 16px;background:rgba(229,57,53,0.04);border-radius:10px;border:1px solid rgba(229,57,53,0.1);align-items:flex-start}
.m-hl-wide{grid-column:1/-1}
.m-hl-methods{display:grid;grid-template-columns:1fr 1fr;gap:3px 20px;margin-top:4px}
.m-hl-method{font-size:13px;color:var(--ink3);line-height:1.65}
.m-hl-method-note{font-size:11px;color:var(--ink4);grid-column:1/-1;margin-top:3px}
.m-hl-ico{font-size:20px;flex-shrink:0;margin-top:2px}
.m-hl h4{font-size:14px;font-weight:700;margin-bottom:3px}
.m-hl p{font-size:13px;color:var(--ink3);line-height:1.6;margin:0}
.m-sched-wrap{border-radius:10px;overflow:hidden;box-shadow:0 2px 12px rgba(229,57,53,0.1);border:1px solid rgba(229,57,53,0.15);margin:4px 0}
.m-sched-table{width:100%;border-collapse:collapse;font-size:13px}
.m-sched-table th{background:linear-gradient(135deg,#E53935,#FF7043);color:#fff;padding:12px 10px;text-align:center;font-weight:700;font-size:13px;line-height:1.45}
.m-sched-table td{padding:11px 10px;text-align:center;border:1px solid rgba(229,57,53,0.12);line-height:1.6;color:var(--ink2);vertical-align:middle;font-size:13px}
.m-sched-table tbody tr:nth-child(odd) td{background:rgba(229,57,53,0.025)}
.m-sched-table tbody tr:nth-child(even) td{background:#fff}
.m-sched-table td:first-child{background:linear-gradient(180deg,rgba(229,57,53,0.08),rgba(229,57,53,0.05));font-weight:700;color:#C62828;border-color:rgba(229,57,53,0.2);font-size:13.5px}
.m-sched-table td:last-child{background:linear-gradient(135deg,rgba(255,152,0,0.1),rgba(255,112,67,0.08));font-weight:700;color:#E65100;border-color:rgba(229,57,53,0.18);font-size:13.5px}
.m-steps{display:flex;flex-direction:column;gap:0}
.m-step{display:flex;gap:14px;padding:12px 0;position:relative}
.m-step:not(:last-child)::after{content:'';position:absolute;left:14px;top:40px;bottom:0;width:1px;background:rgba(229,57,53,0.15)}
.m-step-n{width:28px;height:28px;border-radius:50%;background:#E53935;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.m-step h4{font-size:14px;font-weight:700;margin-bottom:3px}
.m-step p{font-size:13px;color:var(--ink3);line-height:1.6;margin:0}
.m-tags{display:flex;flex-wrap:wrap;gap:10px}
.m-tag{display:inline-flex;align-items:center;gap:5px;background:var(--red-bg);border:1px solid var(--red-border);color:var(--red-dk);font-size:12.5px;padding:6px 13px;border-radius:20px}
.m-cta{padding:24px 40px 30px;background:var(--bg2);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.m-cta-l p{font-size:14px;color:var(--ink3);margin-bottom:5px}
.m-cta-l strong{font-size:24px;color:#E53935;font-family:'Noto Serif SC',serif}
.m-cta-l small{font-size:12px;color:var(--ink3)}
.m-cta-r{display:flex;gap:12px;flex-wrap:wrap}
.btn-mr{background:linear-gradient(135deg,#E53935 0%,#FF7043 100%);color:#fff;padding:12px 24px;border-radius:10px;text-decoration:none;font-size:14px;font-weight:700;display:inline-block;transition:all .25s;cursor:pointer;border:none;box-shadow:0 4px 12px rgba(229,57,53,0.25)}
.btn-mr:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(229,57,53,0.35)}
.btn-mo{background:transparent;color:#E53935;padding:11px 20px;border-radius:var(--radius-sm);font-size:13.5px;font-weight:600;border:1.5px solid rgba(229,57,53,0.5);cursor:pointer;transition:background .2s,border-color .2s;display:inline-block}
.btn-mo:hover{background:rgba(229,57,53,0.07);border-color:#E53935}
.rv{opacity:0;transform:translateY(14px);transition:opacity .55s cubic-bezier(.4,0,.2,1),transform .55s cubic-bezier(.4,0,.2,1)}
.rv.vis{opacity:1;transform:translateY(0)}

/* ── FACULTY PAGE STYLES ── */
.fac-hero{background:var(--bg2);border-bottom:1px solid var(--bdr);padding:28px 40px 24px}
.fac-hero-in{max-width:1200px;margin:0 auto}
.fac-hero-ttl{display:flex;align-items:center;gap:10px;font-family:'Noto Serif SC',serif;font-size:22px;font-weight:700;color:var(--ink);margin-bottom:20px}
.fac-hero-ttl::before{content:'';width:4px;height:24px;background:linear-gradient(180deg,#E53935,#FF7043);border-radius:2px}
.fac-search-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.fac-search-box{display:flex;gap:0;flex:1;max-width:400px}
.fac-search-box input{flex:1;height:40px;border:1.5px solid var(--bdr);border-right:none;border-radius:8px 0 0 8px;padding:0 14px;font-size:13.5px;font-family:inherit;outline:none;background:#fff;transition:border-color .2s}
.fac-search-box input:focus{border-color:#E53935}
.fac-search-box button{height:40px;padding:0 18px;background:var(--gold);color:#fff;border:none;border-radius:0 8px 8px 0;font-size:13.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s}
.fac-search-box button:hover{background:#F9A825}
.fac-filter{background:#fff;border-bottom:1px solid var(--bdr);padding:16px 40px;position:sticky;top:64px;z-index:100}
.fac-filter-in{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fac-filter-lbl{font-size:13px;color:var(--ink3);white-space:nowrap;margin-right:4px}
.fac-tag{padding:6px 14px;border-radius:20px;border:1px solid var(--bdr);font-size:12.5px;cursor:pointer;transition:all .18s;background:#fff;color:var(--ink2);font-family:inherit}
.fac-tag:hover{border-color:var(--gold);color:var(--gold)}
.fac-tag.active{background:var(--gold);color:#fff;border-color:var(--gold);font-weight:600}
.fac-body{padding:32px 40px 60px;background:var(--bg3)}
.fac-body-in{max-width:1200px;margin:0 auto}
.fac-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
/* Teacher card */
.tc-card{background:#fff;border-radius:var(--r-md);border:1px solid var(--bdr);overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s;box-shadow:var(--sh-sm);cursor:pointer}
.tc-card:hover{border-color:rgba(229,57,53,0.3);box-shadow:var(--card-shadow-hover);transform:translateY(-4px)}
.tc-card-top{display:flex;gap:16px;padding:20px 20px 0}
.tc-avatar{width:76px;height:76px;border-radius:50%;flex-shrink:0;overflow:hidden;border:2px solid var(--bdr);background:var(--bg2);display:flex;align-items:center;justify-content:center}
.tc-avatar svg{width:76px;height:76px}
.tc-info{flex:1;min-width:0}
.tc-name{font-family:'Noto Serif SC',serif;font-size:18px;font-weight:700;color:var(--ink);margin-bottom:5px}
.tc-school{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink3);margin-bottom:8px}
.tc-school-ico{font-size:13px}
.tc-spec{background:rgba(255,179,0,0.12);border:1px solid rgba(255,179,0,0.3);border-radius:6px;padding:6px 10px;font-size:12px;color:#7a5c00;line-height:1.55}
.tc-spec strong{color:#5d4200;font-weight:600}
.tc-badge{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:flex-start;overflow:hidden}

.tc-bio-wrap{padding:14px 20px 16px}
.tc-bio-ttl{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:7px;display:flex;align-items:center;gap:6px}
.tc-bio-ttl::before{content:'';width:3px;height:14px;background:linear-gradient(180deg,#E53935,#FF7043);border-radius:2px}
.tc-bio{font-size:13px;color:var(--ink3);line-height:1.75;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tc-card-footer{border-top:1px solid rgba(0,0,0,0.05);padding:10px 20px;display:flex;align-items:center;justify-content:space-between;background:rgba(0,0,0,0.01)}
.tc-footer-link{font-size:12.5px;color:#E53935;font-weight:600;display:flex;align-items:center;gap:4px}
.tc-footer-tags{display:flex;gap:6px}
.tc-footer-tag{font-size:11px;padding:3px 9px;border-radius:10px;background:rgba(229,57,53,0.07);color:#C62828}
/* Pagination */
.fac-pager{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:40px}
.pg-btn{width:34px;height:34px;border-radius:8px;border:1.5px solid var(--bdr);background:#fff;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ink2);transition:all .2s;font-family:inherit}
.pg-btn:hover{border-color:var(--gold);color:var(--gold)}
.pg-btn.active{background:var(--gold);border-color:var(--gold);color:#fff;font-weight:700}
.pg-btn.pg-arr{font-size:16px}
/* Faculty modal */
/* ── Faculty Modal — Apple-style ──────────────────── */
#fac-modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:99999;overflow-y:auto;padding:24px 16px 48px}
#fac-modal-bg.on{display:flex;align-items:flex-start;justify-content:center}
#fac-modal-box{background:#f2f2f7;border-radius:22px;max-width:640px;width:100%;margin:auto;position:relative;box-shadow:0 32px 80px rgba(0,0,0,.28),0 0 0 0.5px rgba(255,255,255,.08)}
.fm-close{position:absolute;top:16px;right:16px;width:28px;height:28px;border-radius:50%;background:rgba(120,120,128,.22);border:none;color:rgba(60,60,67,.9);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .15s;line-height:1}
.fm-close:hover{background:rgba(120,120,128,.36)}

/* ── HEAD CARD ── */
.fm-head{background:#fff;margin:12px 12px 0;border-radius:16px;padding:22px 22px 0;box-shadow:0 1px 0 rgba(0,0,0,.06),0 2px 12px rgba(0,0,0,.04)}
.fm-head-top{display:flex;gap:16px;align-items:center;margin-bottom:18px}
.fm-avatar{width:80px;height:80px;border-radius:50%;flex-shrink:0;overflow:hidden;background:#e8e8ed;box-shadow:0 0 0 1px rgba(0,0,0,.07)}
.fm-avatar svg{width:80px;height:80px;display:block}
.fm-title{flex:1;min-width:0}
.fm-name{font-size:20px;font-weight:700;color:#1c1c1e;letter-spacing:-.3px;margin-bottom:5px;line-height:1.2}
.fm-school{font-size:13px;color:#8e8e93;font-weight:400;display:flex;align-items:center;gap:5px;letter-spacing:0}

/* ── Logo badge (replace bird) ── */
.fm-badge{width:52px;height:52px;background:#fff;border-radius:13px;flex-shrink:0;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.12),0 0 0 0.5px rgba(0,0,0,.06);display:flex;align-items:center;justify-content:center}
.fm-badge img{width:100%;height:100%;object-fit:cover;display:block}
.fm-badge-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#f8f8f8,#ececec);gap:2px}
.fm-badge-placeholder span:first-child{font-size:9px;color:#aeaeb2;font-weight:500;letter-spacing:.5px}
.fm-badge-placeholder span:last-child{font-family:'Noto Serif SC',serif;font-size:13px;font-weight:800;color:#636366;letter-spacing:1px}

/* ── Spec strip ── */
.fm-spec-strip{background:#fafafa;border-top:0.5px solid rgba(0,0,0,.08);margin:0 -22px;padding:12px 22px;border-radius:0 0 16px 16px}
.fm-spec-label{font-size:13px;color:#636366;line-height:1.65}
.fm-spec-label strong{color:#3a3a3c;font-weight:600}

/* ── Body ── */
.fm-body{background:#fff;margin:8px 12px 0;border-radius:16px;padding:20px 22px;box-shadow:0 1px 0 rgba(0,0,0,.06),0 2px 12px rgba(0,0,0,.04)}
.fm-bio-ttl{font-size:13px;font-weight:600;color:#8e8e93;text-transform:uppercase;letter-spacing:.6px;margin-bottom:10px}
.fm-bio{font-size:15px;color:#3a3a3c;line-height:1.85;font-weight:400;word-break:break-all}

/* ── Footer ── */
.fm-footer{background:linear-gradient(145deg,#F9A800,#F08C00);margin:8px 12px 12px;border-radius:16px;padding:20px 22px;display:flex;align-items:center;gap:18px;box-shadow:0 2px 16px rgba(249,168,0,.3)}
.fm-footer-l{flex:1;min-width:0}
.fm-footer-ttl{font-size:15px;font-weight:700;color:#fff;margin-bottom:6px;letter-spacing:-.2px}
.fm-footer-desc{font-size:13px;color:rgba(255,255,255,.88);line-height:1.6;margin-bottom:6px}
.fm-footer-slogan{font-size:12px;font-weight:600;color:rgba(255,255,255,.65);letter-spacing:.1px}
.fm-footer-r{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:7px}
.fm-qr-wrap{width:80px;height:80px;background:#fff;border-radius:11px;padding:5px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.fm-qr-wrap img{width:100%;height:100%;object-fit:contain;border-radius:4px;display:block}
.fm-qr-label{font-size:11px;color:rgba(255,255,255,.75);text-align:center;letter-spacing:.2px}

@media(max-width:1024px){.wg{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.fac-grid{grid-template-columns:1fr}}
@media(max-width:800px){
  .g3,.ag,.tg,.wg{grid-template-columns:1fr}
  .psg{grid-template-columns:repeat(2,1fr)}.psg::before{display:none}
  .fg{grid-template-columns:1fr;gap:24px}
  .dcg{grid-template-columns:1fr}
  .m-hls{grid-template-columns:1fr}
  .m-meta{grid-template-columns:1fr}.mm{border-right:none;border-bottom:1px solid var(--bdr)}.mm:last-child{border-bottom:none}
  .hero-stats{gap:18px}.hero-cta{flex-direction:column;align-items:center}
  .qr-w{flex-direction:column}.qr-i{align-items:center;text-align:center}
}
/* ── 汉堡按钮 ── */
.nav-ham{display:none;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;background:none;border:none;cursor:pointer;margin-left:auto;gap:5px;padding:4px;border-radius:8px;transition:background .18s;flex-shrink:0}
.nav-ham:hover{background:rgba(0,0,0,0.06)}
.nav-ham span{display:block;width:22px;height:2px;background:#1a1a1a;border-radius:2px;transition:transform .28s ease,opacity .28s ease}
.nav-ham.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-ham.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-ham.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ── 移动端抽屉遮罩 ── */
#mob-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:8000;opacity:0;transition:opacity .28s}
#mob-overlay.on{display:block;opacity:1}

/* ── 移动端抽屉菜单 ── */
#mob-drawer{position:fixed;top:0;right:0;bottom:0;width:80%;max-width:300px;background:#fff;z-index:8500;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);overflow-y:auto;padding:0 0 32px;box-shadow:-4px 0 24px rgba(0,0,0,0.12)}
#mob-drawer.open{transform:translateX(0)}
.mob-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #f0f0f0}
.mob-drawer-logo{display:flex;align-items:center;gap:8px}
.mob-drawer-logo .nav-logo-box{width:30px;height:30px;font-size:12px}
.mob-drawer-logo .nav-logo-t{font-size:14px}
.mob-close{background:none;border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;color:#666;transition:background .18s}
.mob-close:hover{background:#f5f5f5}
.mob-nav-list{list-style:none;padding:8px 0}
.mob-nav-list>li{border-bottom:1px solid #f5f5f5}
.mob-nav-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 18px;background:none;border:none;font-size:14px;color:#1a1a1a;cursor:pointer;text-align:left;font-family:inherit;transition:background .18s}
.mob-nav-item:hover{background:#fafafa}
.mob-nav-arr{font-size:10px;color:#999;transition:transform .22s}
.mob-nav-arr.open{transform:rotate(180deg)}
.mob-sub{list-style:none;padding:0;max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .25s;opacity:0;background:#f9fafb}
.mob-sub.open{max-height:600px;opacity:1}
.mob-sub a{display:block;padding:11px 18px 11px 30px;font-size:13px;color:#555;cursor:pointer;border-none;transition:color .18s,background .18s;text-decoration:none}
.mob-sub a:hover{color:#E53935;background:rgba(229,57,53,0.05)}
.mob-phone{margin:18px 18px 0;padding:14px 18px;background:rgba(229,57,53,0.06);border-radius:10px;color:#E53935;font-size:14px;font-weight:600;text-align:center}
.mob-phone a{color:#E53935;text-decoration:none}

@media(max-width:600px){
  #nav{padding:0 14px}
  #nav-ul{display:none}
  .nav-ham{display:flex}
  .hero{padding:90px 18px 56px}
  .pain,.why,.proc,.adv,.disc,.test,.cta,.cp-cards,.cp-hero{padding-left:18px;padding-right:18px}
  .m-head,.m-sec,.m-cta{padding-left:18px;padding-right:18px}
  .fac-hero,.fac-body,.fac-filter{padding-left:18px;padding-right:18px}
}
.iv-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:1100px;margin:0 auto}
.iv-card{background:var(--bg2);border-radius:var(--radius);overflow:hidden;transition:transform .25s,box-shadow .25s;cursor:pointer;box-shadow:var(--card-shadow)}
.iv-card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-4px)}
.iv-hd{height:140px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end}
.iv-av{width:48px;height:48px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;margin-bottom:12px}
.iv-nm{font-size:16px;font-weight:700;color:#fff}
.iv-loc{font-size:12px;color:rgba(255,255,255,0.8);margin-top:2px}
.iv-quote{font-size:14px;color:#fff;font-weight:600;margin-top:12px}
.iv-bd{padding:20px}
.iv-bd p{font-size:13px;color:var(--ink3);line-height:1.8}
.iv-ft{margin-top:14px;display:flex;justify-content:space-between;align-items:center}
.iv-more{font-size:12px;color:#E53935;font-weight:600}
.iv-tags{display:flex;gap:6px}
.iv-tag{font-size:11px;padding:4px 10px;border-radius:12px}
@media(max-width:700px){.iv-grid{grid-template-columns:1fr}}

/* Mobile hardening for inline grid sections */
@media(max-width:600px){
  [style*="grid-template-columns:repeat(6,1fr)"]{grid-template-columns:repeat(2,1fr)!important}
  [style*="grid-template-columns:repeat(5,1fr)"],
  [style*="grid-template-columns:repeat(4,1fr)"],
  [style*="grid-template-columns:repeat(3,1fr)"],
  [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important}
  .cc-grid[style]{grid-template-columns:1fr!important}
  .m-hls-3,.m-hl-methods{grid-template-columns:1fr!important}
  .psg{grid-template-columns:1fr!important}
  .hero-stats{flex-wrap:wrap;justify-content:center;row-gap:22px}
  .hd{display:none}
  .hs{min-width:110px}
  .fbot{flex-direction:column;gap:10px;text-align:center}
  #modal-bg,#fac-modal-bg{padding:12px 10px 28px}
  #modal-box,#fac-modal-box{border-radius:16px}
  .m-sched-table{min-width:640px}
  .fac-search-row,.fac-search-box{width:100%;max-width:none}
  .fm-footer{flex-direction:column;align-items:flex-start}
  .fm-footer-r{align-self:center}
  img{max-width:100%}
}
