.elementor-1179 .elementor-element.elementor-element-99de8d7{--display:flex;}.elementor-1179 .elementor-element.elementor-element-b74d9c1{--display:flex;}/* Start custom CSS for html, class: .elementor-element-976a0c9 *//* LEO PROPERTY MISSION & VISION · CSS
   粘贴位置：Elementor → Site Settings → Custom CSS，接在 Footer 的 CSS 下面（全站只有这一个框）。
   颜色和尺寸都在下面第一个区块修改。整套配色没有灰色、没有蓝色；唯一例外：太阳（橙红）与月亮（灰白）两颗球本身，按真实照片上色。 */

#leo-pmv {
  /* 文字 */
  --leo-ivory: #FFFCF5;
  --leo-ivory-soft: #EDE6D3;
  --leo-ivory-mute: #E0D6BC;
  --leo-gold-text: #8A641C;

  /* 舞台与卡片（舞台 = 主题炭黑） */
  --leo-charcoal: #171C22;
  --leo-card: rgba(255, 252, 245, .045);
  --leo-card-hover: rgba(229, 188, 76, .08);
  --leo-bullet: rgba(255, 252, 245, .05);

  /* 金色 */
  --leo-gold: #E5BC4C;
  --leo-gold-bright: #F6D987;
  --leo-gold-deep: #B9861B;
  --leo-gold-line: color-mix(in srgb, var(--leo-gold) 55%, transparent);
  --leo-gold-wash: rgba(229, 188, 76, .14);

  /* 阴影（暖色，不用灰） */
  --leo-shadow: 0 18px 56px rgba(26, 20, 8, .18);

  /* 尺寸与动效 */
  --leo-max-width: 1320px;
  --leo-radius: 26px;
  --leo-card-radius: 20px;
  --leo-orb-size: 440px;
  --leo-orb-core: 46%;
  --leo-speed: 150ms;

  /* 字体：整站统一 Inter，不依赖 Elementor Global Fonts */
  --leo-font: Inter, system-ui, -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
  --leo-font-weight: 600;
  --leo-body-size: 17px;

  position: relative;
  isolation: isolate;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  container-type: inline-size;
  container-name: leo-pmv-area;
  overflow-x: clip;
  color: var(--leo-ivory-soft);
  background: transparent !important;
  font-family: var(--leo-font);
  line-height: 1.55;
}

#leo-pmv,
#leo-pmv *,
#leo-pmv *::before,
#leo-pmv *::after { box-sizing: border-box; }

/* ---------- 舞台：炭黑底 + 金色细边框 + 静态金色高光 ---------- */
#leo-pmv .leo-pmv__stage {
  position: relative;
  width: min(calc(100% - 40px), var(--leo-max-width));
  margin: 0 auto;
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-radius);
  background:
    radial-gradient(circle at 12% 0%, rgba(229, 188, 76, .09) 0%, transparent 38%),
    var(--leo-charcoal);
  box-shadow: var(--leo-shadow);
}
#leo-pmv .leo-pmv__stage::before {
  content: "";
  position: absolute;
  inset: -1px;
  padding: 1px;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 8%, var(--leo-gold-line) 28%, var(--leo-gold) 46%, var(--leo-gold-bright) 50%, var(--leo-gold) 54%, var(--leo-gold-line) 72%, transparent 92%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
#leo-pmv .leo-pmv__inner {
  padding: clamp(40px, 6vw, 84px) clamp(20px, 4vw, 64px) clamp(32px, 5vw, 64px);
}

