@charset "utf-8";
/* ==========================================================================
   易升学教育官网 · 设计系统样式表
   零第三方依赖 | CSS 变量驱动 | 断点 1024 / 768 / 420
   ========================================================================== */

/* ---------- 1. 设计变量 ---------- */
:root{
  /* 主色（skin.css 可按站点覆盖，实现四站四配色） */
  --c-primary:#2c7be5;
  --c-primary-d:#1a5fc0;
  --c-primary-dd:#14498f;
  --c-primary-l:#eaf2fe;
  --c-primary-ll:#f5f9ff;
  /* 品牌渐变（首屏/横幅/CTA/抽屉头部）—— 由 --c-hero-* 派生 */
  --c-hero-1:#1a5fc0;   /* 渐变起点 */
  --c-hero-2:#2c7be5;   /* 渐变主色 */
  --c-hero-3:#12b5c9;   /* 渐变终点 */
  --c-hero-accent:#7c5cf0; /* 径向点缀色 */
  --c-hero-accent-soft:#7c5cf059; /* 点缀色半透明（8位hex） */
  --g-brand:linear-gradient(120deg,var(--c-hero-1) 0%,var(--c-hero-2) 45%,var(--c-hero-3) 100%);
  /* 辅助色 */
  --c-cyan:#12b5c9;
  --c-orange:#f5803e;
  --c-green:#1eaf7c;
  --c-purple:#7c5cf0;
  --c-pink:#e8568f;
  --c-gold:#e0a02a;
  /* 文字 */
  --c-ink:#1b2733;
  --c-ink-2:#4f6172;
  --c-ink-3:#8798a8;
  --c-ink-4:#a9b6c2;
  /* 背景与线 */
  --c-bg:#ffffff;
  --c-bg-soft:#f6f9fc;
  --c-bg-soft2:#eef4fa;
  --c-line:#e3eaf1;
  --c-line-2:#eff3f7;
  /* 圆角 */
  --r-xs:4px; --r-sm:8px; --r-md:12px; --r-lg:16px; --r-xl:22px; --r-pill:999px;
  /* 阴影 */
  --sh-1:0 1px 2px rgba(27,39,51,.05), 0 2px 8px rgba(27,39,51,.05);
  --sh-2:0 2px 6px rgba(27,39,51,.06), 0 8px 24px rgba(27,39,51,.07);
  --sh-3:0 6px 18px rgba(27,39,51,.08), 0 18px 48px rgba(27,39,51,.10);
  --sh-blue:0 6px 18px rgba(44,123,229,.22);
  /* 间距 */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px;
  --sp-6:24px; --sp-8:32px; --sp-10:40px; --sp-12:48px; --sp-16:64px; --sp-20:80px;
  /* 版心 */
  --w-page:1200px;
  --h-header:80px;
  /* 字体 */
  --f-sans:"Microsoft YaHei","微软雅黑",-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Helvetica Neue",Arial,sans-serif;
  /* 渐变 */
  --g-blue:linear-gradient(135deg,var(--c-primary),var(--c-primary-d));
  --g-cyan:linear-gradient(135deg,#12b5c9,#0d8fa3);
  --g-orange:linear-gradient(135deg,#f5803e,#e2652a);
  --g-green:linear-gradient(135deg,#1eaf7c,#158a61);
  --g-purple:linear-gradient(135deg,#7c5cf0,#5f3fd6);
  --g-pink:linear-gradient(135deg,#e8568f,#cc3a73);
  --g-gold:linear-gradient(135deg,#e0a02a,#c1841a);
}

/* ---------- 2. 基础重置 ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;font-family:var(--f-sans);font-size:16px;line-height:1.75;
  color:var(--c-ink);background:var(--c-bg);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit;text-decoration:none}
img{max-width:100%;border:0;vertical-align:middle}
button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}
button{cursor:pointer;border:0;background:none}
table{border-collapse:collapse;width:100%}
:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}

/* ---------- 3. 通用布局 ---------- */
.wrap{max-width:var(--w-page);margin:0 auto;padding:0 20px}
.sec{padding:var(--sp-12) 0}
.sec--soft{background:var(--c-bg-soft)}
.sec--tint{background:linear-gradient(180deg,var(--c-primary-ll),#fff)}
.sec--sm{padding:var(--sp-12) 0}
/* 四组卡片/步骤/承诺模块差异化背景（色相明显区分、呼应卡片图标色系） */
.bg-channels{background:linear-gradient(180deg,#cfe0ff 0,#e0ebff 55%,#ecf2ff 100%);border-top:1px solid #b3cbf7;border-bottom:1px solid #b3cbf7}
.bg-benefits{background:linear-gradient(180deg,#fcd9e8 0,#fde8f0 55%,#fef3f8 100%);border-top:1px solid #f5b8d2;border-bottom:1px solid #f5b8d2}
.bg-steps{background:linear-gradient(180deg,#ffe2c4 0,#ffefd9 55%,#fff6e9 100%);border-top:1px solid #ffc995;border-bottom:1px solid #ffc995}
.bg-promises{background:linear-gradient(180deg,#c9ead7 0,#ddf2e5 55%,#e9f7ef 100%);border-top:1px solid #a4d4ba;border-bottom:1px solid #a4d4ba}
/* 首页新增：案例轮播区（青）与数据条（紫），与既有四块形成完整色带序列 */
.bg-cases{background:#fff;border-top:1px solid #fff;border-bottom:1px solid #fff}
.bg-stat{background:linear-gradient(180deg,#ece6ff 0,#f1ecff 55%,#f6f2ff 100%);border-top:1px solid #d3c8f7;border-bottom:1px solid #d3c8f7}

.sec-head{text-align:center;max-width:760px;margin:0 auto var(--sp-12)}
.sec-head--left{text-align:left;margin-left:0}
.eyebrow{
  display:inline-block;font-size:13px;font-weight:700;letter-spacing:.14em;
  color:var(--c-primary);background:var(--c-primary-l);
  padding:5px 14px;border-radius:var(--r-pill);margin-bottom:var(--sp-4);
}
.sec-title{font-size:34px;line-height:1.35;font-weight:800;letter-spacing:-.01em}
.sec-title small{display:block;font-size:15px;font-weight:400;color:var(--c-ink-3);margin-top:8px;letter-spacing:0}
.sec-sub{margin-top:var(--sp-4);font-size:16px;color:var(--c-ink-2)}

.grid{display:grid;gap:var(--sp-6)}
.g-2{grid-template-columns:repeat(2,1fr)}
.g-3{grid-template-columns:repeat(3,1fr)}
.g-4{grid-template-columns:repeat(4,1fr)}
.g-6{grid-template-columns:repeat(6,1fr)}

/* ---------- 4. 按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 26px;border-radius:var(--r-pill);font-size:16px;font-weight:700;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease;
  white-space:nowrap;line-height:1.2;
}
.btn-primary{background:var(--c-primary);color:#fff;box-shadow:var(--sh-blue)}
.btn-primary:hover{background:var(--c-primary-d);transform:translateY(-2px)}
.btn-light{background:#fff;color:var(--c-primary);box-shadow:var(--sh-2)}
.btn-light:hover{transform:translateY(-2px);color:var(--c-primary-d)}
.btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:1.5px solid rgba(255,255,255,.55)}
.btn-ghost:hover{background:rgba(255,255,255,.24);transform:translateY(-2px)}
.btn-line{background:#fff;color:var(--c-primary);border:1.5px solid var(--c-primary)}
.btn-line:hover{background:var(--c-primary-l);transform:translateY(-2px)}
.btn-sm{padding:9px 18px;font-size:14px}
.btn-lg{padding:16px 34px;font-size:17px}
.btn-block{width:100%}

/* ---------- 5. 页头 / 导航（80px 纯白固定） ---------- */
.site-header{
  position:sticky;top:0;z-index:100;
  background:#ffffff;               /* 纯白，滚动不变色 */
  border-bottom:1px solid var(--c-line);
}
.site-header.is-stuck{box-shadow:var(--sh-2)}
.hd-bar{display:flex;align-items:center;gap:var(--sp-6);height:var(--h-header)}
.logo{display:flex;align-items:center;gap:10px;flex:none}
/* 桌面端 Logo 固定高度 60px */
.logo img{height:60px;width:auto}
.logo-txt{display:flex;flex-direction:column;gap:3px;line-height:1.25}
.logo-txt b{font-size:20px;font-weight:800;letter-spacing:.02em;line-height:1.2}
.logo-txt span{font-size:11.5px;color:var(--c-ink-3);letter-spacing:.06em;line-height:1.35}

.nav{flex:1;min-width:0;display:flex;justify-content:center}
.nav-list{display:flex;align-items:center;gap:2px;flex-wrap:nowrap}
.nav-list>li{flex:none}
.nav-list>li>a{
  display:block;padding:10px 16px;border-radius:var(--r-sm);
  font-size:15.5px;font-weight:600;color:var(--c-ink-2);
  transition:background .18s,color .18s;white-space:nowrap;
}
.nav-list>li>a:hover{color:var(--c-primary);background:var(--c-primary-l)}
.nav-list>li.is-active>a{color:var(--c-primary);background:var(--c-primary-l)}
.nav-list>li[hidden]{display:none}

/* 溢出后的“更多”下拉 */
.nav-more{position:relative}
.nav-more>button{
  display:flex;align-items:center;gap:5px;padding:10px 14px;border-radius:var(--r-sm);
  font-size:15.5px;font-weight:600;color:var(--c-ink-2);white-space:nowrap;
}
.nav-more>button:hover,.nav-more.is-open>button{color:var(--c-primary);background:var(--c-primary-l)}
.nav-more>button i{
  width:0;height:0;border:4px solid transparent;border-top-color:currentColor;
  margin-top:3px;transition:transform .2s;
}
.nav-more.is-open>button i{transform:rotate(180deg);margin-top:-3px}
.nav-more-list{
  position:absolute;right:0;top:calc(100% + 8px);min-width:168px;
  background:#fff;border:1px solid var(--c-line);border-radius:var(--r-md);
  box-shadow:var(--sh-3);padding:6px;
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .18s,transform .18s,visibility .18s;
}
.nav-more.is-open .nav-more-list{opacity:1;visibility:visible;transform:translateY(0)}
.nav-more-list a{
  display:block;padding:10px 14px;border-radius:var(--r-sm);
  font-size:15px;font-weight:600;color:var(--c-ink-2);white-space:nowrap;
}
.nav-more-list a:hover{color:var(--c-primary);background:var(--c-primary-l)}
.nav-more-list li.is-active a{color:var(--c-primary);background:var(--c-primary-l)}

.hd-cta{flex:none;display:flex;align-items:center;gap:var(--sp-4)}
.hd-tel{display:flex;flex-direction:column;line-height:1.2}
.hd-tel span{font-size:11px;color:var(--c-ink-3)}
.hd-tel b{font-size:19px;font-weight:800;color:var(--c-primary);letter-spacing:.01em}
.hd-wx{
  width:40px;height:40px;border-radius:50%;background:var(--c-primary-l);color:var(--c-primary);
  display:flex;align-items:center;justify-content:center;transition:.2s;flex:none;
}
.hd-wx:hover{background:var(--c-primary);color:#fff;transform:translateY(-2px)}
.hd-wx svg{width:21px;height:21px}
.hd-toggle{
  display:none;width:42px;height:42px;border-radius:var(--r-sm);
  flex-direction:column;align-items:center;justify-content:center;gap:5px;
}
.hd-toggle span{display:block;width:21px;height:2px;background:var(--c-ink);border-radius:2px;transition:.25s}
.hd-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hd-toggle.is-open span:nth-child(2){opacity:0}
.hd-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- 5.1 移动端抽屉（右侧滑出 + 遮罩 + 渐变头部） ---------- */
.drawer-mask{
  position:fixed;inset:0;z-index:190;background:rgba(15,23,42,.52);
  opacity:0;visibility:hidden;transition:opacity .32s ease,visibility .32s ease;
}
.drawer-mask.is-open{opacity:1;visibility:visible}
.drawer{
  position:fixed;top:0;right:0;bottom:0;z-index:200;
  width:min(84%,340px);background:#fff;
  display:flex;flex-direction:column;
  transform:translateX(106%);transition:transform .34s cubic-bezier(.25,.75,.3,1),visibility .34s;
  visibility:hidden;box-shadow:-12px 0 40px rgba(15,23,42,.16);
}
.drawer.is-open{transform:translateX(0);visibility:visible}
.drawer-head{
  flex:none;background:var(--g-brand);color:#fff;padding:22px 20px 20px;
  display:flex;align-items:center;gap:12px;
}
.drawer-head .dh-logo{display:flex;align-items:center}
.drawer-head .dh-logo img{height:46px;width:auto;border-radius:8px}
.drawer-close{
  margin-left:auto;flex:none;width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,.18);color:#fff;font-size:17px;line-height:1;
  display:flex;align-items:center;justify-content:center;transition:.2s;
}
.drawer-close:hover{background:rgba(255,255,255,.32);transform:rotate(90deg)}
.drawer-nav{flex:1;overflow-y:auto;padding:14px 16px 20px;-webkit-overflow-scrolling:touch}
.drawer-nav ul{display:flex;flex-direction:column;gap:4px}
.drawer-nav a{
  display:flex;align-items:center;gap:13px;
  padding:12px 12px;border-radius:var(--r-md);font-size:16.5px;font-weight:600;
  color:var(--c-ink);transition:background .18s,color .18s;
}
.drawer-nav a:hover{background:var(--c-bg-soft)}
.drawer-nav li.is-active a{background:var(--c-primary-l);color:var(--c-primary)}
.drawer-nav .d-ico{
  flex:none;width:34px;height:34px;border-radius:10px;color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:15.5px;font-weight:700;
}
.drawer-nav a i{font-style:normal;margin-left:auto;color:var(--c-ink-4);font-size:18px}
.drawer-foot{padding:0 16px 20px;display:flex;flex-direction:column;gap:10px}

/* ---------- 5.2 全站浮动按钮 ---------- */
.fab-group{
  position:fixed;right:18px;bottom:112px;z-index:150;
  display:flex;flex-direction:column;gap:10px;
}
.fab{
  width:46px;height:46px;border-radius:50%;
  box-shadow:var(--sh-3);color:#fff;
  display:flex;align-items:center;justify-content:center;
  transition:transform .2s ease,box-shadow .2s ease;position:relative;
}
.fab:hover{transform:translateY(-3px) scale(1.04)}
.fab svg{width:21px;height:21px}
.fab-tel{background:var(--g-green)}
.fab-wechat{background:var(--c-primary);box-shadow:0 6px 18px rgba(44,123,229,.3)}
.fab-top{
  background:#fff;color:var(--c-ink);border:1px solid var(--c-line);
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .25s,transform .25s,visibility .25s;
}
.fab-top.is-on{opacity:1;visibility:visible;transform:none}
.fab-top svg{width:19px;height:19px}

/* ---------- 5.3 二维码弹窗 ---------- */
.modal{
  position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;
  padding:22px;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease;
}
.modal.is-open{opacity:1;visibility:visible}
.modal-mask{position:absolute;inset:0;background:rgba(15,23,42,.55)}
.modal-box{
  position:relative;background:#fff;border-radius:22px;padding:30px 26px 26px;
  max-width:340px;width:100%;text-align:center;box-shadow:var(--sh-3);
  transform:scale(.92) translateY(10px);transition:transform .28s cubic-bezier(.2,.8,.3,1.1);
}
.modal.is-open .modal-box{transform:none}
.modal-close{
  position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;
  background:var(--c-bg-soft);color:var(--c-ink-3);font-size:16px;
  display:flex;align-items:center;justify-content:center;transition:.2s;
}
.modal-close:hover{background:var(--c-primary-l);color:var(--c-primary);transform:rotate(90deg)}
.modal-box .m-badge{
  display:inline-block;font-size:12px;font-weight:700;letter-spacing:.12em;
  color:var(--c-primary);background:var(--c-primary-l);
  padding:4px 13px;border-radius:var(--r-pill);margin-bottom:12px;
}
.modal-box h3{font-size:20px;font-weight:800;margin-bottom:6px}
.modal-box .m-sub{font-size:13.5px;color:var(--c-ink-3);margin-bottom:16px}
.modal-qr{
  width:206px;height:206px;margin:0 auto 16px;padding:8px;
  background:#fff;border:1px solid var(--c-line);border-radius:16px;box-shadow:var(--sh-1);
}
.modal-qr img{width:100%;height:auto;object-fit:contain;display:block}
.m-wx,.m-tel{
  display:flex;align-items:center;justify-content:center;gap:9px;
  font-size:15.5px;font-weight:700;color:var(--c-ink);padding:9px 0;
}
.m-wx b,.m-tel b{color:var(--c-primary);font-weight:800;letter-spacing:.02em}
.modal-box .m-note{font-size:12.5px;color:var(--c-ink-3);margin-top:12px;line-height:1.7}
.modal-box .m-btns{display:flex;gap:10px;margin-top:14px}
.modal-box .m-btns a{flex:1}

/* ---------- 6. 首屏 Hero ---------- */
.hero{
  position:relative;overflow:hidden;color:#fff;
  background:var(--g-brand);
}
.hero::before{
  content:"";position:absolute;inset:0;opacity:.5;
  background:
    radial-gradient(680px 340px at 12% 0%,rgba(255,255,255,.22),transparent 70%),
    radial-gradient(520px 320px at 88% 100%,var(--c-hero-accent-soft),transparent 70%);
}
.hero::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:64px;
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.10));
}
.hero-in{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:var(--sp-12);
  align-items:center;padding:var(--sp-20) 0}
.hero-tag{
  display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;
  background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.34);
  padding:6px 15px;border-radius:var(--r-pill);letter-spacing:.04em;
}
.hero h1{margin:var(--sp-5) 0 var(--sp-4);font-size:46px;line-height:1.24;font-weight:800;letter-spacing:-.01em}
.hero h1 em{font-style:normal;color:#ffe08a}
.hero-sub{font-size:17.5px;line-height:1.8;color:rgba(255,255,255,.92);max-width:560px}
.hero-pts{display:flex;flex-wrap:wrap;gap:10px;margin:var(--sp-6) 0 var(--sp-8)}
.hero-pts li{
  display:flex;align-items:center;gap:7px;font-size:14.5px;font-weight:600;
  background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.28);
  padding:7px 14px;border-radius:var(--r-pill);
}
.hero-pts li::before{content:"✓";font-weight:800;color:#ffe08a}
.hero-btns{display:flex;flex-wrap:wrap;gap:var(--sp-4)}
.hero-note{margin-top:var(--sp-5);font-size:13.5px;color:rgba(255,255,255,.78)}

/* 首屏右侧卡片 */
.hero-card{
  background:#fff;color:var(--c-ink);border-radius:var(--r-xl);
  padding:var(--sp-8);box-shadow:0 24px 60px rgba(15,32,58,.28);
}
.hero-card h3{font-size:20px;font-weight:800;margin-bottom:6px}
.hero-card p.hc-sub{font-size:14px;color:var(--c-ink-3);margin-bottom:var(--sp-5)}
.hc-list{display:flex;flex-direction:column;gap:var(--sp-3)}
.hc-list li{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:var(--r-md);background:var(--c-bg-soft)}
.hc-list li b{display:block;font-size:15px;font-weight:700}
.hc-list li span{font-size:13px;color:var(--c-ink-3);line-height:1.6}
/* 提升优先级，避免被 .hc-list li span 覆盖 */
.hc-list .hc-no{
  flex:none;width:26px;height:26px;border-radius:50%;background:var(--g-blue);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;
}
.hc-list li:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border:1px solid #d6e8ff}
.hc-list li:nth-child(2){background:linear-gradient(135deg,#f0fff7 0%,#fff 100%);border:1px solid #d6f5e6}
.hc-list li:nth-child(3){background:linear-gradient(135deg,#fff9f0 0%,#fff 100%);border:1px solid #ffe8d6}
.hc-list li:nth-child(4){background:linear-gradient(135deg,#f8f0ff 0%,#fff 100%);border:1px solid #ecd6ff}
.hc-list li:nth-child(1) .hc-no{background:linear-gradient(135deg,#4aa3ff,#2c7be5)}
.hc-list li:nth-child(2) .hc-no{background:linear-gradient(135deg,#38d996,#20b26c)}
.hc-list li:nth-child(3) .hc-no{background:linear-gradient(135deg,#ffb36b,#ff8c38)}
.hc-list li:nth-child(4) .hc-no{background:linear-gradient(135deg,#c889ff,#a855f7)}

/* ---------- 7. 数据条 ---------- */
.stat-bar{background:linear-gradient(180deg,#ece6ff 0,#f1ecff 55%,#f6f2ff 100%);border:1px solid #d3c8f7;border-radius:var(--r-lg);box-shadow:var(--sh-2);
  margin-top:calc(-1 * var(--sp-10));position:relative;z-index:3;overflow:hidden}
.stat-bar ul{display:grid;grid-template-columns:repeat(4,1fr)}
.stat-bar li{padding:var(--sp-6) var(--sp-4);text-align:center;border-right:1px solid var(--c-line-2)}
.stat-bar li:last-child{border-right:0}
.stat-bar b{display:block;font-size:32px;font-weight:800;line-height:1.2;
  background:var(--g-blue);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat-bar li:nth-child(2) b{background:var(--g-orange);-webkit-background-clip:text;background-clip:text}
.stat-bar li:nth-child(3) b{background:var(--g-green);-webkit-background-clip:text;background-clip:text}
.stat-bar li:nth-child(4) b{background:var(--g-purple);-webkit-background-clip:text;background-clip:text}
.stat-bar span{font-size:14px;color:var(--c-ink-2)}

/* ---------- 8. 卡片 ---------- */
.card{
  background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);
  padding:var(--sp-8) var(--sp-6);transition:transform .22s,box-shadow .22s,border-color .22s;
  height:100%;display:flex;flex-direction:column;
}
.card:hover{transform:translateY(-4px);box-shadow:var(--sh-3);border-color:transparent}
.card h3{font-size:19px;font-weight:800;margin-bottom:10px}
.card p{font-size:14.5px;color:var(--c-ink-2);line-height:1.8}
.card .card-more{margin-top:auto;padding-top:var(--sp-4);font-size:14px;font-weight:700;color:var(--c-primary)}
.card .card-more::after{content:" →"}

.ico{
  width:52px;height:52px;border-radius:var(--r-md);margin-bottom:var(--sp-5);
  display:flex;align-items:center;justify-content:center;
  font-size:23px;font-weight:800;color:#fff;box-shadow:var(--sh-2);
}
.g-b{background:var(--g-blue)} .g-c{background:var(--g-cyan)} .g-o{background:var(--g-orange)}
.g-g{background:var(--g-green)} .g-p{background:var(--g-purple)} .g-k{background:var(--g-pink)}
.g-d{background:var(--g-gold)}

/* ---------- 7.5 模块卡片轻渐变底色 ---------- */
.bg-channels .card:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.bg-channels .card:nth-child(2){background:linear-gradient(135deg,#f0fdff 0%,#fff 100%);border-color:#d6f4f7}
.bg-channels .card:nth-child(3){background:linear-gradient(135deg,#f0fff7 0%,#fff 100%);border-color:#d6f5e6}
.bg-channels .card:nth-child(4){background:linear-gradient(135deg,#f0fff2 0%,#fff 100%);border-color:#d6f5dd}
.bg-channels .card:nth-child(5){background:linear-gradient(135deg,#f8f0ff 0%,#fff 100%);border-color:#ecd6ff}
.bg-channels .card:nth-child(6){background:linear-gradient(135deg,#fff0f6 0%,#fff 100%);border-color:#ffd6e8}
.bg-benefits .card:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.bg-benefits .card:nth-child(2){background:linear-gradient(135deg,#f0fcff 0%,#fff 100%);border-color:#d6f3f7}
.bg-benefits .card:nth-child(3){background:linear-gradient(135deg,#f0fff9 0%,#fff 100%);border-color:#d6f5e6}
.bg-benefits .card:nth-child(4){background:linear-gradient(135deg,#f6fff0 0%,#fff 100%);border-color:#e3f5d6}
.bg-benefits .card:nth-child(5){background:linear-gradient(135deg,#fffdf0 0%,#fff 100%);border-color:#f5efd6}
.bg-benefits .card:nth-child(6){background:linear-gradient(135deg,#fff8f0 0%,#fff 100%);border-color:#ffe8d6}
.bg-benefits .card:nth-child(7){background:linear-gradient(135deg,#fff5f0 0%,#fff 100%);border-color:#ffdcd6}
.bg-benefits .card:nth-child(8){background:linear-gradient(135deg,#f8f0ff 0%,#fff 100%);border-color:#ecd6ff}
.bg-steps .step:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.bg-steps .step:nth-child(2){background:linear-gradient(135deg,#f0fdff 0%,#fff 100%);border-color:#d6f4f7}
.bg-steps .step:nth-child(3){background:linear-gradient(135deg,#f0fff7 0%,#fff 100%);border-color:#d6f5e6}
.bg-steps .step:nth-child(4){background:linear-gradient(135deg,#fffdf0 0%,#fff 100%);border-color:#f5efd6}
.bg-steps .step:nth-child(5){background:linear-gradient(135deg,#fff8f0 0%,#fff 100%);border-color:#ffe8d6}
.bg-steps .step:nth-child(6){background:linear-gradient(135deg,#f8f0ff 0%,#fff 100%);border-color:#ecd6ff}
.bg-promises .pm:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.bg-promises .pm:nth-child(2){background:linear-gradient(135deg,#f0fdff 0%,#fff 100%);border-color:#d6f4f7}
.bg-promises .pm:nth-child(3){background:linear-gradient(135deg,#fff8f0 0%,#fff 100%);border-color:#ffe8d6}
.bg-promises .pm:nth-child(4){background:linear-gradient(135deg,#f0fff7 0%,#fff 100%);border-color:#d6f5e6}
.brand-word .bw:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.brand-word .bw:nth-child(2){background:linear-gradient(135deg,#fff8f0 0%,#fff 100%);border-color:#ffe8d6}
.brand-word .bw:nth-child(3){background:linear-gradient(135deg,#f0fff7 0%,#fff 100%);border-color:#d6f5e6}
.value-list .val:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.value-list .val:nth-child(2){background:linear-gradient(135deg,#f0fdff 0%,#fff 100%);border-color:#d6f4f7}
.value-list .val:nth-child(3){background:linear-gradient(135deg,#f0fff7 0%,#fff 100%);border-color:#d6f5e6}
.value-list .val:nth-child(4){background:linear-gradient(135deg,#fff8f0 0%,#fff 100%);border-color:#ffe8d6}
.value-list .val:nth-child(5){background:linear-gradient(135deg,#f8f0ff 0%,#fff 100%);border-color:#ecd6ff}
.idea-list .idea:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.idea-list .idea:nth-child(2){background:linear-gradient(135deg,#f0fdff 0%,#fff 100%);border-color:#d6f4f7}
.idea-list .idea:nth-child(3){background:linear-gradient(135deg,#fff8f0 0%,#fff 100%);border-color:#ffe8d6}
/* FAQ 手风琴 6 项渐变 */
.bg-faq .card:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.bg-faq .card:nth-child(2){background:linear-gradient(135deg,#f0fdff 0%,#fff 100%);border-color:#d6f4f7}
.bg-faq .card:nth-child(3){background:linear-gradient(135deg,#f0fff7 0%,#fff 100%);border-color:#d6f5e6}
.bg-faq .card:nth-child(4){background:linear-gradient(135deg,#fff8f0 0%,#fff 100%);border-color:#ffe8d6}
.bg-faq .card:nth-child(5){background:linear-gradient(135deg,#f8f0ff 0%,#fff 100%);border-color:#ecd6ff}
.bg-faq .card:nth-child(6){background:linear-gradient(135deg,#fff0f6 0%,#fff 100%);border-color:#ffd6e8}
/* 入学升学服务 4 卡渐变（呼应图标色系：学蓝/审绿/规紫/籍橙） */
.bg-edu .card:nth-child(1){background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.bg-edu .card:nth-child(2){background:linear-gradient(135deg,#f0fff7 0%,#fff 100%);border-color:#d6f5e6}
.bg-edu .card:nth-child(3){background:linear-gradient(135deg,#f8f0ff 0%,#fff 100%);border-color:#ecd6ff}
.bg-edu .card:nth-child(4){background:linear-gradient(135deg,#fff8f0 0%,#fff 100%);border-color:#ffe8d6}

.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:var(--sp-4)}
.chip{
  font-size:12.5px;font-weight:600;color:var(--c-ink-2);
  background:var(--c-bg-soft2);padding:4px 11px;border-radius:var(--r-pill);
}
.chip--b{background:var(--c-primary-l);color:var(--c-primary-d)}

/* 特性列表 */
.feat-list{display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-4)}
.feat-list li{display:flex;gap:10px;font-size:14.5px;color:var(--c-ink-2);line-height:1.7}
.feat-list li::before{
  content:"✓";flex:none;width:20px;height:20px;border-radius:50%;
  background:var(--c-primary-l);color:var(--c-primary);
  display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;margin-top:3px;
}

/* ---------- 9. 步骤 / 时间轴 ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-6)}
.step{
  position:relative;background:#fff;border:1px solid var(--c-line);
  border-radius:var(--r-lg);padding:var(--sp-8) var(--sp-6) var(--sp-6);
  transition:transform .22s,box-shadow .22s;
}
.step:hover{transform:translateY(-4px);box-shadow:var(--sh-3)}
.step-no{
  position:absolute;top:-18px;left:var(--sp-6);
  width:44px;height:44px;border-radius:var(--r-md);background:var(--g-blue);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:17px;font-weight:800;box-shadow:var(--sh-blue);
}
.step:nth-child(2) .step-no{background:var(--g-cyan);box-shadow:0 6px 18px rgba(18,181,201,.25)}
.step:nth-child(3) .step-no{background:var(--g-green);box-shadow:0 6px 18px rgba(30,175,124,.25)}
.step:nth-child(4) .step-no{background:var(--g-orange);box-shadow:0 6px 18px rgba(245,128,62,.25)}
.step:nth-child(5) .step-no{background:var(--g-purple);box-shadow:0 6px 18px rgba(124,92,240,.25)}
.step:nth-child(6) .step-no{background:var(--g-pink);box-shadow:0 6px 18px rgba(232,86,143,.25)}
.step h3{margin:var(--sp-5) 0 8px;font-size:18.5px;font-weight:800}
.step p{font-size:14.5px;color:var(--c-ink-2);line-height:1.8}
.step-meta{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px dashed var(--c-line);
  font-size:13px;color:var(--c-ink-3);display:flex;flex-wrap:wrap;gap:6px 14px}
.step-meta b{color:var(--c-primary);font-weight:700}

/* ---------- 10. 案例卡片 ---------- */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-6)}
.case-card{
  display:flex;flex-direction:column;background:#fff;border:1px solid var(--c-line);
  border-radius:var(--r-lg);overflow:hidden;height:100%;
  transition:transform .22s,box-shadow .22s,border-color .22s;
}
.case-card:hover{transform:translateY(-4px);box-shadow:var(--sh-3);border-color:transparent}
/* 列表卡片固定比例裁剪，居中显示 */
.case-thumb{
  background:linear-gradient(135deg,#f3f7fc 0%,#e8f0fa 100%);display:block;
  border-bottom:1px solid var(--c-line-2);aspect-ratio:16/10;overflow:hidden;
}
.case-thumb img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.case-body{padding:var(--sp-6);display:flex;flex-direction:column;flex:1}
.case-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.case-tag{font-size:12px;font-weight:700;padding:3px 10px;border-radius:var(--r-pill);
  background:var(--c-primary-l);color:var(--c-primary-d)}
.case-tag--o{background:#fff1e8;color:#c85a1c}
.case-tag--g{background:#e6f7f0;color:#12805a}
.case-card h3{font-size:17px;font-weight:800;line-height:1.55;margin-bottom:9px}
.case-card p{font-size:14px;color:var(--c-ink-2);line-height:1.8;flex:1}
.case-foot{
  margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--c-line-2);
  display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);
}
.case-link{font-size:14px;font-weight:700;color:var(--c-primary)}
.case-link::after{content:" →"}

/* 筛选栏（分页后筛选为链接形式） */
.filter{
  background:linear-gradient(135deg,#f5f9ff 0%,#fff 100%);border:1px solid #e1ecff;border-radius:var(--r-lg);
  padding:var(--sp-5) var(--sp-6);box-shadow:var(--sh-1);margin-bottom:var(--sp-8);
}
.filter-row{display:flex;align-items:flex-start;gap:var(--sp-4);padding:var(--sp-3) 0}
.filter-row+.filter-row{border-top:1px dashed var(--c-line)}
.filter-row>b{flex:none;width:70px;font-size:14px;font-weight:700;color:var(--c-ink-3);padding-top:6px}
.filter-opts{display:flex;flex-wrap:wrap;gap:8px}
.filter-opts a{
  font-size:14px;font-weight:600;color:var(--c-ink-2);padding:6px 15px;
  border-radius:var(--r-pill);background:var(--c-bg-soft);transition:.18s;
}
.filter-opts a:hover{background:var(--c-primary-l);color:var(--c-primary)}
.filter-opts a.is-on{background:var(--c-primary);color:#fff;box-shadow:var(--sh-blue)}
.filter-count{font-size:14px;color:var(--c-ink-3);margin-bottom:var(--sp-5)}
.filter-count b{color:var(--c-primary);font-weight:800;font-size:17px}
.empty-tip{text-align:center;padding:var(--sp-16) var(--sp-4);color:var(--c-ink-3);
  background:#fff;border:1px dashed var(--c-line);border-radius:var(--r-lg)}

/* 分页导航 */
.pager-nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:var(--sp-10)}
.pager-nav a,.pager-nav span{
  min-width:40px;height:40px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:var(--r-pill);font-weight:600;font-size:15px;background:#fff;
  border:1px solid var(--c-line);color:var(--c-ink-2);transition:.18s;
}
.pager-nav a:hover{border-color:var(--c-primary);color:var(--c-primary);transform:translateY(-2px)}
.pager-nav .cur{background:var(--c-primary);color:#fff;border-color:var(--c-primary);box-shadow:var(--sh-blue)}
.pager-nav .dim{opacity:.42;pointer-events:none}
.pager-nav .dots{border:0;min-width:auto;padding:0 6px;color:var(--c-ink-4)}

/* ---------- 10.1 首页案例轮播（自动 + 手动） ---------- */
.carousel{
  position:relative;background:#fff;border:1px solid var(--c-line);
  border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh-2);
}
.carousel-viewport{overflow:hidden}
.carousel-track{display:flex;transition:transform .55s cubic-bezier(.22,.61,.36,1);will-change:transform}
.carousel-slide{
  flex:0 0 100%;min-width:100%;display:grid;grid-template-columns:1.02fr .98fr;
  align-items:stretch;
}
.cs-img{
  background:linear-gradient(135deg,#f3f7fc 0%,#e8f0fa 100%);display:block;
  aspect-ratio:16/10;overflow:hidden;
}
.cs-img a{display:block;height:100%}
.cs-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.cs-body{padding:var(--sp-10);display:flex;flex-direction:column;justify-content:center;
  background:linear-gradient(135deg,#fff8f0 0%,#fff 100%)}
.cs-body .case-tags{margin-bottom:14px}
.cs-body h3{font-size:22px;font-weight:800;line-height:1.5;margin-bottom:14px}
.cs-body h3 a{transition:color .18s}
.cs-body h3 a:hover{color:var(--c-primary)}
.cs-body p{font-size:15px;color:var(--c-ink-2);line-height:1.9;margin-bottom:var(--sp-6)}
.cs-more{align-self:flex-start}
.carousel-btn{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  width:44px;height:44px;border-radius:50%;background:#fff;color:var(--c-ink-2);
  box-shadow:var(--sh-2);display:flex;align-items:center;justify-content:center;
  transition:background .2s,color .2s,transform .2s;opacity:.9;
}
.carousel-btn:hover{background:var(--c-primary);color:#fff;transform:translateY(-50%) scale(1.06)}
.carousel-btn svg{width:20px;height:20px}
.carousel-prev{left:14px}
.carousel-next{right:14px}
.carousel-dots{
  position:absolute;left:0;right:0;bottom:14px;z-index:5;
  display:flex;justify-content:center;gap:7px;
}
.carousel-dots button{
  width:9px;height:9px;border-radius:var(--r-pill);background:rgba(27,39,51,.16);
  transition:width .3s,background .3s;
}
.carousel-dots button.is-on{width:26px;background:var(--c-primary)}

/* ---------- 11. 对比表 ---------- */
.tbl-wrap{overflow-x:auto;background:#fff;border:1px solid var(--c-line);
  border-radius:var(--r-lg);box-shadow:var(--sh-1);-webkit-overflow-scrolling:touch}
.tbl{min-width:640px;font-size:15px}
.tbl th,.tbl td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--c-line-2);vertical-align:top}
.tbl thead th{background:var(--c-primary);color:#fff;font-weight:700;font-size:15px;white-space:nowrap}
.tbl thead th:first-child{background:var(--c-primary-d)}
.tbl tbody tr:nth-child(even){background:var(--c-bg-soft)}
.tbl tbody tr:hover{background:var(--c-primary-ll)}
.tbl td:first-child{font-weight:700;color:var(--c-ink);white-space:nowrap}
.tbl .no{color:#b3413f}
.tbl .yes{color:#12805a;font-weight:700}
.tbl tbody tr:last-child td{border-bottom:0}

/* ---------- 12. 入户测评（六步向导） ---------- */
.assess-shell{max-width:980px;margin:0 auto}
.wizard{background:linear-gradient(135deg,#f8fbff 0%,#fff 100%);border:1px solid #e1ecff;border-radius:var(--r-xl);
  box-shadow:var(--sh-2);overflow:hidden}
.wz-head{
  padding:var(--sp-8) var(--sp-8) 0;text-align:center;
}
.wz-head .eyebrow{margin-bottom:10px}
.wz-head h2{font-size:24px;font-weight:800}
.wz-head p{font-size:14px;color:var(--c-ink-3);margin-top:8px}

/* 步骤进度条 */
.wz-progress{
  display:flex;align-items:center;justify-content:center;
  padding:var(--sp-6) var(--sp-8) 0;gap:0;
}
.wz-progress .wp-step{display:flex;flex-direction:column;align-items:center;gap:6px;position:relative}
.wz-progress .wp-dot{
  width:34px;height:34px;border-radius:50%;background:var(--c-bg-soft);
  border:2px solid var(--c-line);color:var(--c-ink-3);
  display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;
  transition:.25s;
}
.wz-progress .wp-label{font-size:12px;color:var(--c-ink-3);white-space:nowrap;transition:.25s}
.wz-progress .wp-line{
  width:44px;height:2px;background:var(--c-line);margin:0 6px;margin-bottom:24px;transition:.25s;
}
.wz-progress .wp-step.is-on .wp-dot{background:var(--c-primary);border-color:var(--c-primary);color:#fff;box-shadow:var(--sh-blue)}
.wz-progress .wp-step.is-on .wp-label{color:var(--c-primary);font-weight:700}
.wz-progress .wp-step.is-done .wp-dot{background:var(--c-primary-l);border-color:var(--c-primary);color:var(--c-primary)}
.wz-progress .wp-step.is-done .wp-label{color:var(--c-primary)}
.wz-progress .wp-line.is-done{background:var(--c-primary)}

/* 步骤面板 */
.wz-body{padding:var(--sp-8)}
.wz-step{display:none}
.wz-step.is-on{display:block;animation:wzIn .38s ease}
@keyframes wzIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.wz-step h3{
  display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;
  margin-bottom:8px;
}
.wz-step h3 .wz-no{
  flex:none;width:38px;height:38px;border-radius:11px;background:var(--g-brand);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;
}
.wz-step .wz-desc{font-size:14.5px;color:var(--c-ink-3);margin:0 0 var(--sp-6) 50px}
.wz-fields{display:grid;gap:var(--sp-6);margin-left:50px}
.fld>label{display:block;font-size:15px;font-weight:700;margin-bottom:10px}
.fld>label i{font-style:normal;color:var(--c-ink-4);font-weight:400;font-size:13px;margin-left:6px}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts input{position:absolute;opacity:0;width:0;height:0}
.opts label{
  display:inline-flex;align-items:center;font-size:14.5px;font-weight:600;color:var(--c-ink-2);
  padding:9px 16px;border-radius:var(--r-pill);background:var(--c-bg-soft);
  border:1.5px solid transparent;cursor:pointer;transition:.18s;
}
.opts label:hover{background:var(--c-primary-l);color:var(--c-primary)}
.opts input:checked+label{background:var(--c-primary);color:#fff;border-color:var(--c-primary);box-shadow:var(--sh-blue)}
.opts input:focus-visible+label{outline:2px solid var(--c-primary);outline-offset:2px}
.fld select{
  width:100%;padding:12px 14px;border:1.5px solid var(--c-line);border-radius:var(--r-md);
  background:#fff;font-size:15px;appearance:none;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%238798a8' d='M6 8 0 0h12z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;
}
.fld select:focus{border-color:var(--c-primary);outline:none}
.fld textarea{width:100%;min-height:88px;padding:12px 14px;border:1.5px solid var(--c-line);
  border-radius:var(--r-md);font-size:15px;resize:vertical}
.fld textarea:focus{border-color:var(--c-primary);outline:none}

/* 短路提示条 */
.wz-hit{
  display:none;margin-left:50px;margin-top:var(--sp-5);
  padding:12px 16px;border-radius:var(--r-md);
  background:var(--c-primary-ll);border:1px solid var(--c-primary-l);
  font-size:14px;color:var(--c-ink-2);line-height:1.7;
}
.wz-hit.is-on{display:flex;align-items:center;gap:12px;flex-wrap:wrap;animation:wzIn .35s ease}
.wz-hit b{color:var(--c-primary);font-weight:700}
.wz-hit .btn{margin-left:auto}

/* 操作条 */
.wz-actions{display:flex;align-items:center;gap:12px;margin:var(--sp-8) 0 0 50px;flex-wrap:wrap}
.wz-actions .btn-gap{flex:1}
.wz-note{font-size:12.5px;color:var(--c-ink-4);line-height:1.7;margin:var(--sp-5) 0 0 50px}

/* 结果区 */
.wz-result{display:none}
.wz-result.is-on{display:block;animation:wzIn .4s ease}
.rz-badge{
  display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;
  color:var(--c-primary);background:var(--c-primary-l);
  padding:6px 16px;border-radius:var(--r-pill);margin-bottom:14px;
}
.rz-badge svg{width:15px;height:15px}
.rz-head h3{font-size:23px;font-weight:800;margin-bottom:6px}
.rz-head p{font-size:14.5px;color:var(--c-ink-3)}
.rz-head p b{color:var(--c-primary);font-size:18px}
.rz-short{
  margin:var(--sp-6) 0;padding:14px 18px;border-radius:var(--r-md);
  background:var(--c-bg-soft);border-left:4px solid var(--c-primary);
  font-size:14.5px;color:var(--c-ink-2);line-height:1.8;
}
.rz-plans{display:grid;gap:var(--sp-5)}
.rz-plan{
  border:1px solid var(--c-line);border-radius:var(--r-lg);overflow:hidden;
  transition:box-shadow .22s,transform .22s;
}
.rz-plan:hover{box-shadow:var(--sh-3);transform:translateY(-3px)}
.rz-plan-head{
  display:flex;align-items:center;gap:14px;padding:16px 20px;color:#fff;
  background:var(--g-blue);
}
.rz-plan-head .rp-no{
  flex:none;width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.2);
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;
}
.rz-plan-head b{font-size:17.5px;font-weight:800}
.rz-plan-head span{margin-left:auto;font-size:12.5px;background:rgba(255,255,255,.2);
  padding:4px 12px;border-radius:var(--r-pill)}
.rz-plan-body{padding:20px}
.rz-plan-body .rp-suit{font-size:14px;color:var(--c-ink-2);margin-bottom:16px}
.rz-plan-body .rp-suit b{color:var(--c-ink)}
.rz-plan-body .rp-docs-title{font-size:13px;font-weight:700;color:var(--c-ink-3);margin-bottom:10px;letter-spacing:.05em}
.r-list{display:flex;flex-direction:column;gap:8px}
.r-list li{display:flex;gap:9px;font-size:14px;color:var(--c-ink-2);line-height:1.75}
.r-list li::before{content:"·";font-weight:800;color:var(--c-primary);font-size:19px;line-height:1.2}
.rz-plan-foot{padding:0 20px 20px}
.rz-no{
  padding:26px;border:1px dashed var(--c-primary);border-radius:var(--r-lg);
  background:linear-gradient(135deg,#fff8f0,#fff);text-align:center;margin-top:var(--sp-5);
}
.rz-no .rz-no-tag{
  display:inline-block;font-size:13px;font-weight:800;color:#c85a1c;background:#fff1e8;
  padding:5px 16px;border-radius:var(--r-pill);margin-bottom:14px;
}
.rz-no h4{font-size:19px;font-weight:800;margin-bottom:8px}
.rz-no p{font-size:14px;color:var(--c-ink-2);margin-bottom:var(--sp-5);line-height:1.8}
.rz-no .rz-contact{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
/* 信息摘要 */
.rz-summary{
  margin-top:var(--sp-8);border-top:1px dashed var(--c-line);padding-top:var(--sp-6);
}
.rz-summary>b{display:block;font-size:15px;font-weight:800;margin-bottom:14px}
.rz-summary ul{display:flex;flex-wrap:wrap;gap:8px}
.rz-summary li{
  font-size:13px;color:var(--c-ink-2);background:var(--c-bg-soft);
  padding:6px 14px;border-radius:var(--r-pill);
}
.rz-summary li b{color:var(--c-primary);font-weight:700}
/* 结果操作条 */
.rz-actions{display:flex;gap:12px;margin-top:var(--sp-8);flex-wrap:wrap}

/* 滚动渐显（已取消：元素初始即可见，不再依赖 IntersectionObserver 触发） */
.reveal{opacity:1;transform:none;
  transition:opacity .7s ease,transform .7s ease}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{transition:none;opacity:1;transform:none}
  *{scroll-behavior:auto!important}
}

/* ---------- 13. 页面头部横幅 ---------- */
.page-hero{
  position:relative;overflow:hidden;color:#fff;padding:var(--sp-16) 0 var(--sp-12);
  background:var(--g-brand);
}
.page-hero::before{
  content:"";position:absolute;inset:0;opacity:.45;
  background:radial-gradient(600px 300px at 85% 0%,rgba(255,255,255,.24),transparent 70%);
}
.page-hero-in{position:relative;z-index:2;max-width:820px}
.page-hero h1{font-size:38px;line-height:1.3;font-weight:800;margin:var(--sp-3) 0 var(--sp-4)}
.page-hero p{font-size:16.5px;line-height:1.8;color:rgba(255,255,255,.9)}
.crumb{font-size:13.5px;color:rgba(255,255,255,.8);display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.crumb a:hover{color:#fff;text-decoration:underline}
.crumb span{color:rgba(255,255,255,.5)}
.page-hero .hero-pts{margin:var(--sp-6) 0 0}

/* ---------- 14. 案例详情 ---------- */
.detail{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--sp-10);align-items:start}
.detail-main{min-width:0;background:#fff;border:1px solid var(--c-line);
  border-radius:var(--r-lg);padding:var(--sp-10);box-shadow:var(--sh-1)}
.detail-main h1{font-size:29px;line-height:1.42;font-weight:800;margin-bottom:var(--sp-5)}
.detail-meta{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:var(--sp-6);
  border-bottom:1px solid var(--c-line);margin-bottom:var(--sp-6)}
.dm-item{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--c-ink-2);
  background:var(--c-bg-soft);padding:6px 13px;border-radius:var(--r-pill)}
.dm-item b{color:var(--c-ink);font-weight:700}
/* 详情配图完整显示，宽度撑满 */
.detail-fig{
  margin:0 0 var(--sp-8);background:linear-gradient(135deg,#f3f7fc 0%,#e8f0fa 100%);border-radius:var(--r-md);
  overflow:hidden;
}
.detail-fig img{width:100%;height:auto;object-fit:contain;display:block;border-radius:var(--r-md)}
.detail-sum{
  font-size:15.5px;line-height:1.85;color:var(--c-ink-2);
  background:var(--c-primary-ll);border-left:4px solid var(--c-primary);
  padding:var(--sp-5) var(--sp-6);border-radius:0 var(--r-md) var(--r-md) 0;margin-bottom:var(--sp-8);
}
.prose h2{
  font-size:20px;font-weight:800;margin:var(--sp-8) 0 var(--sp-4);padding-left:13px;
  border-left:4px solid var(--c-primary);line-height:1.4;
}
.prose h2:first-child{margin-top:0}
.prose p{font-size:15.5px;line-height:1.95;color:var(--c-ink-2);margin-bottom:var(--sp-4)}
.detail-days{
  display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);
  margin:var(--sp-8) 0 0;padding:var(--sp-5) var(--sp-6);
  background:linear-gradient(120deg,var(--c-primary-ll),#fff);
  border:1px solid var(--c-primary-l);border-radius:var(--r-md);
}
.detail-days b{font-size:15px;font-weight:700}
.detail-days .dd-num{font-size:30px;font-weight:800;color:var(--c-orange);line-height:1}
.detail-days span{font-size:13.5px;color:var(--c-ink-3)}

.side-card{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);
  padding:var(--sp-6);box-shadow:var(--sh-1);margin-bottom:var(--sp-6)}
.side-card>b{display:block;font-size:16px;font-weight:800;margin-bottom:var(--sp-5);
  padding-left:11px;border-left:3px solid var(--c-primary);line-height:1.4}
.side-cta{background:var(--g-blue);color:#fff;border:0}
.side-cta>b{border-left-color:rgba(255,255,255,.6)}
.side-cta p{font-size:14px;line-height:1.8;color:rgba(255,255,255,.9);margin-bottom:var(--sp-5)}
.side-tel{font-size:26px;font-weight:800;letter-spacing:.01em;margin-bottom:var(--sp-2)}
.rel-list li+li{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px dashed var(--c-line)}
.rel-list a{display:block;font-size:14.5px;font-weight:600;line-height:1.65;transition:color .18s}
.rel-list a:hover{color:var(--c-primary)}
.rel-list span{display:block;font-size:12.5px;color:var(--c-ink-3);margin-top:5px}
.side-sticky{position:sticky;top:calc(var(--h-header) + 20px)}

/* 上下篇 */
.pager{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);margin-top:var(--sp-8)}
.pager a{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-md);
  padding:var(--sp-5);transition:.2s}
.pager .pv{background:linear-gradient(135deg,#f0f7ff 0%,#fff 100%);border-color:#d6e8ff}
.pager .nx{background:linear-gradient(135deg,#f0fff7 0%,#fff 100%);border-color:#d6f5e6}
.pager a:hover{border-color:var(--c-primary);box-shadow:var(--sh-2)}
.pager span{display:block;font-size:12.5px;color:var(--c-ink-3);margin-bottom:6px}
.pager b{font-size:14.5px;font-weight:600;line-height:1.6;display:block}
.pager .nx{text-align:right}

/* ---------- 15. 关于我们 ---------- */
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--sp-12);align-items:center}
.brand-word{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5)}
.bw{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);
  padding:var(--sp-6);text-align:center;transition:.22s}
.bw:hover{transform:translateY(-4px);box-shadow:var(--sh-3)}
.bw-c{
  width:64px;height:64px;margin:0 auto var(--sp-4);border-radius:var(--r-md);
  display:flex;align-items:center;justify-content:center;
  font-size:32px;font-weight:800;color:#fff;
}
.bw:nth-child(1) .bw-c{background:var(--g-blue)}
.bw:nth-child(2) .bw-c{background:var(--g-orange)}
.bw:nth-child(3) .bw-c{background:var(--g-green)}
.bw p{font-size:14px;color:var(--c-ink-2);line-height:1.8}

.vv-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-6)}
.vv{padding:var(--sp-8);border-radius:var(--r-lg);color:#fff;position:relative;overflow:hidden}
.vv::after{content:"";position:absolute;right:-30px;bottom:-30px;width:130px;height:130px;
  border-radius:50%;background:rgba(255,255,255,.13)}
.vv b{display:block;font-size:13px;font-weight:700;letter-spacing:.14em;opacity:.85;margin-bottom:10px}
.vv h3{font-size:21px;font-weight:800;line-height:1.5;margin-bottom:12px;position:relative;z-index:2}
.vv p{font-size:14.5px;line-height:1.85;opacity:.92;position:relative;z-index:2}
.vv--m{background:var(--g-blue)} .vv--v{background:var(--g-purple)}

.value-list{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--sp-4)}
.val{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);
  padding:var(--sp-6) var(--sp-4);text-align:center;transition:.22s}
.val:hover{transform:translateY(-4px);box-shadow:var(--sh-3)}
.val b{display:block;font-size:19px;font-weight:800;margin-bottom:8px}
.val span{font-size:13px;color:var(--c-ink-2);line-height:1.7}
.val:nth-child(1) b{color:var(--c-primary)} .val:nth-child(2) b{color:var(--c-cyan)}
.val:nth-child(3) b{color:var(--c-green)} .val:nth-child(4) b{color:var(--c-orange)}
.val:nth-child(5) b{color:var(--c-purple)}

.idea-list{display:flex;flex-direction:column;gap:var(--sp-5)}
.idea{display:flex;gap:var(--sp-5);background:#fff;border:1px solid var(--c-line);
  border-radius:var(--r-lg);padding:var(--sp-6)}
.idea .ico{margin-bottom:0}
.idea h3{font-size:18px;font-weight:800;margin-bottom:8px}
.idea p{font-size:14.5px;color:var(--c-ink-2);line-height:1.85}

/* 联系我们 */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-8);align-items:start}
.contact-list li{display:flex;gap:var(--sp-4);padding:var(--sp-5) 0;border-bottom:1px dashed var(--c-line)}
.contact-list li:last-child{border-bottom:0}
.contact-list .ico{width:44px;height:44px;font-size:19px;margin-bottom:0;flex:none}
.contact-list b{display:block;font-size:13px;color:var(--c-ink-3);font-weight:600;margin-bottom:3px}
.contact-list p{font-size:16.5px;font-weight:700;line-height:1.6;word-break:break-all}
.contact-list p.small{font-size:15px;font-weight:600;color:var(--c-ink-2)}
.contact-list a.tel-big{font-size:23px;font-weight:800;color:var(--c-primary)}
.contact-media{display:grid;gap:var(--sp-5)}
.media-box{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);
  padding:12px;box-shadow:var(--sh-1)}
.media-box img{width:100%;height:auto;object-fit:contain;display:block;border-radius:var(--r-sm)}
.media-box figcaption{text-align:center;font-size:13.5px;color:var(--c-ink-3);padding:10px 0 4px}
.qr-box{max-width:260px;margin:0 auto}

/* ---------- 16. 承诺 / CTA ---------- */
.promise{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-5)}
.pm{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);
  padding:var(--sp-6);text-align:center;transition:.22s}
.pm:hover{transform:translateY(-4px);box-shadow:var(--sh-3)}
.pm .ico{margin:0 auto var(--sp-4)}
.pm b{display:block;font-size:16.5px;font-weight:800;margin-bottom:7px}
.pm span{line-height:1.7}

.cta-band{position:relative;overflow:hidden;color:#fff;background:var(--g-brand)}
.cta-band::before{content:"";position:absolute;inset:0;opacity:.4;
  background:radial-gradient(560px 260px at 20% 100%,var(--c-hero-accent-soft),transparent 70%),
             radial-gradient(420px 220px at 85% 10%,rgba(255,255,255,.2),transparent 70%)}
.cta-in{position:relative;z-index:2;padding:var(--sp-16) 0;text-align:center}
.cta-in h2{font-size:32px;font-weight:800;line-height:1.4;margin-bottom:var(--sp-4)}
.cta-in p{font-size:16.5px;color:rgba(255,255,255,.9);max-width:660px;margin:0 auto var(--sp-8)}
.cta-btns{display:flex;flex-wrap:wrap;gap:var(--sp-4);justify-content:center}
/* 提升优先级，避免被 .cta-in p 覆盖 */
.cta-in .cta-note{margin-top:var(--sp-6);font-size:18px;color:rgba(255,255,255,.75)}

/* ---------- 17. 页脚 ---------- */
.site-footer{background:#14212e;color:rgba(255,255,255,.68);font-size:14.5px}
.ft-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:var(--sp-10);
  padding:var(--sp-16) 0 var(--sp-12)}
.ft-brand .logo-txt b{color:#fff}
.ft-brand .logo-txt span{color:rgba(255,255,255,.45)}
.ft-brand p{margin-top:var(--sp-5);line-height:1.9;font-size:14px}
.ft-col h4{color:#fff;font-size:16px;font-weight:700;margin-bottom:var(--sp-5)}
.ft-col li{margin-bottom:11px}
.ft-col a{transition:color .18s;font-size:14px}
.ft-col a:hover{color:#fff}
.ft-contact li{display:flex;gap:9px;margin-bottom:12px;line-height:1.75;font-size:14px}
.ft-contact li b{color:rgba(255,255,255,.5);font-weight:400;flex:none}
.ft-contact .ft-tel{font-size:24px;font-weight:800;color:#fff;letter-spacing:.01em;
  display:block;margin-bottom:var(--sp-3)}
.ft-bottom{border-top:1px solid rgba(255,255,255,.1);padding:var(--sp-6) 0;
  display:flex;flex-wrap:wrap;gap:var(--sp-3) var(--sp-6);
  align-items:center;justify-content:space-between;font-size:13.5px}
.ft-bottom a:hover{color:#fff}
.ft-links{display:flex;flex-wrap:wrap;gap:var(--sp-3) var(--sp-5)}

/* ---------- 18. 移动端底部悬浮条 ---------- */
.float-bar{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:90;
  background:rgba(255,255,255,.97);backdrop-filter:blur(10px);
  border-top:1px solid var(--c-line);box-shadow:0 -4px 16px rgba(27,39,51,.08);
  padding:9px 12px;gap:9px;
  padding-bottom:calc(9px + env(safe-area-inset-bottom,0px));
}
.float-bar a{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;
  padding:12px 8px;border-radius:var(--r-pill);font-size:15px;font-weight:700}
.float-bar .fb-line{background:var(--c-primary-l);color:var(--c-primary-d);flex:0 0 38%}
.float-bar .fb-main{background:var(--c-primary);color:#fff;box-shadow:var(--sh-blue)}

/* ---------- 19. 工具类 ---------- */
.mt-0{margin-top:0} .mt-4{margin-top:var(--sp-4)} .mt-6{margin-top:var(--sp-6)}
.mt-8{margin-top:var(--sp-8)} .mt-10{margin-top:var(--sp-10)} .mt-12{margin-top:var(--sp-12)}
.tc{text-align:center}
.lead{font-size:16.5px;line-height:1.95;color:var(--c-ink-2)}
.lead+.lead{margin-top:var(--sp-4)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0}
.no-scroll{overflow:hidden}

/* ---------- 20. 响应式 —— 1024px ---------- */
@media (max-width:1024px){
  :root{--sp-20:56px;--sp-16:48px}
  .sec-title{font-size:29px}
  .hero h1{font-size:37px}
  .hero-in{grid-template-columns:1fr;gap:var(--sp-10);padding:var(--sp-16) 18px var(--sp-10);border-left:1px solid rgba(255,255,255,.35);border-right:1px solid rgba(255,255,255,.35)}
  .hero-sub{max-width:none}
  .hero-card{max-width:560px;margin:0 auto;width:100%}
  .stat-bar{margin-top:var(--sp-6)}
  .nav-list>li>a,.nav-more>button{padding:9px 11px;font-size:15px}
  .g-4,.g-6{grid-template-columns:repeat(2,1fr)}
  .steps,.case-grid{grid-template-columns:repeat(2,1fr)}
  .carousel-slide{grid-template-columns:1fr}
  .cs-img{min-height:0}
  .cs-body{padding:var(--sp-8)}
  .detail{grid-template-columns:1fr;gap:var(--sp-8)}
  .side-sticky{position:static}
  .about-grid,.contact-grid{grid-template-columns:1fr;gap:var(--sp-8)}
  .value-list{grid-template-columns:repeat(3,1fr)}
  .promise{grid-template-columns:repeat(2,1fr)}
  .ft-top{grid-template-columns:1fr 1fr;gap:var(--sp-8)}
  .detail-main{padding:var(--sp-8)}
  .wz-progress .wp-line{width:28px}
  .wz-fields,.wz-desc,.wz-actions,.wz-note,.wz-hit{margin-left:0}
  .wz-step h3 .wz-no{display:none}
  .wz-step .wz-desc{margin:0 0 var(--sp-6)}
}

/* ---------- 21. 响应式 —— 768px ---------- */
@media (max-width:768px){
  :root{--sp-20:44px;--sp-16:38px;--sp-12:32px;--h-header:62px}
  body{font-size:15.5px}
  .wrap{padding:0 16px}
  .sec-title{font-size:25px}
  .sec-head{margin-bottom:var(--sp-8)}
  /* 导航切换为抽屉（移动端 Logo 自适应） */
  .nav,.hd-tel{display:none}
  .hd-toggle{display:flex}
  .hd-bar{gap:var(--sp-3);justify-content:space-between}
  .hd-cta .hd-wx{display:none}
  .logo img{height:38px}
  .logo-txt b{font-size:17px}
  .logo-txt span{font-size:10px}
  .hero h1{font-size:29px}
  .hero-sub{font-size:16px}
  .hero-tag{font-size:12.5px}
  .hero-in{padding:54px 16px 48px}
  .hero-btns .btn{flex:1;min-width:150px}
  .stat-bar{margin-top:var(--sp-6);border-radius:var(--r-lg)}
  .stat-bar ul{grid-template-columns:repeat(2,1fr)}
  .stat-bar li{border-right:0;border-bottom:1px solid var(--c-line-2);padding:var(--sp-5) var(--sp-3)}
  .stat-bar li:nth-child(odd){border-right:1px solid var(--c-line-2)}
  .stat-bar li:nth-last-child(-n+2){border-bottom:0}
  .stat-bar b{font-size:27px}
  .g-2,.g-3,.g-4,.g-6,.steps,.case-grid,.brand-word,.vv-grid,.value-list,.promise{
    grid-template-columns:1fr}
  .page-hero{padding:var(--sp-12) 0 var(--sp-10)}
  .page-hero h1{font-size:28px}
  .page-hero p{font-size:15.5px}
  .detail-main{padding:var(--sp-6)}
  .detail-main h1{font-size:23px}
  .prose h2{font-size:18px}
  .cta-in h2{font-size:25px}
  .cta-in p{font-size:15.5px}
  .cta-btns .btn{flex:1;min-width:160px}
  .idea{flex-direction:column;gap:var(--sp-4)}
  .filter-row{flex-direction:column;gap:10px}
  .filter-row>b{width:auto;padding-top:0}
  .ft-top{grid-template-columns:1fr;gap:var(--sp-8);padding:var(--sp-12) 0 var(--sp-8)}
  .ft-bottom{flex-direction:column;align-items:flex-start;text-align:left}
  .float-bar{display:flex}
  body{padding-bottom:72px}
  .pager{grid-template-columns:1fr}
  .pager .nx{text-align:left}
  /* 浮动按钮上移，避开底部条 */
  .fab-group{bottom:96px;right:12px}
  .fab{width:42px;height:42px}
  /* 轮播：图片在上、文字在下 */
  .carousel-slide{grid-template-columns:1fr}
  .cs-img{padding:0;min-height:200px}
  .cs-img img{width:100%;height:100%;object-fit:cover;object-position:center;max-height:none}
  .cs-body{padding:var(--sp-6)}
  .cs-body h3{font-size:18px}
  .carousel-btn{width:38px;height:38px}
  .carousel-dots{bottom:10px}
  /* 测评向导 */
  .wz-head{padding:var(--sp-6) var(--sp-5) 0}
  .wz-head h2{font-size:20px}
  .wz-progress{padding:var(--sp-5) var(--sp-5) 0;gap:0}
  .wz-progress .wp-label{font-size:11px}
  .wz-progress .wp-line{width:16px;margin:0 3px;margin-bottom:22px}
  .wz-progress .wp-dot{width:30px;height:30px;font-size:12px}
  .wz-body{padding:var(--sp-6) var(--sp-5)}
  .wz-step h3{font-size:18px}
  .wz-fields{gap:var(--sp-5)}
  .rz-plan-head{flex-wrap:wrap}
  .rz-plan-head span{margin-left:0}
  .opts label{font-size:14px;padding:8px 13px}
  /* 404 错误页 */
  .err-404 .e-code{font-size:104px}
  .err-404 .e-title{font-size:26px}
  .err-404 .e-desc{font-size:15px}
}

/* ---------- 22. 响应式 —— 420px ---------- */
@media (max-width:420px){
  :root{--sp-20:36px;--sp-16:30px}
  .sec-title{font-size:22px}
  .hero h1{font-size:25px}
  .hero-in{padding:46px 14px 44px}
  .hero-pts li{font-size:13px;padding:6px 11px}
  .hero-btns{flex-direction:column}
  .hero-btns .btn{width:100%}
  .btn{padding:12px 20px;font-size:15px}
  .btn-lg{padding:14px 24px;font-size:16px}
  .stat-bar ul{grid-template-columns:1fr}
  .stat-bar li{border-right:0!important;border-bottom:1px solid var(--c-line-2)}
  .stat-bar li:last-child{border-bottom:0}
  .page-hero h1{font-size:24px}
  .detail-main{padding:var(--sp-5)}
  .detail-main h1{font-size:20px}
  .cta-in h2{font-size:22px}
  .cta-btns{flex-direction:column}
  .cta-btns .btn{width:100%}
  .contact-list a.tel-big{font-size:20px}
  .val,.pm,.bw{padding:var(--sp-5)}
  /* 向导进度条：仅显示圆点 */
  .wz-progress .wp-label{display:none}
  .wz-progress .wp-line{width:10px;margin:0 2px;margin-bottom:20px}
  .drawer-head{padding:18px 16px}
  .drawer-head .dh-logo img{height:42px}
  .carousel-dots{display:none}
  /* 404 错误页 */
  .err-404 .e-code{font-size:78px}
  .err-404 .e-title{font-size:22px}
  .err-404 .e-desc{font-size:14.5px}
  .err-404 .e-btns{flex-direction:column}
  .err-404 .e-btns .btn{width:100%}
}

/* ---------- 22. 404 错误页 ---------- */
.err-404{text-align:center;padding:var(--sp-20) 0 var(--sp-16)}
.err-404 .e-code{
  font-size:128px;font-weight:900;line-height:1;letter-spacing:-.03em;margin-bottom:var(--sp-6);
  background:var(--g-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.err-404 .e-title{font-size:30px;font-weight:800;margin-bottom:var(--sp-4)}
.err-404 .e-desc{font-size:16px;color:var(--c-ink-2);line-height:1.9;max-width:560px;margin:0 auto var(--sp-6)}
.err-404 .e-count{font-size:15px;color:var(--c-ink-3);margin-bottom:var(--sp-8)}
.err-404 .e-count #e-seconds{color:var(--c-primary);font-weight:800;font-size:19px;font-variant-numeric:tabular-nums}
.err-404 .e-btns{display:flex;gap:var(--sp-4);justify-content:center;flex-wrap:wrap}

/* ---------- 23. 打印 ---------- */
@media print{
  .site-header,.site-footer,.float-bar,.cta-band,.drawer,.drawer-mask,.modal,.fab-group{display:none!important}
  body{padding-bottom:0}
  .detail{grid-template-columns:1fr}
  .reveal{opacity:1!important;transform:none!important}
}



/* ==========================================================================
   易升学教育官网 · yisxue.com 配色皮肤（自然深绿）
   仅覆盖 CSS 变量，与 style.css 设计系统无缝衔接
   ========================================================================== */
:root{
  --c-primary:#1e9e6a;
  --c-primary-d:#167f54;
  --c-primary-dd:#10603e;
  --c-primary-l:#e2f5eb;
  --c-primary-ll:#f1faf5;
  --c-hero-1:#167f54;
  --c-hero-2:#1e9e6a;
  --c-hero-3:#3fc08c;
  --c-hero-accent:#12b5c9;
  --c-hero-accent-soft:#12b5c94d;
  --sh-blue:0 6px 18px rgba(30,158,106,.22);
}
