/* ===========================================================
   企业 GEO 内容工厂 · 实战培训课程  —  样式表
   深浅两套由 <html data-theme> 控制，默认浅色
   =========================================================== */

:root{
  --ink:#0E1B2C;
  --ink-2:#22344C;
  --muted:#5A6A80;
  --paper:#FBFCFE;
  --card:#FFFFFF;
  --line:#E4E9F1;
  --line-2:#D3DBE7;

  --blue:#1F5FAF;
  --blue-soft:#EAF2FC;
  --teal:#0E7C6B;
  --teal-soft:#E6F4F0;
  --clay:#B4531F;
  --clay-soft:#FBEDE4;
  --gold:#A8791F;

  --shadow:0 1px 2px rgba(14,27,44,.04), 0 10px 30px -12px rgba(14,27,44,.12);
  --shadow-lg:0 2px 6px rgba(14,27,44,.06), 0 24px 60px -20px rgba(14,27,44,.22);

  --r-sm:8px;
  --r:14px;
  --r-lg:20px;
  --maxw:1160px;
  --nav-h:64px;

  --ff-sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC","Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ff-num:"DIN Alternate","Bahnschrift","Helvetica Neue",Arial,sans-serif;
}

html[data-theme="dark"]{
  --ink:#EAF0F8;
  --ink-2:#C3D0E0;
  --muted:#8B9BAF;
  --paper:#0B131F;
  --card:#111C2B;
  --line:#1E2C3F;
  --line-2:#27394F;

  --blue:#5B9BE8;
  --blue-soft:#152538;
  --teal:#3FBFA6;
  --teal-soft:#102A28;
  --clay:#E0894F;
  --clay-soft:#2A1C13;
  --gold:#D2A44A;

  --shadow:0 1px 2px rgba(0,0,0,.4), 0 10px 30px -12px rgba(0,0,0,.6);
  --shadow-lg:0 2px 6px rgba(0,0,0,.4), 0 24px 60px -20px rgba(0,0,0,.7);
}

*,*::before,*::after{box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{
  margin:0;
  overflow-x:hidden;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--ff-sans);
  font-size:16px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;}

.wrap{
  width:100%;
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 28px;
}

/* ---------------- 顶部进度条 ---------------- */
.progress{
  position:fixed; top:0; left:0; height:3px; width:0;
  background:linear-gradient(90deg,var(--blue),var(--teal) 55%,var(--clay));
  z-index:120;
  transition:width .1s linear;
}

/* ---------------- 导航 ---------------- */
.nav{
  position:sticky; top:0; z-index:100;
  backdrop-filter:saturate(160%) blur(14px);
  -webkit-backdrop-filter:saturate(160%) blur(14px);
  background:color-mix(in srgb, var(--paper) 82%, transparent);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  height:var(--nav-h);
  display:flex; align-items:center; gap:26px;
}
.brand{
  display:flex; align-items:center; gap:10px;
  font-weight:700; letter-spacing:.3px; white-space:nowrap;
}
.brand-mark{
  width:26px;height:26px;border-radius:7px;
  background:linear-gradient(140deg,var(--blue),var(--teal));
  position:relative;flex:0 0 auto;
}
.brand-mark::after{
  content:"";position:absolute;inset:7px 7px auto 7px;height:3px;
  background:rgba(255,255,255,.92);border-radius:2px;
  box-shadow:0 6px 0 rgba(255,255,255,.55),0 12px 0 rgba(255,255,255,.28);
}
.brand small{
  display:block;font-weight:500;font-size:11px;color:var(--muted);
  letter-spacing:.6px;line-height:1.2;
}
.nav-links{
  display:flex; gap:2px; margin-left:auto; overflow-x:auto;
  scrollbar-width:none;
}
.nav-links::-webkit-scrollbar{display:none;}
.nav-links a{
  font-size:13.5px; padding:7px 11px; border-radius:999px;
  color:var(--muted); white-space:nowrap;
  transition:background .18s,color .18s;
}
.nav-links a:hover{color:var(--ink);background:var(--blue-soft);}
.nav-links a.active{color:var(--blue);background:var(--blue-soft);font-weight:600;}
.nav-tools{display:flex;align-items:center;gap:8px;}
.theme-btn{
  width:34px;height:34px;border-radius:50%;
  border:1px solid var(--line-2); color:var(--muted);
  display:grid;place-items:center;transition:.18s;
}
.theme-btn:hover{color:var(--blue);border-color:var(--blue);}