/* ---------- 标题区 ---------- */
#leo-pmv .leo-pmv__header {
  max-width: 820px;
  margin: 0 auto clamp(32px, 4.5vw, 56px);
  text-align: center;
}
#leo-pmv .leo-pmv__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  color: var(--leo-gold);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
#leo-pmv .leo-pmv__eyebrow::before,
#leo-pmv .leo-pmv__eyebrow::after {
  content: "";
  width: 26px;
  height: 1px;
  background: var(--leo-gold-deep);
}
#leo-pmv .leo-pmv__title {
  margin: 0;
  color: var(--leo-ivory);
  font-family: var(--leo-font);
  font-size: clamp(30px, 3.8vw, 48px);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -.02em;
}
#leo-pmv .leo-pmv__title span { display: block; color: var(--leo-gold-bright); }
#leo-pmv .leo-pmv__description {
  max-width: 720px;
  margin: 20px auto 0;
  color: var(--leo-ivory-soft);
  font-size: var(--leo-body-size);
  line-height: 1.7;
}

/* ---------- 两张卡片 ---------- */
#leo-pmv .leo-pmv__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}
#leo-pmv .leo-pmv__card {
  --leo-accent: var(--leo-gold);
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(22px, 2.8vw, 34px);
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-card-radius);
  background: var(--leo-card);
  transition: border-color var(--leo-speed) ease, background-color var(--leo-speed) ease;
}
#leo-pmv .leo-pmv__card--moon { --leo-accent: var(--leo-gold-bright); }
#leo-pmv .leo-pmv__card:hover {
  border-color: var(--leo-gold);
  background: var(--leo-card-hover);
}

#leo-pmv .leo-pmv__badge {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 14px;
  border: 1px solid var(--leo-gold-line);
  border-radius: 999px;
  color: var(--leo-ivory);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  line-height: 1;
  text-transform: uppercase;
}
#leo-pmv .leo-pmv__badge::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--leo-accent);
}

/* ---------- 太阳 / 月亮 ---------- */
#leo-pmv .leo-pmv__orb {
  position: relative;
  width: min(100%, var(--leo-orb-size));
  aspect-ratio: 1;
  margin: 4px auto 0;
}
#leo-pmv .leo-pmv__orb canvas {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
}
#leo-pmv .leo-pmv__orb.is-gl canvas { opacity: 1; }

/* 备用：浏览器不支持 WebGL 时显示静态球体 */
#leo-pmv .leo-pmv__orb-fallback {
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--leo-orb-core);
  aspect-ratio: 1;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
#leo-pmv .leo-pmv__orb.is-gl .leo-pmv__orb-fallback { display: none; }
#leo-pmv .leo-pmv__orb--sun .leo-pmv__orb-fallback {
  background: radial-gradient(circle at 50% 50%, #FFF3B8 0%, #FFC53A 30%, #F2700F 66%, #C2260A 100%);
  box-shadow: 0 0 70px rgba(255, 74, 15, .5), 0 0 150px rgba(255, 74, 15, .22);
}
#leo-pmv .leo-pmv__orb--moon .leo-pmv__orb-fallback {
  background: radial-gradient(circle at 36% 32%, #FFFFFF 0%, #F4F4F4 30%, #CFCFCF 66%, #6A6A6A 100%);
  box-shadow: 0 0 60px rgba(232, 232, 232, .34), 0 0 130px rgba(232, 232, 232, .14);
}
#leo-pmv .leo-pmv__orb-caption {
  margin: 0 0 22px;
  color: var(--leo-accent);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .12em;
  text-align: center;
  text-transform: uppercase;
}

/* ---------- 文字 ---------- */
#leo-pmv .leo-pmv__card-heading {
  margin: 0;
  color: var(--leo-ivory);
  font-family: var(--leo-font);
  font-size: clamp(22px, 2vw, 28px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.015em;
}
#leo-pmv .leo-pmv__card-text {
  margin: 16px 0 0;
  color: var(--leo-ivory-soft);
  font-size: var(--leo-body-size);
  line-height: 1.7;
}

