@font-face { font-family: "Star Plan Sans"; src: url("/assets/fonts/subsets/star-plan-sans.woff2?v=20261114c") format("woff2"); font-style: normal; font-display: swap; }
@font-face { font-family: "Star Plan Oblique"; src: url("/assets/fonts/subsets/star-plan-oblique.woff2?v=20261114b") format("woff2"); font-style: oblique; font-display: swap; }
.star-plan {
  --brand:#38A169;
  --brand-hi:#7FE7C4;
  --grad:linear-gradient(135deg,#38A169 0%,#7FE7C4 100%);
  --dark-a:#0C1512;
  --dark-b:#10181A;
  --dark-c:#1A2622;
  --light-1:#F7F8F7;
  --light-2:#FFFFFF;
  --light-3:#F1F5F1;
  --ink:#1A2622;
  --ink-2:#5A645F;
  --dk-fg:#E8EDEA;
  --dk-fg-2:#96A39C;
  --hair-l:#E3E7E3;
  --hair-d:rgba(255,255,255,.10);
  --cn:"Star Plan Sans","PingFang SC","Microsoft YaHei",sans-serif;
  --display:"Star Plan Oblique",var(--cn);
  --num:var(--display);
  --mono:"Spline Sans Mono","JetBrains Mono",ui-monospace,"Alibaba PuHuiTi 3","Source Han Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  --shadow-l:0 10px 30px rgba(26,38,34,.07);
  --shadow-d:0 14px 34px rgba(0,0,0,.28);
}
.star-plan * {margin:0;padding:0;box-sizing:border-box;}
.star-plan {
  font-family:var(--cn);
  font-weight:400;
  color:var(--ink);
  background:var(--dark-a);
  line-height:1.8;
  -webkit-font-smoothing:antialiased;

}
.star-plan img {display:block;max-width:100%;}
.star-plan a {text-decoration:none;color:inherit;}
.star-plan ol, .star-plan ul {list-style:none;}
.star-plan .wrap {max-width:1120px;margin:0 auto;padding:0 32px;}
.star-plan section {position:relative;}
/* ---------- 通用组件 ---------- */
.star-plan .eyebrow {
  font-family:var(--mono);
  font-size:12px;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--brand);
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:18px;
}
.star-plan .eyebrow::before {content:"";width:26px;height:2px;background:var(--grad);border-radius:1px;}
.star-plan .on-dark .eyebrow {color:var(--brand-hi);}
.star-plan h2.sec-title {
  font-family:var(--display);
  font-weight:900;
  font-size:clamp(30px,3.6vw,44px);
  line-height:1.28;
  letter-spacing:-.015em;
}
.star-plan .on-dark h2.sec-title {color:var(--dk-fg);}
.star-plan .sec-sub {
  margin-top:14px;
  font-size:16px;
  color:var(--ink-2);
  max-width:640px;
}
.star-plan .on-dark .sec-sub {color:var(--dk-fg-2);}
.star-plan .grad-text {
  background:var(--grad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.star-plan .btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  height:52px;
  padding:0 30px;
  border-radius:12px;
  font-family:var(--cn);
  font-weight:700;
  font-size:16px;
  letter-spacing:.02em;
  cursor:pointer;
  border:1px solid transparent;
  transition:filter .2s ease,transform .2s ease,border-color .2s ease,background-color .2s ease,color .2s ease;
}
.star-plan .btn-solid {background:var(--grad);color:#07130D;box-shadow:0 10px 26px rgba(56,161,105,.28);}
.star-plan .btn-solid:hover {filter:brightness(1.09);transform:translateY(-2px);}
.star-plan .btn-ghost {border-color:rgba(255,255,255,.34);color:var(--dk-fg);background:transparent;}
.star-plan .btn-ghost:hover {border-color:var(--brand-hi);color:var(--brand-hi);transform:translateY(-2px);}
.star-plan .card {
  border-radius:16px;
  border:1px solid var(--hair-l);
  background:var(--light-2);
  box-shadow:var(--shadow-l);
  transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease;
}
.star-plan .card:hover {border-color:var(--brand);transform:translateY(-4px);box-shadow:0 16px 36px rgba(26,38,34,.10);}
.star-plan .card:focus-visible {outline:2px solid var(--brand);outline-offset:3px;}
.star-plan .on-dark .card {
  background:rgba(255,255,255,.03);
  border-color:var(--hair-d);
  box-shadow:var(--shadow-d);
}
.star-plan .on-dark .card:hover {border-color:var(--brand);transform:translateY(-4px);}
.star-plan .on-dark .card:focus-visible {outline:2px solid var(--brand-hi);outline-offset:3px;}
/* 深色区星点 + 弧轨道 */
.star-plan .stars::before {
  content:"";
  position:absolute;inset:0;
  background-image:
    radial-gradient(circle,rgba(255,255,255,.07) 1px,transparent 1.6px),
    radial-gradient(circle,rgba(127,231,196,.10) 1px,transparent 1.6px);
  background-size:180px 160px,260px 220px;
  background-position:20px 30px,120px 90px;
  pointer-events:none;
}
.star-plan .orbit::after {
  content:"";
  position:absolute;
  width:860px;height:860px;
  border:1px solid rgba(127,231,196,.10);
  border-radius:50%;
  pointer-events:none;
}
/* ---------- 2 首屏 Hero ---------- */
.star-plan .hero {
  background:var(--dark-a);
  color:var(--dk-fg);
  overflow:hidden;
}
.star-plan .hero-bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, #0c151285 0%, #0c15129c 55%, #0c1512d9 100%),
    var(--star-scene) right top / cover no-repeat;
  pointer-events: none;
}
.star-plan .hero {
  --star-scene: url("/assets/images/training/star-plan-star-background.jpg");
}

.star-plan .hero-in {
  position:relative;
  max-width:1240px;margin:0 auto;
  padding:96px 32px 72px;
  display:flex;
  gap:40px;
}
.star-plan .hero-tag {
  flex:none;
  writing-mode:vertical-rl;
  font-family:var(--mono);
  font-size:13px;
  letter-spacing:.42em;
  color:var(--brand-hi);
  border-left:1px solid rgba(127,231,196,.35);
  padding-left:16px;
  align-self:flex-start;
}
.star-plan .hero-main {flex:1;min-width:0;}
.star-plan .hero h1 {
  font-family:var(--display);
  font-weight:900;
  font-size:clamp(64px,8.6vw,124px);
  line-height:1.06;
  letter-spacing:-.03em;
  color:#FFFFFF;
  margin:18px 0 8px;
}
.star-plan .hero h1 .hl {
  background:var(--grad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.star-plan .hero-sub {
  max-width:620px;
  font-size:17px;
  line-height:1.95;
  color:var(--dk-fg-2);
  margin:22px 0 36px;
}
.star-plan .hero-sub strong {color:var(--dk-fg);font-weight:700;}
.star-plan .hero-btns {display:flex;gap:16px;flex-wrap:wrap;}
.star-plan .hero-stats {
  position:relative;
  max-width:1240px;margin:0 auto;
  padding:0 32px 76px;
}
.star-plan .hero-stats-in {
  border-top:1px solid var(--hair-d);
  padding-top:34px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:28px;
}
.star-plan .stat .n {
  font-family:var(--num);
  font-weight:800;
  font-size:clamp(44px,4.6vw,64px);
  line-height:1;
  letter-spacing:-.02em;
  background:var(--grad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  display:inline-block;
}
.star-plan .stat .n small {
  font-family:var(--cn);
  font-weight:700;
  font-size:16px;
  letter-spacing:0;
  margin-left:2px;
  background:none;-webkit-background-clip:initial;background-clip:initial;
  color:var(--brand-hi);
}
/* 第四枚指标为两字文字「多款」：同一字号级略小以容纳两字，视觉重量与前三枚大数字相当 */
.star-plan .stat .n.n-word {
  font-family:var(--cn);
  font-size:clamp(34px,3.6vw,50px);
  letter-spacing:.02em;
}
.star-plan .stat .l {
  margin-top:10px;
  font-size:14px;
  color:var(--dk-fg-2);
  letter-spacing:.04em;
}
/* ---------- 3 核心承诺带 ---------- */
.star-plan .promise {background:var(--light-1);overflow:hidden;}
.star-plan .promise-ambient {
  position:absolute;top:0;right:0;bottom:0;
  width:40%;
  background-image:url("/assets/images/logo/legaltechcc-mark-gradient-transparent-v3.svg");
  background-size:contain;
  background-repeat:no-repeat;
  background-position:right center;
  -webkit-mask-image:linear-gradient(to left,#000 12%,transparent 96%);
  mask-image:linear-gradient(to left,#000 12%,transparent 96%);
  opacity:.09;
  pointer-events:none;
}
.star-plan .promise-in {position:relative;padding:100px 0 96px;}
.star-plan .promise h2 {max-width:760px;}
.star-plan .promise h2 .u {
  background:linear-gradient(transparent 68%,rgba(56,161,105,.28) 68%);
  padding:0 2px;
}
.star-plan .promise-cards {
  margin-top:52px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.star-plan .p-card {padding:34px 30px 36px;}
.star-plan .p-card .k {
  font-family:var(--mono);
  font-size:12px;letter-spacing:.24em;
  color:var(--brand);
  display:block;margin-bottom:16px;
}
.star-plan .p-card h3 {
  font-size:22px;font-weight:900;letter-spacing:-.01em;
  color:var(--ink);
  margin-bottom:12px;
}
.star-plan .p-card p {font-size:15px;color:var(--ink-2);line-height:1.85;}
.star-plan .p-card .bar {
  display:block;
  width:44px;height:4px;border-radius:2px;
  background:var(--grad);
  margin-bottom:20px;
}
/* ---------- 4 为什么选择 ---------- */
.star-plan .why {background:var(--light-2);}
.star-plan .why-in {padding:100px 0;}
.star-plan .why-grid {
  margin-top:52px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}
.star-plan .w-card {padding:40px 38px 42px;display:flex;gap:26px;align-items:flex-start;}
.star-plan .w-card h3 {font-size:21px;font-weight:900;letter-spacing:-.01em;color:var(--ink);margin-bottom:14px;line-height:1.5;}
.star-plan .w-card p {font-size:15px;color:var(--ink-2);line-height:1.9;}
/* CSS 细线图标：书本 */
.star-plan .ico {flex:none;display:block;position:relative;width:48px;height:44px;}
.star-plan .ico-book::before, .star-plan .ico-book::after {
  content:"";position:absolute;top:4px;
  width:21px;height:34px;
  border:2px solid var(--brand);
  border-radius:3px 8px 8px 3px;
}
.star-plan .ico-book::before {left:2px;transform:skewY(-4deg);}
.star-plan .ico-book::after {right:2px;border-radius:8px 3px 3px 8px;transform:skewY(4deg);}
.star-plan .ico-book i {
  position:absolute;left:50%;top:2px;
  width:2px;height:38px;margin-left:-1px;
  background:var(--brand);
  border-radius:1px;
}
.star-plan .ico-book i::after {
  content:"";position:absolute;left:6px;top:8px;
  width:9px;height:9px;
  border:2px solid var(--brand-hi);
  border-radius:50%;
}
/* CSS 细线图标：网络/拼图节点 */
.star-plan .ico-net i {position:absolute;border:2px solid var(--brand);border-radius:50%;background:var(--light-2);}
.star-plan .ico-net .c {width:16px;height:16px;left:16px;top:14px;border-color:var(--brand);background:var(--grad);}
.star-plan .ico-net .n1 {width:11px;height:11px;left:2px;top:0;}
.star-plan .ico-net .n2 {width:11px;height:11px;left:35px;top:4px;}
.star-plan .ico-net .n3 {width:11px;height:11px;left:6px;top:32px;}
.star-plan .ico-net b {position:absolute;height:2px;background:var(--brand);border-radius:1px;transform-origin:left center;}
.star-plan .ico-net .l1 {width:15px;left:11px;top:9px;transform:rotate(38deg);}
.star-plan .ico-net .l2 {width:14px;left:27px;top:18px;transform:rotate(-16deg);}
.star-plan .ico-net .l3 {width:13px;left:15px;top:34px;transform:rotate(-42deg);}
/* ---------- 5 学习路径时间轴 ---------- */
.star-plan .path {background:var(--dark-c);color:var(--dk-fg);overflow:hidden;}
.star-plan .path .orbit::after {bottom:-560px;left:-300px;}
.star-plan .path-in {padding:104px 0 96px;position:relative;}
.star-plan .tl {position:relative;margin-top:74px;}
.star-plan .tl-ranges {position:absolute;inset:0;pointer-events:none;}
.star-plan .tl-range {position:absolute;}
.star-plan .tl-range .rl {
  position:absolute;
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  white-space:nowrap;
}
.star-plan .range-sys {--from:4.1667%;--span:8.3333%;}
.star-plan .range-prc {--from:20.8333%;--span:75%;}
.star-plan .range-sys {
  left:var(--from);width:var(--span);
  top:52px;height:6px;border-radius:3px;
  background:var(--grad);
  box-shadow:0 0 18px rgba(127,231,196,.45);
}
.star-plan .range-sys .rl {left:0;top:-64px;color:var(--brand-hi);}
.star-plan .range-prc {
  left:var(--from);width:var(--span);
  top:53px;height:4px;border-radius:2px;
  background:linear-gradient(90deg,rgba(56,161,105,.55),rgba(127,231,196,.30));
}
.star-plan .range-prc .rl {left:8px;top:-34px;color:var(--dk-fg-2);}
.star-plan .tl-axis {
  position:relative;
  display:grid;
  grid-template-columns:repeat(12,1fr);
  padding-top:52px;
}
.star-plan .tl-axis::before {
  content:"";
  position:absolute;left:0;right:0;top:55px;
  height:2px;background:var(--hair-d);
}
.star-plan .tl-mo {
  position:relative;
  display:flex;flex-direction:column;align-items:center;gap:14px;
  padding-top:0;
  cursor:default;
}
.star-plan .tl-mo .dot {
  width:14px;height:14px;border-radius:50%;
  background:var(--grad);
  border:3px solid var(--dark-c);
  box-shadow:0 0 0 1px rgba(127,231,196,.45);
  position:relative;
  z-index:2;
  transition:transform .2s ease,box-shadow .2s ease;
}
.star-plan .tl-mo:hover .dot {transform:scale(1.35);box-shadow:0 0 0 1px var(--brand-hi),0 0 16px rgba(127,231,196,.6);}
.star-plan .tl-mo span.mo {
  font-family:var(--num);
  font-size:12px;font-weight:600;
  letter-spacing:.08em;
  color:var(--dk-fg-2);
}
.star-plan .tl-mo::after {
  content:attr(data-tip);
  position:absolute;
  bottom:calc(100% + 4px);
  left:50%;transform:translateX(-50%) translateY(4px);
  background:#06110C;
  border:1px solid rgba(127,231,196,.35);
  color:var(--brand-hi);
  font-size:12px;font-weight:700;
  letter-spacing:.06em;
  padding:6px 12px;
  border-radius:8px;
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease;
  z-index:5;
}
.star-plan .tl-mo:hover::after {opacity:1;transform:translateX(-50%) translateY(0);}
.star-plan .path-cards {
  margin-top:64px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}
.star-plan .pc-card {padding:36px 34px 38px;}
.star-plan .pc-card .ph {
  display:inline-flex;align-items:center;gap:10px;
  font-size:13px;font-weight:700;letter-spacing:.14em;
  color:var(--brand-hi);
  font-family:var(--mono);
  margin-bottom:14px;
}
.star-plan .pc-card .ph::before {content:"";width:10px;height:10px;border-radius:50%;background:var(--grad);}
.star-plan .pc-card h3 {font-size:22px;font-weight:900;color:var(--dk-fg);letter-spacing:-.01em;margin-bottom:6px;}
.star-plan .pc-card .line {font-size:14px;color:var(--brand-hi);font-weight:700;margin-bottom:16px;}
.star-plan .pc-card p {font-size:15px;color:var(--dk-fg-2);line-height:1.9;}
.star-plan .pc-chips {display:flex;flex-wrap:wrap;gap:10px;margin-top:4px;}
.star-plan .pc-chips li {
  font-size:13px;font-weight:700;
  color:var(--dk-fg);
  border:1px solid rgba(127,231,196,.35);
  border-radius:999px;
  padding:6px 14px;
}
/* ---------- 6 八节系统课 ---------- */
.star-plan .system {background:var(--light-1);}
.star-plan .system-in {padding:100px 0;}
.star-plan .sys-grid {
  margin-top:52px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
}
.star-plan .s-card {padding:30px 26px 32px;display:flex;flex-direction:column;gap:12px;}
.star-plan .s-card .no {
  font-family:var(--num);
  font-weight:800;
  font-size:44px;line-height:1;
  letter-spacing:-.02em;
  background:var(--grad);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.star-plan .s-card h3 {font-size:17px;font-weight:900;color:var(--ink);line-height:1.5;letter-spacing:-.01em;}
.star-plan .s-card p {font-size:13.5px;color:var(--ink-2);line-height:1.75;}
/* ---------- 7 六大实务模块 ---------- */
.star-plan .modules {background:var(--dark-c);color:var(--dk-fg);overflow:hidden;}
.star-plan .modules .orbit::after {top:-420px;right:-320px;}
.star-plan .modules-in {padding:104px 0 100px;position:relative;}
.star-plan .mod-grid {
  margin-top:54px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.star-plan .m-card {padding:34px 30px 36px;}
.star-plan .m-card .idx {
  font-family:var(--mono);
  font-size:12px;letter-spacing:.26em;
  color:var(--brand-hi);
  display:block;margin-bottom:18px;
}
.star-plan .m-card h3 {font-size:21px;font-weight:900;color:var(--dk-fg);letter-spacing:-.01em;margin-bottom:14px;}
.star-plan .m-card p {font-size:14.5px;color:var(--dk-fg-2);line-height:1.85;}
.star-plan .m-card p + p {margin-top:4px;}
.star-plan .m-card .rule {display:block;width:36px;height:3px;border-radius:2px;background:var(--grad);margin-bottom:20px;}
/* ---------- 8 AI 产品 ---------- */
.star-plan .ai {background:var(--light-2);}
.star-plan .ai-in {padding:100px 0;}
.star-plan .ai-grid {
  margin-top:52px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
}
.star-plan .ai-card {overflow:hidden;display:flex;flex-direction:column;}
.star-plan .ai-shot {
  aspect-ratio:16/9;
  width:100%;
  overflow:hidden;
  background:var(--dark-c);
  border-bottom:1px solid var(--hair-l);
}
.star-plan .ai-shot img {width:100%;height:100%;object-fit:cover;object-position:center;}
.star-plan .ai-body {padding:28px 30px 32px;}
.star-plan .ai-body h3 {font-size:20px;font-weight:900;color:var(--ink);letter-spacing:-.01em;margin-bottom:10px;}
.star-plan .ai-body p {font-size:15px;color:var(--ink-2);line-height:1.85;}
.star-plan .ai-tag {
  display:inline-block;
  font-family:var(--mono);
  font-size:11px;letter-spacing:.22em;
  color:var(--brand);
  border:1px solid rgba(56,161,105,.4);
  border-radius:999px;
  padding:4px 12px;
  margin-bottom:14px;
}
/* ---------- 9 直播与案例诊所 ---------- */
.star-plan .live {background:var(--light-3);}
.star-plan .live-in {padding:100px 0;}
.star-plan .flow {
  margin-top:54px;
  display:flex;
  align-items:stretch;
  gap:0;
}
.star-plan .f-card {flex:1;padding:32px 28px 34px;position:relative;}
.star-plan .f-card .st {
  font-family:var(--num);
  font-weight:800;font-size:15px;letter-spacing:.14em;
  color:var(--brand);
  display:block;margin-bottom:14px;
}
.star-plan .f-card h3 {font-size:18px;font-weight:900;color:var(--ink);margin-bottom:10px;letter-spacing:-.01em;}
.star-plan .f-card p {font-size:14px;color:var(--ink-2);line-height:1.8;}
.star-plan .flow-arrow {
  flex:none;
  align-self:stretch;
  width:56px;
  position:relative;
  margin:0 6px;
  display:flex;
  align-items:center;
}
.star-plan .flow-arrow::before {
  content:"";
  flex:1;
  height:2px;
  background:rgba(56,161,105,.45);
}
.star-plan .flow-arrow::after {
  content:"";
  position:absolute;right:4px;top:50%;
  width:9px;height:9px;
  border-top:2px solid var(--brand);
  border-right:2px solid var(--brand);
  transform:translateY(-50%) rotate(45deg);
}
.star-plan .live-note {
  margin-top:34px;
  font-size:13px;
  color:var(--ink-2);
  display:flex;align-items:center;gap:10px;
}
.star-plan .live-note::before {content:"";width:22px;height:1px;background:var(--ink-2);}
/* ---------- 10 学员福利（横向无缝滚动标识带） ---------- */
.star-plan .tools {background:var(--dark-b);color:var(--dk-fg);}
.star-plan .tools-in {padding:96px 0 0;}
.star-plan .tools-head {
  display:flex;align-items:flex-end;justify-content:space-between;gap:40px;flex-wrap:wrap;
}
.star-plan .tools-head .th-left {max-width:620px;}
.star-plan .tools-head h2.sec-title {font-size:clamp(28px,3.2vw,40px);}
.star-plan .tools-head .sec-sub {margin-top:14px;font-size:16px;max-width:560px;}
.star-plan .tools-chips {display:flex;gap:12px;flex-wrap:wrap;}
.star-plan .tools-chips li {
  font-size:14px;font-weight:700;letter-spacing:.02em;
  color:var(--brand-hi);
  background:rgba(56,161,105,.14);
  border:1px solid rgba(56,161,105,.45);
  border-radius:999px;
  padding:8px 20px;
  white-space:nowrap;
}
/* 通栏出血的滚动带 */
/* 适合人群 */
.audience {background:var(--light-3);}
.star-plan .audience-in {padding:96px 0;}
.star-plan .audience h2 {max-width:720px;}
.star-plan .audience p.lead {
  margin-top:22px;
  max-width:760px;
  font-size:17px;line-height:2;
  color:var(--ink-2);
}
.star-plan .aud-tags {margin-top:36px;display:flex;gap:14px;flex-wrap:wrap;}
.star-plan .aud-tags li {
  font-size:15px;font-weight:700;
  color:var(--brand);
  background:rgba(56,161,105,.07);
  border:1px solid rgba(56,161,105,.45);
  border-radius:999px;
  padding:9px 22px;
}
/* ---------- 12 学员评价 ---------- */
.star-plan .voice {background:var(--dark-b);color:var(--dk-fg);overflow:hidden;}
.star-plan .voice-in {padding:104px 0;}
.star-plan .quote-card {
  max-width:860px;
  padding:52px 56px 48px;
  position:relative;
}
.star-plan .qmark {display:flex;gap:14px;margin-bottom:30px;}
.star-plan .qmark i {position:relative;width:34px;height:34px;border-radius:50%;background:var(--grad);}
.star-plan .qmark i::after {
  content:"";
  position:absolute;left:0;top:55%;
  width:15px;height:26px;
  background:var(--grad);
  border-radius:0 0 0 14px;
}
.star-plan .quote-card blockquote {
  font-size:clamp(19px,2.1vw,25px);
  font-weight:700;
  line-height:1.95;
  letter-spacing:.01em;
  color:var(--dk-fg);
}
.star-plan .quote-card .sig {
  margin-top:28px;
  display:flex;align-items:center;gap:14px;
  font-size:14px;font-weight:700;letter-spacing:.1em;
  color:var(--brand-hi);
}
.star-plan .quote-card .sig::before {content:"";width:34px;height:2px;background:var(--grad);}
/* ---------- 13 讲师阵容（8 席真人轮播） ---------- */
.star-plan .speaker {background:var(--dark-b);color:var(--dk-fg);}
.star-plan .speaker-in {padding:96px 0;}
.star-plan .sp-head {display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap;}
.star-plan .sp-head .sec-sub {max-width:560px;}
/* 轮播视口：scroll-snap + 原生拖拽/触摸 */
.star-plan .sp-card {
  flex:none;
  scroll-snap-align:start;
  width:calc((100% - 3 * 24px) / 4);
  margin-right:24px;
  border-radius:18px;
  border:1px solid var(--hair-d);
  background:rgba(255,255,255,.03);
  overflow:hidden;
  transition:border-color .22s ease,transform .22s ease;
}
.star-plan .sp-card:last-child {margin-right:0;}
.star-plan .sp-card:hover {border-color:var(--brand);transform:translateY(-4px);}
.star-plan .sp-card:focus-visible {outline:2px solid var(--brand-hi);outline-offset:3px;}
.star-plan .sp-shot {
  position:relative;
  aspect-ratio:4/5;
  width:100%;
  overflow:hidden;
  background:var(--dark-c);
}
.star-plan .sp-shot img {width:100%;height:100%;object-fit:cover;}
/* 图片加载失败兑底：隐藏裂图图标，槽位深色底+渐变遮罩承接（资源 404 时不露破图） */
.star-plan .sp-shot img.is-broken {opacity:0;}
/* 人像区底部透明→rgba(12, .star-plan 21, .star-plan 18, .star-plan .72) 垂直渐变遮罩，衔接文字区 */
.star-plan .sp-shot::after {
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(12,21,18,0) 52%,rgba(12,21,18,.72) 100%);
  pointer-events:none;
}
/* 第 4 席例外：圆形小头像不 cover 裁切，圆容器居中略偏上，圆外 radial 深绿铺底 */
.star-plan .sp-shot--round {background:radial-gradient(circle at 50% 44%,#141E1B 0%,#10181A 74%);}
.star-plan .sp-avatar {
  position:absolute;
  left:50%;top:44%;
  width:62%;
  aspect-ratio:1/1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  overflow:hidden;
  box-shadow:0 10px 28px rgba(0,0,0,.34);
}
.star-plan .sp-avatar img {width:100%;height:100%;object-fit:cover;}
/* 每席 object-position 按 brief 逐席指定，保面部/头顶/话筒完整 */
.star-plan .sp-card[data-pos="1"] .sp-shot img {object-position:50% 22%;}
.star-plan .sp-card[data-pos="2"] .sp-shot img {object-position:50% 20%;}
.star-plan .sp-card[data-pos="3"] .sp-shot img {object-position:50% 18%;}
.star-plan .sp-card[data-pos="5"] .sp-shot img {object-position:50% 20%;}
.star-plan .sp-card[data-pos="6"] .sp-shot img {object-position:50% 22%;}
.star-plan .sp-card[data-pos="7"] .sp-shot img {object-position:50% 20%;}
.star-plan .sp-card[data-pos="8"] .sp-shot img {object-position:62% 45%;}
.star-plan .sp-body {padding:18px 20px 20px;}
.star-plan .sp-body .sp-name {font-size:17px;font-weight:900;color:var(--dk-fg);letter-spacing:-.01em;}
.star-plan .sp-badge {
  display:inline-block;
  margin-top:8px;
  font-size:11px;font-weight:700;letter-spacing:.08em;
  color:var(--brand-hi);
  background:rgba(56,161,105,.14);
  border-radius:999px;
  padding:4px 12px;
}
.star-plan .sp-body .sp-org {
  margin-top:8px;
  font-size:13px;line-height:1.6;color:var(--dk-fg-2);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.star-plan .sp-body .sp-dir {
  margin-top:6px;
  font-size:13px;font-weight:700;color:var(--brand-hi);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.star-plan .sp-body .sp-bio {
  margin-top:8px;font-size:13px;line-height:1.75;color:var(--dk-fg-2);
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
/* 控件 */
.star-plan .sp-controls {
  margin-top:32px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.star-plan .sp-arrows {display:flex;gap:12px;}
.star-plan .sp-arrow {
  width:46px;height:46px;border-radius:50%;
  border:1px solid var(--hair-d);
  background:transparent;
  color:var(--dk-fg);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  transition:border-color .2s ease,color .2s ease;
}
.star-plan .sp-arrow:hover {border-color:var(--brand);color:var(--brand-hi);}
.star-plan .sp-arrow:focus-visible {outline:2px solid var(--brand-hi);outline-offset:3px;}
.star-plan .sp-arrow svg {width:18px;height:18px;}
/* ---------- 14 价格与报名 ---------- */
.star-plan .pricing {background:var(--dark-b);color:var(--dk-fg);overflow:hidden;}
.star-plan .pricing-bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, #10181acc 0%, #10181a9e 46%, #10181adc 100%),
    var(--star-scene) right top / cover no-repeat;
  pointer-events: none;
}
.star-plan .pricing {
  --star-scene: url("/assets/images/training/star-plan-enroll-background.jpg");
}
.star-plan .pricing-in {
  position:relative;
  padding:108px 0 104px;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:64px;
  align-items:center;
}
.star-plan .price-row {display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap;margin:10px 0 6px;}
.star-plan .price-now {
  font-family:var(--num);
  font-weight:800;
  font-size:clamp(72px,7.4vw,108px);
  line-height:.95;
  letter-spacing:-.03em;
  background:var(--grad);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.star-plan .price-unit {
  font-size:17px;font-weight:700;color:var(--dk-fg);
  padding-bottom:10px;
}
.star-plan .price-meta {
  margin:18px 0 34px;
  display:flex;align-items:center;gap:14px;
  font-size:15px;font-weight:700;letter-spacing:.06em;
  color:var(--brand-hi);
}
.star-plan .price-meta::before {content:"";width:10px;height:10px;border-radius:50%;background:var(--grad);}
.star-plan .qr-card {
  background:#FFFFFF;
  border-radius:22px;
  padding:26px 26px 22px;
  box-shadow:0 24px 60px rgba(0,0,0,.42);
  justify-self:end;
  width:min(340px,100%);
  text-align:center;
}
.star-plan .qr-slot {
  width:252px;height:326px;
  margin:0 auto;
}
.star-plan .qr-slot img {width:100%;height:100%;object-fit:contain;}
.star-plan .qr-card .qr-note {
  margin-top:16px;
  font-size:13px;
  line-height:1.7;
  color:var(--ink-2);
}
/* 响应式 */
@media (max-width:1024px) {
  .star-plan .sys-grid { grid-template-columns: repeat(2, 1fr); }
  .star-plan .mod-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width:860px) {
.star-plan .wrap {padding:0 22px;}
.star-plan .hero-in {padding:72px 22px 48px;gap:22px;}
.star-plan .hero-tag {writing-mode:horizontal-tb;border-left:none;border-top:1px solid rgba(127,231,196,.35);padding:10px 0 0;letter-spacing:.3em;align-self:auto;}
.star-plan .hero-in {flex-direction:column;}
.star-plan .hero-stats {padding:0 22px 60px;}
.star-plan .hero-stats-in {grid-template-columns:repeat(2,1fr);gap:26px 20px;}
.star-plan .promise-cards {grid-template-columns:1fr;}
.star-plan .why-grid {grid-template-columns:1fr;}
.star-plan .path-cards {grid-template-columns:1fr;}
.star-plan .sys-grid {grid-template-columns:1fr;}
.star-plan .mod-grid {grid-template-columns:1fr;}
.star-plan .ai-grid {grid-template-columns:1fr;}
.star-plan .flow {flex-direction:column;gap:0;}
.star-plan .flow-arrow {width:2px;height:44px;align-self:center;margin:6px auto;display:block;}
.star-plan .flow-arrow::before {flex:none;display:block;width:2px;height:100%;background:rgba(56,161,105,.45);}
.star-plan .flow-arrow::after {right:auto;left:-3px;top:auto;bottom:4px;transform:rotate(135deg);}
.star-plan .speaker-in {padding:72px 0;}
.star-plan .sp-body .sp-bio {-webkit-line-clamp:4;}
.star-plan .sp-controls {align-items:center;gap:12px;margin-top:26px;}
.star-plan .tools-in {padding:72px 0 0;}
.star-plan .pricing-in {grid-template-columns:1fr;gap:44px;}
.star-plan .qr-card {justify-self:start;}
  .star-plan .path-in { padding-block: 56px; }
  .star-plan .tl { display: none; }
  .star-plan .path-cards { margin-top: 24px; gap: 12px; }
  .star-plan .pc-card { padding: 20px; }
.star-plan .quote-card {padding:38px 30px 36px;}
}
.star-plan section { scroll-margin-top: 84px; }
.star-plan .star-anchor { position: absolute; top: 0; scroll-margin-top: 84px; }
.star-plan .tools-in { padding: 96px 32px; }
.star-plan .price-fine { margin-top: 16px; color: var(--dk-fg-2); font-size: 13px; }
.star-plan .qr-slot { display: block; width: 100%; height: auto; aspect-ratio: 740 / 960; }
.star-plan .qr-slot img { height: auto; }
.star-plan .sp-controls { justify-content: flex-start; color: var(--dk-fg); }
.star-plan .sp-controls[hidden] { display: none; }
.star-plan .sp-toggle { border: 1px solid var(--hair-d); border-radius: 8px; padding: 4px 12px; background: transparent; color: inherit; }
.star-plan .sp-window { overflow: hidden; margin-top: 28px; }
.star-plan .sp-page { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.star-plan .sp-page + .sp-page { margin-top: 20px; }
.star-plan .is-carousel .class-upcoming-list { display: flex; transition: transform .35s ease; }
.star-plan .is-carousel .sp-page { flex: 0 0 100%; min-width: 0; margin-top: 0; }
.star-plan .sp-page .sp-card { width: auto; min-width: 0; }
.star-plan .sp-more { color: var(--brand-hi); font-size: 13px; }
.star-plan .ai-card:focus-visible, .star-plan .sp-more:focus-visible { outline: 2px solid var(--brand); }
.star-plan .s-card a { color: #0b7465; font-size: 13px; text-decoration: underline; }
.cover-dialog { width: min(900px, calc(100% - 24px)); max-height: 95dvh; border: 0; border-radius: 12px; }
.cover-dialog::backdrop { background: #101416bb; }
.cover-dialog-head { display: flex; justify-content: space-between; gap: 12px; }
.cover-dialog .cover-image { width: 100%; max-height: 80dvh; object-fit: contain; }
@media (max-width: 860px) {
  .star-plan .wrap:not(.hero-in) { padding-inline: 22px; }
  .star-plan .sp-page { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .star-plan .sp-body { padding: 12px; }
  .star-plan .tools-in { padding-block: 56px; }
}
@media (prefers-reduced-motion: reduce) {
  .star-plan .is-carousel .class-upcoming-list { transition: none; }
}

.star-plan h1, .star-plan .sec-title, .star-plan .stat .n, .star-plan .price-now, .star-plan .s-card .no, .star-plan .f-card .st { font-style: oblique; font-weight: 400; }

.star-plan .tools-in { padding-bottom: 24px; }
.star-plan .btn { min-height: 52px; height: auto; text-align: center; }
.star-plan .orbit::after { z-index: 0; }
.star-plan .hero-in, .star-plan .hero-stats { z-index: 1; }
.cover-dialog video[hidden] { display: none; }
@media (max-width: 480px) {
  .star-plan .hero h1 { font-size: clamp(48px, 14vw, 64px); }
  .star-plan .pricing .btn { padding-inline: 14px !important; }
  .star-plan .pricing-in, .star-plan .system-in, .star-plan .modules-in { padding-block: 64px; }
}

.star-plan .stat .l { display: block; }


.star-plan .tools { padding-bottom: clamp(40px, 6vw, 76px); }

.star-plan .perks-marquee {
  position: relative;
  overflow: hidden;
  mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
}

.star-plan .perks-logo-track {
  display: flex;
  width: max-content;
  animation: perks-scroll 30s linear infinite;
}

.star-plan .perks-logo-group {
  display: flex;
  flex: none;
  gap: 16px;
  padding-right: 16px;
}

.star-plan .perks-logo-group li {
  display: grid;
  place-items: center;
  width: max(180px, calc(25vw - 16px));
  height: 88px;
  padding: 14px 24px;
  border-radius: 44px;
  background: #f7f8f7;
}

.star-plan .perks-logo-group img {
  width: min(100%, 144px);
  height: 42px;
  object-fit: contain;
}

.star-plan .perks-marquee:hover .perks-logo-track,
.star-plan .perks-logo-track.is-paused {
  animation-play-state: paused;
}

.star-plan .perks-controls {
  position: relative;
  display: flex;
  justify-content: flex-end;
  margin-block: 12px 18px;
}

.star-plan .perks-controls button {
  padding: 4px 12px;
  border: 1px solid var(--hair-d);
  border-radius: 8px;
  background: transparent;
  color: var(--dk-fg);
}

.star-plan .perks-controls button[aria-pressed="true"] {
  border-color: var(--brand-hi);
  color: var(--brand-hi);
}

@keyframes perks-scroll {
  to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
  .star-plan .perks-logo-track { animation: none; width: auto; }
  .star-plan .perks-logo-group { flex: 1; flex-wrap: wrap; justify-content: center; padding: 0 16px; }
  .star-plan .perks-logo-group li { width: clamp(136px, 21vw, 240px); }
  .star-plan .perks-logo-group[aria-hidden], .star-plan .perks-controls { display: none; }
  .star-plan .perks-marquee { mask-image: none; margin-bottom: 20px; }
}

.star-plan .hero-bg::after,
.star-plan .pricing-bg::after {
  content: "";
  position: absolute;
  background: url("/assets/images/logo/legaltechcc-mark-gradient-transparent-v3.svg") center / contain no-repeat;
  aspect-ratio: 192 / 270;
}

.star-plan .hero-bg::after {
  top: 13%;
  left: 1.7%;
  width: clamp(100px, 14vw, 285px);
  opacity: .11;
}

.star-plan .pricing-bg::after {
  right: 2%;
  bottom: 7%;
  width: clamp(100px, 11.5vw, 230px);
  opacity: .09;
}

.star-plan .pricing-bg { background-position: center, left bottom; }

@media (min-width: 861px) {
  .star-plan .stat .l { display: inline; margin-left: 4px; }
}

@media (max-width: 640px) {
  .star-plan .hero {
    --star-scene: url("/assets/images/training/star-plan-star-mobile.jpg");
  }

  .star-plan .pricing {
    --star-scene: url("/assets/images/training/star-plan-enroll-mobile.jpg");
  }

  .star-plan .hero-bg {
    background-size: cover, auto 82%;
    background-position: center, right top;
  }

  .star-plan .hero-bg::after { left: -32px; width: 124px; opacity: .08; }
  .star-plan .pricing-bg::after { width: 92px; }
}

.star-plan .student-case {
  background: var(--light-1);
}

.star-plan .student-case > .wrap {
  padding-block: clamp(56px, 7vw, 96px);
}

.star-plan .student-case-grid,
.star-plan .student-voices {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 32px;
}

.star-plan .student-case-grid .card,
.star-plan .student-voices .quote-card {
  padding: 24px;
}

.star-plan .student-case-grid h3,
.star-plan .student-voices h3 {
  font-size: 19px;
  margin-bottom: 10px;
}

.star-plan .student-case-grid p {
  color: var(--ink-2);
}

.star-plan .student-voices .quote-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: none;
  color: var(--dk-fg-2);
}

.star-plan .student-voices .quote-card blockquote {
  font-size: 16px;
}

.star-plan .student-voices .quote-card h3 {
  color: var(--dk-fg);
}

.star-plan .student-voices .quote-card .sig {
  margin-top: auto;
  padding-top: 10px;
}

@media (max-width: 860px) {
  .star-plan .student-case-grid,
  .star-plan .student-voices {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

.star-plan .student-case-grid .card {
  display: flex;
  flex-direction: column;
}

.star-plan .student-case-preview {
  display: block;
  margin-bottom: 16px;
  border-radius: 8px;
  background: var(--light-3);
  overflow: hidden;
}

.star-plan .student-case-preview img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: contain;
}

.star-plan .student-case-preview span {
  display: block;
  padding: 6px 12px;
  color: var(--ink-2);
  font-size: 13px;
}

.star-plan .student-case-link {
  margin-top: auto;
  padding-top: 14px;
  color: #0b7465;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.star-plan .price-pair {
  margin-top: 18px;
  color: var(--dk-fg);
  font-size: 16px;
}

.star-plan .student-case-screens {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.star-plan .student-case-screens img {
  aspect-ratio: 8 / 10;
  object-fit: cover;
  object-position: top;
}