/* ---------------- 首屏 ---------------- */
.hero{
  position:relative; overflow:hidden;
  padding:76px 0 64px;
  background:
    radial-gradient(1100px 480px at 82% -8%, rgba(31,95,175,.13), transparent 62%),
    radial-gradient(760px 420px at 6% 8%, rgba(14,124,107,.10), transparent 60%);
}
.hero::after{
  content:""; position:absolute; inset:auto 0 0 0; height:1px;
  background:linear-gradient(90deg,transparent,var(--line),transparent);
}
.hero-grid{
  display:grid; grid-template-columns:1.35fr .95fr; gap:56px; align-items:center;
}
.eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-size:12px; letter-spacing:2.4px; font-weight:600;
  color:var(--blue); text-transform:uppercase;
  padding:6px 12px; border-radius:999px;
  background:var(--blue-soft); border:1px solid color-mix(in srgb,var(--blue) 18%,transparent);
}
.hero h1{
  font-size:clamp(30px,4.2vw,50px);
  line-height:1.18; letter-spacing:-.6px;
  margin:20px 0 0; font-weight:800;
}
.hero h1 em{
  font-style:normal;
  background:linear-gradient(100deg,var(--blue),var(--teal));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

/* 课程名（三行突出结构） */
.course-name{margin:24px 0 0; font-weight:900; line-height:1.15;}
.course-name .cn-brand{
  display:inline-block; padding:9px 22px 11px; margin-bottom:16px;
  background:linear-gradient(135deg,var(--blue) 8%,var(--teal) 92%);
  color:#fff; font-size:clamp(24px,2.8vw,34px); font-weight:900;
  letter-spacing:6px; text-indent:6px; border-radius:14px;
  box-shadow:0 14px 32px -12px rgba(31,95,175,.55), inset 0 1px 0 rgba(255,255,255,.28);
}
.course-name .cn-main{
  display:block; width:fit-content; position:relative;
  font-size:clamp(32px,4.8vw,56px); letter-spacing:-.5px; line-height:1.22;
  background:linear-gradient(100deg,var(--blue) 20%,var(--teal) 85%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.course-name .cn-main::after{
  content:""; position:absolute; left:-2px; right:-2px; bottom:4px; height:14px;
  background:linear-gradient(90deg, color-mix(in srgb,var(--blue) 15%,transparent), color-mix(in srgb,var(--teal) 18%,transparent));
  border-radius:7px; z-index:-1;
  transform:scaleX(0); transform-origin:left center;
  animation:cnSweep .8s .4s cubic-bezier(.2,.7,.3,1) forwards;
}
@keyframes cnSweep{to{transform:scaleX(1);}}
.course-name .cn-main .plus{font-style:normal; font-weight:400; margin:0 3px; opacity:.75;}
.course-name .cn-sub{
  display:block; margin-top:8px;
  font-size:clamp(26px,3.8vw,44px); font-weight:800; color:var(--ink); letter-spacing:2px;
}
@media (prefers-reduced-motion:reduce){
  .course-name .cn-main::after{animation:none; transform:scaleX(1);}
}
.hero-lead{
  margin:18px 0 0; font-size:16.5px; color:var(--muted); max-width:38em;
}
.hero-lead strong{color:var(--ink);font-weight:700;}
.hero-cta{display:flex; flex-wrap:wrap; gap:12px; margin-top:30px;}
.btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:12px 22px; border-radius:999px; font-size:14.5px; font-weight:600;
  transition:transform .18s, box-shadow .18s, background .18s, color .18s;
}
.btn-primary{
  background:var(--ink); color:var(--paper); box-shadow:var(--shadow);
}
html[data-theme="dark"] .btn-primary{background:var(--blue);color:#08111c;}
.btn-primary:hover{transform:translateY(-2px); box-shadow:var(--shadow-lg);}
.btn-ghost{border:1px solid var(--line-2); color:var(--ink);}
.btn-ghost:hover{border-color:var(--blue); color:var(--blue);}

.hero-stats{
  display:grid; grid-template-columns:repeat(2,1fr); gap:14px;
}
.stat{
  background:var(--card); border:1px solid var(--line); border-radius:var(--r);
  padding:20px 18px; box-shadow:var(--shadow);
}
.stat b{
  display:block; font-family:var(--ff-num); font-size:34px; line-height:1.1;
  letter-spacing:-1px; font-weight:700; color:var(--ink);
}
.stat b i{font-style:normal;font-size:15px;color:var(--muted);margin-left:3px;letter-spacing:0;}
.stat span{display:block; font-size:12.5px; color:var(--muted); margin-top:6px; letter-spacing:.3px;}
.stat.accent b{color:var(--blue);}

/* ---------------- 通用区块 ---------------- */
.section{padding:84px 0;}
.section,.hero{scroll-margin-top:80px;}
.section.tight{padding:64px 0;}
.sec-head{max-width:44em; margin-bottom:40px;}
.sec-idx{
  font-family:var(--ff-num); font-size:12px; letter-spacing:3px;
  color:var(--blue); font-weight:700;
}
.sec-head h2{
  font-size:clamp(23px,2.6vw,32px); line-height:1.3; letter-spacing:-.3px;
  margin:10px 0 0; font-weight:800;
}
.sec-head p{margin:14px 0 0; color:var(--muted); font-size:15.5px;}
.rule{height:1px;background:var(--line);border:0;margin:0;}

/* ---------------- 主线四步 ---------------- */
.flow{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
  border:1px solid var(--line); border-radius:var(--r-lg);
  background:var(--card); overflow:hidden; box-shadow:var(--shadow);
}
.flow-step{
  padding:30px 26px 28px; position:relative;
  border-right:1px solid var(--line);
}
.flow-step:last-child{border-right:0;}
.flow-step::before{
  content:attr(data-i);
  position:absolute; top:18px; right:22px;
  font-family:var(--ff-num); font-size:44px; font-weight:700;
  color:var(--ink); opacity:.06; line-height:1;
}
.flow-step h3{margin:0; font-size:18px; font-weight:700; letter-spacing:.2px;}
.flow-step .step-tag{
  display:inline-block; margin-top:10px; font-size:11.5px; letter-spacing:.8px;
  color:var(--blue); background:var(--blue-soft); padding:3px 9px; border-radius:999px;
}
.flow-step p{margin:12px 0 0; font-size:13.5px; color:var(--muted); line-height:1.7;}
.flow-step:nth-child(2) .step-tag{color:var(--teal);background:var(--teal-soft);}
.flow-step:nth-child(3) .step-tag{color:var(--clay);background:var(--clay-soft);}
.flow-step:nth-child(4) .step-tag{color:var(--gold);background:color-mix(in srgb,var(--gold) 12%,transparent);}

/* ---------------- 能力地图六层 ---------------- */
.ladder{display:flex; flex-direction:column; gap:10px;}
.rung{
  display:grid; grid-template-columns:132px 96px 1fr; align-items:center; gap:20px;
  padding:16px 20px; border:1px solid var(--line); border-radius:var(--r);
  background:var(--card); transition:border-color .2s, transform .2s, box-shadow .2s;
}
.rung:hover{border-color:var(--line-2); transform:translateX(3px); box-shadow:var(--shadow);}
.rung .r-name{font-weight:700; font-size:15.5px;}
.rung .r-mod{
  font-family:var(--ff-num); font-size:12.5px; letter-spacing:.5px;
  color:var(--muted); border:1px solid var(--line-2); border-radius:999px;
  padding:3px 0; text-align:center; white-space:nowrap;
}
.rung .r-desc{font-size:13.5px; color:var(--muted);}
.rung.hot{border-left:3px solid var(--clay); background:color-mix(in srgb,var(--clay-soft) 55%,var(--card));}

/* ---------------- 三阶段模块 ---------------- */
.stage{margin-top:44px;}
.stage:first-of-type{margin-top:0;}
.stage-head{
  display:flex; align-items:flex-end; justify-content:space-between; gap:20px;
  padding-bottom:16px; border-bottom:2px solid var(--line-2); margin-bottom:26px;
  flex-wrap:wrap;
}
.stage-head .sh-l{display:flex; align-items:center; gap:14px;}
.stage-badge{
  font-family:var(--ff-num); font-size:13px; font-weight:700; letter-spacing:1px;
  color:#fff; padding:5px 12px; border-radius:999px; white-space:nowrap;
}
.stage-1 .stage-badge{background:var(--blue);}
.stage-2 .stage-badge{background:var(--teal);}
.stage-3 .stage-badge{background:var(--clay);}
.stage-head h3{margin:0; font-size:20px; font-weight:800; letter-spacing:-.2px;}
.stage-head .sh-meta{font-size:13px; color:var(--muted); font-family:var(--ff-num); letter-spacing:.5px;}

.mods{display:grid; grid-template-columns:repeat(3,1fr); gap:14px;}
.mod{
  position:relative; display:flex; flex-direction:column;
  border:1px solid var(--line); border-radius:var(--r);
  background:var(--card); padding:20px 20px 18px;
  transition:transform .2s, box-shadow .2s, border-color .2s;
}
.mod:hover{transform:translateY(-3px); box-shadow:var(--shadow-lg); border-color:transparent;}
.mod-top{display:flex; align-items:center; gap:10px; margin-bottom:10px;}
.mod-no{
  font-family:var(--ff-num); font-size:12px; font-weight:700; letter-spacing:.6px;
  min-width:34px; height:22px; display:grid; place-items:center;
  border-radius:6px; color:#fff;
}
.stage-1 .mod-no{background:var(--blue);}
.stage-2 .mod-no{background:var(--teal);}
.stage-3 .mod-no{background:var(--clay);}
.mod-cap{font-size:11.5px; color:var(--muted); letter-spacing:.5px;}
.mod h4{margin:0; font-size:15.5px; font-weight:700; line-height:1.45; letter-spacing:.1px;}
.mod p{margin:8px 0 0; font-size:13px; color:var(--muted); line-height:1.65;}
.mod .out{
  margin-top:auto; padding-top:12px; font-size:12px; color:var(--ink-2);
  display:flex; gap:6px; align-items:flex-start;
  border-top:1px dashed var(--line-2); margin-top:14px;
}
.mod .out b{font-weight:700; color:var(--blue); flex:0 0 auto; font-size:11.5px; letter-spacing:.5px;}
.stage-2 .mod .out b{color:var(--teal);}
.stage-3 .mod .out b{color:var(--clay);}

/* ---------------- 9 天日程 ---------------- */
.sched{
  border:1px solid var(--line); border-radius:var(--r-lg); overflow:hidden;
  background:var(--card); box-shadow:var(--shadow);
}
.sched-head{
  display:grid; grid-template-columns:112px 1fr 1fr; gap:0;
  background:color-mix(in srgb,var(--blue-soft) 70%,var(--card));
  border-bottom:1px solid var(--line);
  font-size:12px; letter-spacing:1.2px; color:var(--muted); font-weight:600;
}
.sched-head > div{padding:13px 20px;}
.sched-row{
  display:grid; grid-template-columns:112px 1fr 1fr;
  border-bottom:1px solid var(--line);
  transition:background .18s;
}
.sched-row:last-child{border-bottom:0;}
.sched-row:hover{background:color-mix(in srgb,var(--blue-soft) 40%,transparent);}
.sched-day{
  padding:16px 20px; font-family:var(--ff-num); font-weight:700; font-size:13.5px;
  letter-spacing:.5px; border-right:1px solid var(--line); position:relative;
}
.sched-day span{display:block; font-size:11px; color:var(--muted); font-weight:500; letter-spacing:.3px; margin-top:2px;}
.sched-day::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:3px;
}
.sched-row[data-s="1"] .sched-day::before{background:var(--blue);}
.sched-row[data-s="2"] .sched-day::before{background:var(--teal);}
.sched-row[data-s="3"] .sched-day::before{background:var(--clay);}
.sched-cell{
  padding:16px 20px; font-size:13.5px; line-height:1.65;
  border-right:1px solid var(--line);
}
.sched-cell:last-child{border-right:0;}
.sched-cell b{font-weight:700;}
.sched-cell .tag{
  display:inline-block; font-size:11px; padding:1px 7px; border-radius:5px;
  margin-right:5px; font-family:var(--ff-num); letter-spacing:.4px;
  background:var(--blue-soft); color:var(--blue); font-weight:600;
}
.sched-row[data-s="2"] .sched-cell .tag{background:var(--teal-soft); color:var(--teal);}
.sched-row[data-s="3"] .sched-cell .tag{background:var(--clay-soft); color:var(--clay);}
.sched-note{
  padding:14px 20px; font-size:12.5px; color:var(--muted);
  background:color-mix(in srgb,var(--blue-soft) 45%,var(--card));
  border-top:1px solid var(--line);
}

/* ---------------- 信息修复 ---------------- */
.repair-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:6px;}
.q{
  border:1px solid var(--line); border-radius:var(--r); background:var(--card);
  padding:20px 18px; position:relative; overflow:hidden;
}
.q::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;}
.q.yes::before{background:var(--teal);}
.q.no::before{background:#C0392B;}
.q.mid::before{background:var(--gold);}
.q .q-t{font-size:11px; letter-spacing:1.2px; font-weight:700;}
.q.yes .q-t{color:var(--teal);}
.q.no .q-t{color:#C0392B;}
.q.mid .q-t{color:var(--gold);}
.q h5{margin:8px 0 0; font-size:15px; font-weight:700;}
.q p{margin:8px 0 0; font-size:12.5px; color:var(--muted); line-height:1.65;}
.q .q-tip{
  margin-top:12px; font-size:11.5px; color:var(--ink-2);
  border-top:1px dashed var(--line-2); padding-top:10px;
}
.sop{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:34px;
  border:1px solid var(--line); border-radius:var(--r); overflow:hidden; background:var(--card);
}
.sop .s:nth-child(3n){border-right:0;}
.sop .s:nth-child(-n+3){border-bottom:1px solid var(--line);}
.sop .s{
  padding:20px 16px; border-right:1px solid var(--line); position:relative;
}
.sop .s:last-child{border-right:0;}
.sop .s b{
  display:block; font-family:var(--ff-num); font-size:11px; letter-spacing:1.5px;
  color:var(--clay); margin-bottom:8px;
}
.sop .s h6{margin:0; font-size:14px; font-weight:700;}
.sop .s p{margin:6px 0 0; font-size:12px; color:var(--muted); line-height:1.6;}

.plat-strip{
  display:flex; flex-wrap:wrap; gap:8px; margin-top:26px;
}
.plat-strip span{
  font-size:12.5px; padding:6px 13px; border-radius:999px;
  border:1px solid var(--line-2); color:var(--ink-2); background:var(--card);
}

/* ---------------- 交付物 ---------------- */
.deliver{display:grid; grid-template-columns:repeat(4,1fr); gap:10px;}
.d-item{
  display:flex; gap:12px; align-items:flex-start;
  padding:14px 16px; border:1px solid var(--line); border-radius:10px;
  background:var(--card); font-size:13px; line-height:1.55;
  transition:border-color .18s, background .18s;
}
.d-item:hover{border-color:var(--blue); background:var(--blue-soft);}
.d-item i{
  font-style:normal; font-family:var(--ff-num); font-size:11px; font-weight:700;
  color:var(--muted); min-width:16px; padding-top:2px;
}

/* ---------------- 考核 ---------------- */
.assess{border:1px solid var(--line); border-radius:var(--r-lg); background:var(--card); overflow:hidden;}
.a-row{display:grid; grid-template-columns:150px 1fr 92px; align-items:center; gap:18px; padding:16px 22px; border-bottom:1px solid var(--line);}
.a-row:last-child{border-bottom:0;}
.a-row .a-name{font-size:14px; font-weight:600;}
.a-track{height:8px; border-radius:99px; background:var(--blue-soft); overflow:hidden;}
.a-track i{display:block; height:100%; border-radius:99px; background:linear-gradient(90deg,var(--blue),var(--teal)); width:0; transition:width 1s cubic-bezier(.2,.7,.3,1);}
.a-row .a-val{font-family:var(--ff-num); font-size:15px; font-weight:700; text-align:right; color:var(--blue);}
.a-foot{padding:14px 22px; font-size:12.5px; color:var(--muted); border-top:1px solid var(--line); background:color-mix(in srgb,var(--blue-soft) 45%,var(--card));}

/* ---------------- 报价 ---------------- */
.price-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:14px; align-items:stretch;}
.p-card{
  display:flex; flex-direction:column;
  border:1px solid var(--line); border-radius:var(--r-lg); background:var(--card);
  padding:24px 22px; position:relative; transition:transform .2s, box-shadow .2s;
}
.p-card:hover{transform:translateY(-3px); box-shadow:var(--shadow-lg);}
.p-card.pick{
  border-color:var(--blue); box-shadow:0 0 0 3px var(--blue-soft), var(--shadow);
}
.p-badge{
  position:absolute; top:-11px; left:22px; font-size:11px; letter-spacing:1px; font-weight:700;
  color:#fff; background:var(--blue); padding:3px 10px; border-radius:999px;
}
.p-name{font-size:14px; font-weight:700; color:var(--ink);}
.p-price{
  font-family:var(--ff-num); font-size:32px; font-weight:700; letter-spacing:-1px;
  margin:14px 0 2px; line-height:1.05;
}
.p-price small{font-size:13px; font-weight:500; color:var(--muted); letter-spacing:0; margin-left:4px;}
.p-unit{font-size:11.5px; color:var(--muted); letter-spacing:.5px;}
.p-desc{margin:16px 0 0; font-size:12.5px; color:var(--muted); line-height:1.7; flex:1;}
.p-list{margin:14px 0 0; padding:0; list-style:none; font-size:12.5px; color:var(--ink-2);}
.p-list li{position:relative; padding-left:16px; margin-top:6px; line-height:1.55;}
.p-list li::before{content:""; position:absolute; left:0; top:7px; width:6px; height:6px; border-radius:50%; background:var(--teal);}
.p-card.pick .p-list li::before{background:var(--blue);}

/* ---------------- FAQ ---------------- */
.faq{border-top:1px solid var(--line); display:block;}
.faq details{border-bottom:1px solid var(--line); padding:0; display:block;}
.faq summary{
  display:block; list-style:none; cursor:pointer;
  padding:14px 44px 14px 0; position:relative; line-height:1.55;
  font-size:15px; font-weight:600; letter-spacing:.1px;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::marker{content:"";}
.faq summary::after{
  content:""; position:absolute; right:8px; top:50%; margin-top:-7px;
  width:8px; height:8px;
  border-right:1.6px solid var(--muted); border-bottom:1.6px solid var(--muted);
  transform:rotate(45deg); transition:transform .22s, margin-top .22s;
}
.faq details[open] summary::after{transform:rotate(-135deg); margin-top:-2px;}
.faq details p{margin:0 0 20px; font-size:14px; color:var(--muted); max-width:60em;}

/* ---------------- 页脚 ---------------- */
.foot{
  border-top:1px solid var(--line); padding:44px 0 56px;
  background:color-mix(in srgb,var(--blue-soft) 30%,var(--paper));
}
.foot-grid{display:flex; justify-content:space-between; gap:30px; flex-wrap:wrap; align-items:flex-start;}
.foot h6{margin:0 0 8px; font-size:14px; font-weight:700;}
.foot p{margin:0; font-size:12.5px; color:var(--muted); line-height:1.8;}
.foot .meta{font-family:var(--ff-num); font-size:12px; letter-spacing:.5px; color:var(--muted);}

.foot-bar{
  margin-top:36px; padding-top:18px; border-top:1px solid var(--line-2);
  display:flex; justify-content:space-between; align-items:baseline;
  gap:8px 26px; flex-wrap:wrap;
}
.foot-bar p{
  margin:0; font-size:12px; line-height:1.7; color:var(--muted);
  letter-spacing:.2px; font-variant-numeric:tabular-nums;
}
.foot-bar .sep{display:inline-block; margin:0 9px; color:var(--muted); opacity:.45;}

/* ---------------- 外贸广告位 ---------------- */
.ad-sec{padding-top:0;}
.ad-box{
  position:relative; overflow:hidden;
  border-radius:var(--r-lg); padding:52px 56px;
  background:
    radial-gradient(720px 320px at 88% -12%, rgba(216,164,74,.20), transparent 62%),
    radial-gradient(620px 340px at -6% 108%, rgba(14,124,107,.24), transparent 60%),
    linear-gradient(150deg,#0E2238 0%,#12283F 58%,#0C2B2A 100%);
  color:#EAF0F8;
  box-shadow:var(--shadow-lg);
  border:1px solid rgba(216,164,74,.28);
}
.ad-box::before{
  content:"推广"; position:absolute; top:14px; right:16px;
  font-size:11px; letter-spacing:3px; color:rgba(234,240,248,.42);
  border:1px solid rgba(234,240,248,.22); border-radius:999px; padding:3px 10px 3px 13px;
}
.ad-badge{
  display:inline-block; margin-bottom:18px;
  font-size:12.5px; font-weight:700; letter-spacing:2.2px;
  color:#EAD08E; background:rgba(216,164,74,.14);
  border:1px solid rgba(216,164,74,.42);
  padding:6px 14px; border-radius:999px;
}
.ad-title{
  margin:0 0 14px; font-size:clamp(21px,2.6vw,30px);
  font-weight:900; line-height:1.42; color:#F4F7FB; letter-spacing:.4px;
}
.ad-title em{
  font-style:normal;
  background:linear-gradient(96deg,#E8C877,#C99F3F);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.ad-lead{
  margin:0 0 26px; max-width:46em;
  font-size:15px; line-height:1.85; color:rgba(234,240,248,.78);
}
.ad-lead strong{color:#EAD08E; font-weight:700;}
.ad-points{
  display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:28px;
}
.ad-pt{
  border:1px solid rgba(234,240,248,.14); border-radius:var(--r);
  background:rgba(255,255,255,.045); padding:16px 18px;
}
.ad-pt b{
  display:block; margin-bottom:6px; font-size:14.5px; font-weight:800; color:#EAD08E; letter-spacing:1px;
}
.ad-pt span{font-size:13.5px; line-height:1.7; color:rgba(234,240,248,.72);}
.ad-cta{display:flex; align-items:center; gap:18px; flex-wrap:wrap;}
.ad-cta .btn-primary{
  background:linear-gradient(135deg,#E8C877,#C99F3F);
  color:#12283F; border:0; font-weight:800;
}
.ad-cta .btn-primary:hover{transform:translateY(-2px); box-shadow:0 12px 26px -10px rgba(216,164,74,.55);}
.ad-note{font-size:13px; color:rgba(234,240,248,.55);}
@media (max-width:820px){
  .ad-box{padding:34px 22px;}
  .ad-points{grid-template-columns:1fr;}
}
@media (max-width:760px){
  .foot-bar{flex-direction:column; gap:6px; align-items:flex-start;}
  .foot-bar .sep{margin:0 8px;}
}

/* ---------------- 出场动画 ---------------- */
.reveal{opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s cubic-bezier(.2,.7,.3,1);}
.reveal.in{opacity:1; transform:none;}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
  html{scroll-behavior:auto;}
}

/* ---------------- 响应式 ---------------- */
@media (max-width:1080px){
  .hero-grid{grid-template-columns:1fr; gap:36px;}
  .mods{grid-template-columns:repeat(2,1fr);}
  .repair-grid{grid-template-columns:repeat(2,1fr);}
  .price-grid{grid-template-columns:repeat(2,1fr);}
  .deliver{grid-template-columns:repeat(2,1fr);}
  .flow{grid-template-columns:repeat(2,1fr);}
  .flow-step:nth-child(2){border-right:0;}
  .flow-step:nth-child(-n+2){border-bottom:1px solid var(--line);}
}
@media (max-width:820px){
  .nav-links{display:none;}
  .section{padding:60px 0;}
  .wrap{padding:0 20px;}
  .rung{grid-template-columns:1fr auto; gap:8px 14px;}
  .rung .r-desc{grid-column:1 / -1;}
  .sched-head{display:none;}
  .sched-row{grid-template-columns:1fr;}
  .sched-day{border-right:0; border-bottom:1px solid var(--line);}
  .sched-cell{border-right:0; padding-top:12px;}
  .sched-cell+.sched-cell{border-top:1px dashed var(--line);}
  .a-row{grid-template-columns:1fr 70px; gap:10px;}
  .a-row .a-track{grid-column:1 / -1; order:3;}
}
@media (max-width:620px){
  .mods,.repair-grid,.price-grid,.deliver,.flow,.sop{grid-template-columns:1fr;}
  .sop .s{border-right:0; border-bottom:1px solid var(--line);}
  .hero{padding:52px 0 44px;}
  .hero-stats{grid-template-columns:1fr 1fr;}
  .stat b{font-size:27px;}
}