/* ---------- 三张内部小卡片 ---------- */
#leo-pmv .leo-pmv__bullets {
  display: grid;
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}
#leo-pmv .leo-pmv__bullet {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid transparent;
  border-radius: 14px;
  background: var(--leo-bullet);
  text-align: left;
  transition: border-color var(--leo-speed) ease, background-color var(--leo-speed) ease;
}
#leo-pmv .leo-pmv__bullet:hover {
  border-color: var(--leo-gold);
  background: var(--leo-gold-wash);
}
#leo-pmv .leo-pmv__tick {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  padding: 6px;
  margin-top: 1px;
  border: 1px solid var(--leo-gold-line);
  border-radius: 50%;
  background: var(--leo-gold-wash);
  fill: none;
  stroke: var(--leo-accent);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
#leo-pmv .leo-pmv__bullet-title {
  display: block;
  color: var(--leo-ivory);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}
#leo-pmv .leo-pmv__bullet-text {
  display: block;
  margin-top: 3px;
  color: var(--leo-ivory-mute);
  font-size: 15px;
  line-height: 1.55;
}

/* ---------- 中文排版 ---------- */
#leo-pmv:lang(zh) .leo-pmv__title { letter-spacing: 0; line-height: 1.25; }
#leo-pmv:lang(zh) .leo-pmv__card-heading { letter-spacing: 0; line-height: 1.35; }
#leo-pmv:lang(zh) .leo-pmv__eyebrow,
#leo-pmv:lang(zh) .leo-pmv__badge,
#leo-pmv:lang(zh) .leo-pmv__orb-caption { letter-spacing: .08em; }
#leo-pmv:lang(zh) .leo-pmv__description,
#leo-pmv:lang(zh) .leo-pmv__card-text { line-height: 1.85; }

/* ---------- 响应式：按自身宽度排版 ---------- */
@container leo-pmv-area (max-width: 1024px) {
  #leo-pmv .leo-pmv__grid { grid-template-columns: 1fr; gap: 20px; }
  #leo-pmv .leo-pmv__card { align-items: center; text-align: center; }
  #leo-pmv .leo-pmv__badge { align-self: center; }
  #leo-pmv .leo-pmv__card-text { max-width: 720px; }
  #leo-pmv .leo-pmv__bullets { width: 100%; max-width: 720px; }
}
@container leo-pmv-area (max-width: 767px) {
  #leo-pmv { --leo-orb-size: 340px; --leo-body-size: 16px; }
  #leo-pmv .leo-pmv__stage {
    width: min(calc(100% - 24px), var(--leo-max-width));
    border-radius: calc(var(--leo-radius) - 6px);
  }
  #leo-pmv .leo-pmv__inner { padding: 36px 14px 20px; }
  #leo-pmv .leo-pmv__card { padding: 22px 16px; }
  #leo-pmv .leo-pmv__bullet { padding: 12px 12px; gap: 12px; }
  #leo-pmv .leo-pmv__bullet-title { font-size: 15px; }
  #leo-pmv .leo-pmv__bullet-text { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  #leo-pmv *,
  #leo-pmv *::before,
  #leo-pmv *::after { transition-duration: .01ms !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4d37991 *//* LEO JOURNEY · CSS
   粘贴位置：Elementor → Site Settings → Custom CSS，接在 Header、Footer 与其他页面 CSS 后面、leo-frame-patch.css 前面。外框宽度交给 leo-frame-patch.css
   颜色、尺寸、动效时间都在下面第一个区块修改。整套配色没有灰色。 */

/* ---------- Elementor 修正：手机宽度（≤767px）下，HTML Widget 会被撑出大片空白 ----------
   原因：Elementor 手机版的容器是「纵向换行」，HTML Widget 的高度按收缩后的窄宽度计算，
   结果比真实内容高好几倍（实测 About 页多出约 1.2 万 px 空白）。
   明确写 width:100% 即可。这条是全站生效的，也会一并修好同一页其他 HTML Widget 下面的空白。 */
.e-con > .elementor-widget-html { width: 100%; }

#leo-journey {
  /* 文字 */
  --leo-text: #171C22;
  --leo-gold-text: #8A641C;

  /* 背景 */
  --leo-ivory: #FFFCF5;
  --leo-card: #FFFFFF;
  --leo-cream: #FBF3DF;

  /* 金色 */
  --leo-gold: #E5BC4C;
  --leo-gold-bright: #F6D987;
  --leo-gold-deep: #B9861B;
  --leo-gold-line: color-mix(in srgb, var(--leo-gold) 55%, transparent);
  --leo-gold-wash: rgba(229, 188, 76, .16);

  /* 阴影（暖色，不用灰） */
  --leo-shadow: 0 10px 30px rgba(26, 20, 8, .07);

  /* 尺寸与动效 */
  --leo-radius: 22px;
  --leo-speed: 150ms;
  --leo-enter: 420ms;
  --leo-stagger: 70ms;

  /* 字体：Inter 优先，中文自动用系统黑体 */
  --leo-font: Inter, "PingFang SC", "Noto Sans SC", "Microsoft YaHei", system-ui, -apple-system, "Segoe UI", sans-serif;
  --leo-font-size: 17px;

  position: relative;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  container-type: inline-size;
  container-name: leo-journey-area;
  padding: clamp(64px, 8vw, 112px) 20px;
  color: var(--leo-text);
  background: var(--leo-ivory);
  font-family: var(--leo-font);
  font-size: var(--leo-font-size);
  line-height: 1.7;
}

#leo-journey,
#leo-journey *,
#leo-journey *::before,
#leo-journey *::after { box-sizing: border-box; }

#leo-journey [hidden] { display: none !important; }
#leo-journey :is(button, a):focus-visible {
  outline: 2px solid var(--leo-gold-text);
  outline-offset: 2px;
}
#leo-journey button { font: inherit; color: inherit; -webkit-tap-highlight-color: transparent; }
#leo-journey .leo-journey__icon {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* ---------- 标题区 ---------- */
#leo-journey .leo-journey__header {
  width: min(100%, 760px);
  margin: 0 auto clamp(40px, 5vw, 60px);
  text-align: center;
}
#leo-journey .leo-journey__status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 20px;
  padding: 7px 16px;
  border: 1px solid var(--leo-gold-line);
  border-radius: 999px;
  background: var(--leo-card);
  color: var(--leo-gold-text);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.2;
}
#leo-journey .leo-journey__status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--leo-gold);
  box-shadow: 0 0 0 4px var(--leo-gold-wash);
}
#leo-journey .leo-journey__eyebrow {
  margin: 0 0 12px;
  color: var(--leo-gold-text);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .16em;
}
#leo-journey .leo-journey__h2 {
  margin: 0;
  color: var(--leo-text);
  font-family: var(--leo-font);
  font-size: clamp(32px, 4.6vw, 56px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.01em;
  text-wrap: balance;
}
#leo-journey .leo-journey__intro {
  margin: 20px auto 0;
  max-width: 720px;
  font-size: 18px;
  line-height: 1.8;
}

/* ---------- 章节标签条（Carousel） ---------- */
#leo-journey .leo-journey__nav {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--leo-gold-line);
  border-radius: calc(var(--leo-radius) + 4px);
  background: var(--leo-card);
  box-shadow: var(--leo-shadow);
}
#leo-journey .leo-journey__tabs {
  position: relative;
  display: flex;
  flex: 1 1 auto;
  gap: 10px;
  min-width: 0;
  overflow-x: auto;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
}
#leo-journey .leo-journey__tabs::-webkit-scrollbar { display: none; }
#leo-journey .leo-journey__tab {
  display: flex;
  flex: 1 0 auto;
  align-items: center;
  gap: 14px;
  min-width: 190px;
  padding: 12px 18px 12px 12px;
  border: 1px solid transparent;
  border-radius: 16px;
  background: var(--leo-ivory);
  text-align: left;
  cursor: pointer;
  scroll-snap-align: center;
  transition: background-color var(--leo-speed) ease, border-color var(--leo-speed) ease;
}
#leo-journey .leo-journey__tab-icon {
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid var(--leo-gold-line);
  border-radius: 12px;
  background: var(--leo-card);
  color: var(--leo-gold-text);
  transition: background-color var(--leo-speed) ease, border-color var(--leo-speed) ease;
}
#leo-journey .leo-journey__tab-text { display: grid; gap: 2px; min-width: 0; }
#leo-journey .leo-journey__tab-title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  white-space: nowrap;
}
#leo-journey .leo-journey__tab-sub {
  color: var(--leo-gold-text);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  white-space: nowrap;
}
#leo-journey .leo-journey__tab:hover {
  background: var(--leo-cream);
  border-color: var(--leo-gold);
}
#leo-journey .leo-journey__tab.is-active {
  background: var(--leo-gold);
  border-color: var(--leo-gold);
}
#leo-journey .leo-journey__tab.is-active .leo-journey__tab-icon {
  background: var(--leo-ivory);
  border-color: var(--leo-gold-deep);
  color: var(--leo-text);
}
#leo-journey .leo-journey__tab.is-active .leo-journey__tab-sub { color: var(--leo-text); }

#leo-journey .leo-journey__arrow {
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid var(--leo-gold-line);
  border-radius: 50%;
  background: var(--leo-card);
  color: var(--leo-text);
  cursor: pointer;
  transition: background-color var(--leo-speed) ease, border-color var(--leo-speed) ease, opacity var(--leo-speed) ease;
}
#leo-journey .leo-journey__arrow:hover:not(:disabled) {
  background: var(--leo-cream);
  border-color: var(--leo-gold);
}
#leo-journey .leo-journey__arrow:disabled { opacity: .35; cursor: default; }

/* ---------- 章节面板 ---------- */
#leo-journey .leo-journey__panel { margin-top: clamp(36px, 5vw, 56px); }
#leo-journey .leo-journey__panel + .leo-journey__panel { margin-top: clamp(48px, 6vw, 80px); }
#leo-journey .leo-journey__panel-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px 32px;
  margin-bottom: 26px;
}
#leo-journey .leo-journey__chapter {
  margin: 0;
  color: var(--leo-text);
  font-family: var(--leo-font);
  font-size: clamp(28px, 3.4vw, 42px);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.01em;
}
#leo-journey .leo-journey__chapter-intro {
  margin: 8px 0 0;
  max-width: 36em;
  font-size: var(--leo-font-size);
}
#leo-journey .leo-journey__meta {
  display: flex;
  flex: 0 0 auto;
  align-items: baseline;
  gap: 8px;
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  white-space: nowrap;
}
#leo-journey .leo-journey__meta strong {
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
}
#leo-journey .leo-journey__meta-sep {
  margin-left: 6px;
  padding-left: 14px;
  border-left: 1px solid var(--leo-gold-line);
  color: var(--leo-gold-text);
  font-size: 14px;
}

/* ---------- 卡片网格 ---------- */
#leo-journey .leo-journey__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
#leo-journey .leo-journey__card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  padding: 30px 28px 28px;
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-radius);
  background: var(--leo-card);
  box-shadow: var(--leo-shadow);
  transition: background-color var(--leo-speed) ease, border-color var(--leo-speed) ease;
}
/* 顶部金色线：默认一小段，悬浮时展开到整张卡片 */
#leo-journey .leo-journey__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, var(--leo-gold), var(--leo-gold-bright));
  transform: scaleX(.18);
  transform-origin: left center;
  transition: transform 280ms cubic-bezier(.22, 1, .36, 1);
}
#leo-journey .leo-journey__card.is-emphasis { box-shadow: var(--leo-shadow), inset 4px 0 0 var(--leo-gold); }
#leo-journey .leo-journey__card.is-emphasis::before { transform: scaleX(1); }

#leo-journey .leo-journey__card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}
#leo-journey .leo-journey__period {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 13px;
  border: 1px solid var(--leo-gold-line);
  border-radius: 999px;
  background: var(--leo-gold-wash);
  color: var(--leo-gold-text);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  transition: background-color var(--leo-speed) ease, color var(--leo-speed) ease, border-color var(--leo-speed) ease;
}
#leo-journey .leo-journey__number {
  display: grid;
  place-items: center;
  min-width: 36px;
  height: 28px;
  padding: 0 8px;
  border-radius: 8px;
  background: var(--leo-cream);
  color: var(--leo-gold-text);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  transition: background-color var(--leo-speed) ease, color var(--leo-speed) ease;
}
#leo-journey .leo-journey__label {
  margin: 0 0 8px;
  color: var(--leo-gold-text);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .06em;
}
#leo-journey .leo-journey__title {
  margin: 0;
  color: var(--leo-text);
  font-family: var(--leo-font);
  font-size: clamp(21px, 2vw, 25px);
  font-weight: 700;
  line-height: 1.35;
}
#leo-journey .leo-journey__text {
  margin: 14px 0 0;
  font-size: 16px;
  line-height: 1.85;
}
#leo-journey .leo-journey__list {
  display: grid;
  gap: 10px;
  margin: auto 0 0;
  padding: 18px 0 0;
  border-top: 1px solid var(--leo-gold-line);
  list-style: none;
}
#leo-journey .leo-journey__text + .leo-journey__list { margin-top: 22px; }
#leo-journey .leo-journey__list li {
  position: relative;
  padding-left: 28px;
  font-size: 15px;
  line-height: 1.65;
}
#leo-journey .leo-journey__list li::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  width: 18px;
  height: 18px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238A641C' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.2 4 9.8-9.7'/%3E%3C/svg%3E") center / 15px no-repeat;
}

/* 悬浮：金色细边框 + 暖米白背景，顶部金线展开，年份胶囊变金 */
@media (hover: hover) {
  #leo-journey .leo-journey__card:hover {
    background: var(--leo-cream);
    border-color: var(--leo-gold);
  }
  #leo-journey .leo-journey__card:hover::before { transform: scaleX(1); }
  #leo-journey .leo-journey__card:hover .leo-journey__period {
    background: var(--leo-gold);
    border-color: var(--leo-gold);
    color: var(--leo-text);
  }
  #leo-journey .leo-journey__card:hover .leo-journey__number {
    background: var(--leo-gold);
    color: var(--leo-text);
  }
}

/* ---------- 入场动效：首次进入画面、切换章节时，卡片依次淡入上移 ---------- */
@keyframes leo-journey-in {
  from { opacity: 0; transform: translateY(16px); }
  to   { opacity: 1; transform: none; }
}
#leo-journey.is-pending .leo-journey__card { opacity: 0; }
#leo-journey .leo-journey__panel.is-entering .leo-journey__card {
  animation: leo-journey-in var(--leo-enter) cubic-bezier(.22, 1, .36, 1) both;
  animation-delay: calc(var(--i, 0) * var(--leo-stagger));
}
#leo-journey .leo-journey__panel.is-entering .leo-journey__panel-head {
  animation: leo-journey-in var(--leo-enter) cubic-bezier(.22, 1, .36, 1) both;
}

/* ---------- 动态分隔线：词与词之间的小金线，悬浮卡片时拉长，入场时从左展开 ---------- */
#leo-journey .leo-journey__div {
  display: inline-block;
  position: relative;
  top: -.08em;
  width: 14px;
  height: 2px;
  margin: 0 .55em;
  border-radius: 2px;
  background: var(--leo-gold);
  vertical-align: middle;
  transition: width 280ms cubic-bezier(.22, 1, .36, 1);
}
#leo-journey .leo-journey__title .leo-journey__div { width: 18px; height: 3px; margin: 0 .4em; border-radius: 3px; }
@media (hover: hover) {
  #leo-journey .leo-journey__card:hover .leo-journey__div { width: 30px; }
  #leo-journey .leo-journey__card:hover .leo-journey__title .leo-journey__div { width: 40px; }
}
@keyframes leo-journey-line {
  from { opacity: 0; transform: scaleX(0); }
  to   { opacity: 1; transform: none; }
}
#leo-journey .leo-journey__panel.is-entering .leo-journey__div {
  transform-origin: left center;
  animation: leo-journey-line 520ms cubic-bezier(.22, 1, .36, 1) backwards;
  animation-delay: calc(var(--i, 0) * var(--leo-stagger) + 220ms);
}

/* ---------- 中文排版 ---------- */
#leo-journey:lang(zh) .leo-journey__h2,
#leo-journey:lang(zh) .leo-journey__chapter { letter-spacing: 0; line-height: 1.3; }
#leo-journey:lang(zh) .leo-journey__eyebrow,
#leo-journey:lang(zh) .leo-journey__status,
#leo-journey:lang(zh) .leo-journey__label { letter-spacing: .06em; }
#leo-journey:lang(zh) .leo-journey__title { line-height: 1.45; }
#leo-journey:lang(zh) .leo-journey__intro,
#leo-journey:lang(zh) .leo-journey__text { line-height: 1.9; }

/* ---------- 响应式：按自身宽度排版 ---------- */
/* 平板与手机：压缩标题区，让卡片更早进入画面 */
@media (max-width: 1024px) {
  #leo-journey { padding-top: 48px; padding-bottom: 64px; }
}
@media (max-width: 767px) {
  #leo-journey { padding: 32px 16px 56px; }
}
@container leo-journey-area (max-width: 1000px) {
  #leo-journey .leo-journey__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #leo-journey .leo-journey__header { margin-bottom: 28px; }
  #leo-journey .leo-journey__status { margin-bottom: 14px; }
  #leo-journey .leo-journey__eyebrow { margin-bottom: 8px; }
  #leo-journey .leo-journey__intro { margin-top: 12px; font-size: 17px; line-height: 1.7; }
  #leo-journey .leo-journey__panel { margin-top: 24px; }
  #leo-journey .leo-journey__panel + .leo-journey__panel { margin-top: 44px; }
  #leo-journey .leo-journey__panel-head { margin-bottom: 18px; }
}
/* 手机：标签条一次只显示一个，卡片单列，章节标题与故事数同一行 */
@container leo-journey-area (max-width: 680px) {
  #leo-journey .leo-journey__h2 { font-size: 28px; }
  #leo-journey .leo-journey__grid { grid-template-columns: 1fr; gap: 16px; }
  #leo-journey .leo-journey__nav { gap: 6px; padding: 8px; }
  #leo-journey .leo-journey__tabs { scroll-snap-type: x mandatory; }
  #leo-journey .leo-journey__tab { flex: 0 0 100%; justify-content: center; min-width: 0; padding-right: 14px; scroll-snap-align: start; }
  #leo-journey .leo-journey__arrow { width: 40px; height: 40px; }
  #leo-journey .leo-journey__panel-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 6px 12px;
  }
  #leo-journey .leo-journey__panel-head > div { display: contents; }
  #leo-journey .leo-journey__chapter { grid-column: 1; grid-row: 1; font-size: 26px; }
  #leo-journey .leo-journey__meta { grid-column: 2; grid-row: 1; }
  #leo-journey .leo-journey__meta strong { font-size: 24px; }
  #leo-journey .leo-journey__meta-sep { display: none; }
  #leo-journey .leo-journey__chapter-intro { grid-column: 1 / -1; grid-row: 2; margin: 0; font-size: 16px; }
  #leo-journey .leo-journey__card { padding: 24px 22px 22px; }
}

@media (prefers-reduced-motion: reduce) {
  #leo-journey *,
  #leo-journey *::before,
  #leo-journey *::after { transition-duration: .01ms !important; animation: none !important; }
  #leo-journey.is-pending .leo-journey__card { opacity: 1; }
}/* End custom CSS */